技能模板 | 竹节 AI 工具集

🛠️ Skill技能模板

为你整理常用编程和开发技能的代码模板,支持复制和学习。涵盖前端、后端、数据库、DevOps 等领域。

Python 数据分析

使用 Pandas 和 NumPy 进行数据清洗、分析和可视化。

编程
# 数据分析技能示例
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

# 读取数据
df = pd.read_csv('data.csv')

# 数据清洗
df.dropna(inplace=True)
df['date'] = pd.to_datetime(df['date'])

# 基本统计
print(df.describe())

# 可视化
plt.figure(figsize=(10, 6))
plt.plot(df['date'], df['value'])
plt.title('数据趋势图')
plt.show()

React 组件开发

创建可复用的 React 组件,包含状态管理和事件处理。

前端
import React, { useState, useEffect } from 'react';

const DataList = ({ data }) => {
  const [filteredData, setFilteredData] = useState(data);
  const [searchTerm, setSearchTerm] = useState('');

  useEffect(() => {
    const filtered = data.filter(item =>
      item.name.toLowerCase().includes(searchTerm.toLowerCase())
    );
    setFilteredData(filtered);
  }, [data, searchTerm]);

  return (
    <div>
      <input
        type="text"
        placeholder="搜索..."
        value={searchTerm}
        onChange={(e) => setSearchTerm(e.target.value)}
      />
      <ul>
        {filteredData.map(item => (
          <li key={item.id}>{item.name}</li>
        ))}
      </ul>
    </div>
  );
};

export default DataList;

SQL 查询优化

编写高效的 SQL 查询语句,包括索引优化和性能调优。

数据库
-- 创建索引以提高查询性能
CREATE INDEX idx_user_email ON users(email);
CREATE INDEX idx_orders_user_date ON orders(user_id, order_date);

-- 优化查询示例
SELECT u.name, COUNT(o.id) as order_count
FROM users u
LEFT JOIN orders o ON u.id = o.user_id
WHERE o.order_date >= '2024-01-01'
GROUP BY u.id, u.name
HAVING COUNT(o.id) > 5
ORDER BY order_count DESC;

-- 使用 EXPLAIN 分析查询计划
EXPLAIN SELECT * FROM users WHERE email = 'user@example.com';

Git 工作流

Git 分支管理、合并策略和团队协作最佳实践。

版本控制
# Git 工作流最佳实践

# 1. 创建功能分支
git checkout -b feature/new-feature

# 2. 定期提交小变更
git add .
git commit -m "feat: 添加新功能"

# 3. 保持分支同步
git fetch origin
git rebase origin/main

# 4. 推送分支
git push origin feature/new-feature

# 5. 创建 Pull Request
# 在 GitHub/GitLab 上创建 PR,请求代码审查

# 6. 合并后清理
git checkout main
git pull origin main
git branch -d feature/new-feature

# 分支命名约定:
# feature/xxx - 新功能
# bugfix/xxx - 修复
# hotfix/xxx - 紧急修复
# refactor/xxx - 重构

Docker 容器部署

使用 Docker 进行应用容器化部署和编排。

DevOps
# Dockerfile 示例
FROM node:18-alpine

WORKDIR /app

COPY package*.json ./
RUN npm ci --only=production

COPY . .

EXPOSE 3000

CMD ["npm", "start"]

# docker-compose.yml
version: '3.8'

services:
  app:
    build: .
    ports:
      - "3000:3000"
    environment:
      - NODE_ENV=production
    depends_on:
      - db

  db:
    image: postgres:13
    environment:
      POSTGRES_DB: myapp
      POSTGRES_USER: user
      POSTGRES_PASSWORD: password
    volumes:
      - postgres_data:/var/lib/postgresql/data

volumes:
  postgres_data:

# 常用命令
docker build -t myapp .
docker run -p 3000:3000 myapp
docker-compose up -d

REST API 设计

设计 RESTful API 的最佳实践,包括资源命名和 HTTP 方法。

后端
# REST API 设计原则

## 资源命名
GET    /api/users          # 获取用户列表
GET    /api/users/{id}     # 获取特定用户
POST   /api/users          # 创建新用户
PUT    /api/users/{id}     # 更新用户
DELETE /api/users/{id}     # 删除用户

## 嵌套资源
GET    /api/users/{id}/posts     # 用户的文章
GET    /api/posts/{id}/comments  # 文章的评论

## 查询参数
GET /api/users?page=1&limit=10&sort=name&order=asc

## 响应格式
{
  "data": [...],
  "meta": {
    "page": 1,
    "limit": 10,
    "total": 100
  },
  "links": {
    "self": "/api/users?page=1",
    "next": "/api/users?page=2",
    "prev": null
  }
}

## 错误响应
{
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "输入数据无效",
    "details": {
      "field": "email",
      "reason": "格式不正确"
    }
  }
}