mirror of
https://github.com/tradecatlabs/vibe-coding-cn.git
synced 2026-08-20 22:38:04 +00:00
refactor(docs): 将文档归类整理到不同目录
将 'documents' 目录下的文件整理到 'Methodology & Principles', 'Tutorials & Guides', 和 'Templates & Resources' 等子目录中,以改善文档结构和可读性。
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
# 代码组织
|
||||
|
||||
## 模块化编程
|
||||
|
||||
- 将代码分割成小的、可重用的模块或函数,每个模块负责只做一件事。
|
||||
- 使用明确的模块结构和目录结构来组织代码,使代码更易于导航。
|
||||
|
||||
## 命名规范
|
||||
|
||||
- 使用有意义且一致的命名规范,以便从名称就能理解变量、函数、类的作用。
|
||||
- 遵循命名约定,如驼峰命名(CamelCase)用于类名,蛇形命名(snake_case)用于函数名和变量名。
|
||||
|
||||
## 代码注释
|
||||
|
||||
- 为复杂的代码段添加注释,解释代码的功能和逻辑。
|
||||
- 使用块注释(/*...*/)和行注释(//)来区分不同类型的注释。
|
||||
|
||||
## 代码格式化
|
||||
|
||||
- 使用一致的代码风格和格式化规则,使用工具如 Prettier 或 Black 自动格式化代码。
|
||||
- 使用空行、缩进和空格来增加代码的可读性。
|
||||
|
||||
# 文档
|
||||
|
||||
## 文档字符串
|
||||
|
||||
- 在每个模块、类和函数的开头使用文档字符串,解释其用途、参数和返回值。
|
||||
- 选择一致的文档字符串格式,如 Google Style、NumPy/SciPy Style 或 Sphinx Style。
|
||||
|
||||
## 自动化文档生成
|
||||
|
||||
- 使用工具如 Sphinx、Doxygen 或 JSDoc 从代码中自动生成文档。
|
||||
- 保持文档和代码同步,确保文档始终是最新的。
|
||||
|
||||
## README 文件
|
||||
|
||||
- 在每个项目的根目录中包含一个详细的 README 文件,解释项目目的、安装步骤、用法和示例。
|
||||
- 使用 Markdown 语法编写 README 文件,使其易于阅读和维护。
|
||||
|
||||
# 工具
|
||||
|
||||
## IDE
|
||||
|
||||
- 使用功能强大的 IDE,如 Visual Studio Code、PyCharm 或 IntelliJ,利用其代码自动补全、错误检查和调试功能。
|
||||
- 配置 IDE 插件,如 linter(如 ESLint、Pylint)和代码格式化工具。
|
||||
@@ -0,0 +1,5 @@
|
||||
ide与插件;vscode ,Windsurf(白嫖用),闪电说(输出用),Continue - open-source AI code agent,Local History,Partial Diff
|
||||
|
||||
模型;codex,gemini,kimik2,grok
|
||||
|
||||
网站;https://aistudio.google.com/;https://zread.ai/;https://chatgpt.com/;https://github.com;https://www.bilibili.com;https://www.mermaidchart.com/app/dashboard;https://notebooklm.google.com/;https://z-lib.fm/;https://docs.google.com/spreadsheets/u/0/;https://script.google.com/home?pli=1
|
||||
@@ -0,0 +1,151 @@
|
||||
# z-lib 里面全部都可以免费下载
|
||||
|
||||
从零开始大模型开发与微调:基于PyTorch与ChatGLM - 王晓华
|
||||
|
||||
编程的原则:改善代码质量的101个方法 - 上田勋
|
||||
|
||||
生成式 AI 设计模式 - Valliappa Lakshmanan & Hannes Hapke
|
||||
|
||||
人月神话 - 弗雷德里克·布鲁克斯
|
||||
|
||||
人件(原书第3版) - Tom DeMarco & Timothy Lister
|
||||
|
||||
高效程序员的45个习惯:敏捷开发修炼之道 - Andy Hunt & Venkat Subramaniam
|
||||
|
||||
项目管理修炼之道 - 罗斯曼
|
||||
|
||||
编程珠玑(续) - 乔恩·本特利
|
||||
|
||||
编程珠玑(第2版) - 乔恩·本特利
|
||||
|
||||
编程原则:来自代码大师Max Kanat-Alexander的建议(让简约设计的思想回归到计算机编程,适合软件开发者、开发团队管理者和软件相关专业学生阅读) (华章程序员书库) - Max Kanat-Alexande
|
||||
|
||||
编写可读代码的艺术 - Dustin Boswell & Trevor Foucher
|
||||
|
||||
统计思维:程序员数学之概率统计(第2版) - Allen B.Downey
|
||||
|
||||
精通Rust(第2版) - Rahul Sharma & Vesa Kaihlavirta
|
||||
|
||||
程序员超强大脑(图灵程序设计丛书·程序员修炼系列) - 费莉安·赫尔曼斯
|
||||
|
||||
程序员必读之软件架构 - Simon Brown
|
||||
|
||||
程序员修炼之道:专业程序员必知的33个技巧 - Josh·Carter
|
||||
|
||||
看漫画学Python:有趣、有料、好玩、好用 - 关东升
|
||||
|
||||
混沌工程:通过可控故障实验提升软件系统可靠性 - 米科拉吉·帕利科夫斯基_1
|
||||
|
||||
深入理解Python特性 - 达恩·巴德尔
|
||||
|
||||
微服务实战(覆盖从微服务设计到部署的各个阶段的技术实战书)(异步图书) - 摩根·布鲁斯 & 保罗·A·佩雷拉
|
||||
|
||||
大数据系统构建:可扩展实时数据系统构建原理与最佳实践 - NathanMarz & JamesWarren
|
||||
|
||||
图解性能优化(图灵程序设计丛书) - 小田圭二 & 榑松谷仁 & 平山毅 & 冈田宪昌
|
||||
|
||||
图灵程序设计丛书:大规模数据处理入门与实战(套装全10册)【图灵出品!一套囊括SQL、Python、Spark、Hadoop、妮哈·纳克海德 & 格温·沙皮拉托德 & 帕利诺 & 本杰明·班福特 & 珍妮·基姆 & 埃伦·弗里德曼 & 科斯塔斯·宙马斯
|
||||
|
||||
代码整洁之道 - Robert C. Martin
|
||||
|
||||
代码之髓:编程语言核心概念(图灵程序设计丛书) - 西尾泰和
|
||||
|
||||
人人都懂设计模式:从生活中领悟设计模式 - 罗伟富
|
||||
|
||||
Rust权威指南(第2版) - Steve Klabnik & Carol Nichols
|
||||
|
||||
Python金融大数据分析(第2版) - 伊夫·希尔皮斯科
|
||||
|
||||
Python科学计算基础教程 - Hemant Kumar Mehta_1
|
||||
|
||||
Python数据挖掘入门与实践 - Robert Layton
|
||||
|
||||
Python数据分析与算法指南(套装共8册) - 江雪松 & 邹静 & 邓立国 & 翟锟 & 胡锋 & 周晓然 & 王国平 & 白宁超 & 唐聃 & 文俊 & 张若愚 & 洪锦魁
|
||||
|
||||
Python性能分析与优化 - Fernando Doglio
|
||||
|
||||
Python函数式编程(第2版)(图灵图书) - 史蒂文·洛特_1
|
||||
|
||||
GPT时代的量化交易:底层逻辑与技术实践 - 罗勇 & 卢洪波_1
|
||||
|
||||
ChatGPT数据分析实践 - 史浩然 & 赵辛 & 吴志成
|
||||
|
||||
AI时代Python金融大数据分析实战:ChatGPT让金融大数据分析插上翅膀 - 关东升
|
||||
|
||||
跨市场交易策略 - John J. Murphy
|
||||
|
||||
资产定价与机器学习 - 吴轲
|
||||
|
||||
工程思维 - 马克 N. 霍伦斯坦
|
||||
|
||||
程序员的思维修炼:开发认知潜能的九堂课(图灵程序设计丛书) - Andy Hunt
|
||||
|
||||
程序员修炼之道:通向务实的最高境界(第2版)【这本书颠覆了无数人的软件生涯!并推动整个IT行业走到今天!时隔20年的再版重磅来袭!】 - 大卫·托马斯 & 安德鲁·亨特
|
||||
|
||||
不确定状况下的判断:启发式和偏差 - 丹尼尔·卡尼曼
|
||||
|
||||
简约之美:软件设计之道 - Max Kanant-Alexander
|
||||
|
||||
程序员的底层思维 - 张建飞
|
||||
|
||||
程序员的三门课:技术精进、架构修炼、管理探秘 - 于君泽
|
||||
|
||||
机器学习系统设计(图灵程序设计丛书) - Willi Richert & Luis Pedro Coelho
|
||||
|
||||
思维工程导论 - 钱小一
|
||||
|
||||
算法精粹:经典计算机科学问题的Python实现 - David Kopec
|
||||
|
||||
函数式编程思维 (图灵程序设计丛书) - Neal Ford
|
||||
|
||||
Python函数式编程(第2版)(图灵图书) - 史蒂文·洛特
|
||||
|
||||
Effective Python 编写高质量Python代码的90个有效方法(原书第2版) (Effective系列丛书) - Brett Slatkin
|
||||
|
||||
高频交易(原书第2版) - Irene Aldridge
|
||||
|
||||
高频交易员:华尔街的速度游戏 - 迈克尔·刘易斯
|
||||
|
||||
金融学原理(第6版) - 彭兴韵
|
||||
|
||||
聪明投资者的第一本金融学常识书 - 肖玉红
|
||||
|
||||
可视化量化金融 - Michael Lovelady
|
||||
|
||||
GPT时代的量化交易:底层逻辑与技术实践 - 罗勇 & 卢洪波
|
||||
|
||||
图灵经典计算机基础系列(套装全4册) - 矢泽久雄 & 户根勤 & 平泽章
|
||||
|
||||
软件开发的201个原则 - Alan M· Davis
|
||||
|
||||
程序员的AI书:从代码开始 - 张力柯 & 潘晖
|
||||
|
||||
计算的本质:深入剖析程序和计算机 - Tom Stuart
|
||||
|
||||
程序员投资指南 - Stefan Papp
|
||||
|
||||
精通正则表达式(第3版) - Jeffrey E.F.Friedl
|
||||
|
||||
巧用ChatGPT进行数据分析与挖掘 - 谢佳标
|
||||
|
||||
工业人工智能三部曲(套装共三册)(世界一流的智能制造专家著作合辑)(2016年被美国制造工程师学会(SME)评选为“美国30位最有远见的智能制造人物”) - 李杰
|
||||
|
||||
从零构建大模型:算法、训练与微调 - 梁楠
|
||||
|
||||
Vibe Coding_ Building Production-Grade Software With GenAI, Chat, Agents, and Beyond - Gene Kim & Steve Yegge
|
||||
|
||||
Vibe Coding AI 编程完全手册 - 谭星星
|
||||
|
||||
计算机科学概论(第13版) - J. 格伦·布鲁克希尔 & 丹尼斯·布里罗
|
||||
|
||||
Pro Git (中文版) - Scott Chacon & Ben Straub
|
||||
|
||||
像程序员一样思考 - V.Anton Spraul
|
||||
|
||||
Python核心编程(第3版) - Wesley Chun_1
|
||||
|
||||
AI 工程:从基础模型建构应用 - Chip Huyen
|
||||
|
||||
AI辅助编程实战 - 汤姆·陶利
|
||||
|
||||
编码:隐匿在计算机软硬件背后的语言 - Charles Petzold
|
||||
@@ -0,0 +1,460 @@
|
||||
# 通用项目架构模板
|
||||
|
||||
## 1️⃣ Python Web/API 项目标准结构
|
||||
|
||||
```
|
||||
项目名称/
|
||||
├── README.md # 项目说明文档
|
||||
├── LICENSE # 开源协议
|
||||
├── requirements.txt # 依赖管理(pip)
|
||||
├── pyproject.toml # 现代Python项目配置(推荐)
|
||||
├── setup.py # 包安装脚本(如果做成库)
|
||||
├── .gitignore # Git忽略文件
|
||||
├── .env # 环境变量(不提交到Git)
|
||||
├── .env.example # 环境变量示例
|
||||
├── CLAUDE.md # claude持久上下文
|
||||
├── AGENTS.md # codex持久上下文
|
||||
├── Sublime-Text.txt # 放需求和注意事项,给自己看的,和cli的会话恢复指令^_^
|
||||
│
|
||||
├── docs/ # 文档目录
|
||||
│ ├── api.md # API文档
|
||||
│ ├── development.md # 开发指南
|
||||
│ └── architecture.md # 架构说明
|
||||
│
|
||||
├── scripts/ # 脚本工具
|
||||
│ ├── deploy.sh # 部署脚本
|
||||
│ ├── backup.sh # 备份脚本
|
||||
│ └── init_db.sh # 数据库初始化
|
||||
│
|
||||
├── tests/ # 测试代码
|
||||
│ ├── __init__.py
|
||||
│ ├── conftest.py # pytest配置
|
||||
│ ├── unit/ # 单元测试
|
||||
│ ├── integration/ # 集成测试
|
||||
│ └── test_config.py # 配置测试
|
||||
│
|
||||
├── src/ # 源代码(推荐方式)
|
||||
│ ├── __init__.py
|
||||
│ ├── main.py # 程序入口
|
||||
│ ├── app.py # Flask/FastAPI应用
|
||||
│ ├── config.py # 配置管理
|
||||
│ │
|
||||
│ ├── core/ # 核心业务逻辑
|
||||
│ │ ├── __init__.py
|
||||
│ │ ├── models/ # 数据模型
|
||||
│ │ ├── services/ # 业务服务
|
||||
│ │ └── utils/ # 工具函数
|
||||
│ │
|
||||
│ ├── api/ # API接口层
|
||||
│ │ ├── __init__.py
|
||||
│ │ ├── v1/ # 版本1
|
||||
│ │ └── dependencies.py
|
||||
│ │
|
||||
│ ├── data/ # 数据处理
|
||||
│ │ ├── __init__.py
|
||||
│ │ ├── repository/ # 数据访问层
|
||||
│ │ └── migrations/ # 数据库迁移
|
||||
│ │
|
||||
│ └── external/ # 外部服务
|
||||
│ ├── __init__.py
|
||||
│ ├── clients/ # API客户端
|
||||
│ └── integrations/ # 集成服务
|
||||
│
|
||||
├── logs/ # 日志目录(不提交到Git)
|
||||
│ ├── app.log
|
||||
│ └── error.log
|
||||
│
|
||||
└── data/ # 数据目录(不提交到Git)
|
||||
├── raw/ # 原始数据
|
||||
├── processed/ # 处理后的数据
|
||||
└── cache/ # 缓存
|
||||
```
|
||||
|
||||
**使用场景**:Flask/FastAPI Web应用、RESTful API服务、Web后端
|
||||
|
||||
---
|
||||
|
||||
## 2️⃣ 数据科学/量化项目标准结构
|
||||
|
||||
```
|
||||
项目名称/
|
||||
├── README.md
|
||||
├── LICENSE
|
||||
├── requirements.txt
|
||||
├── .gitignore
|
||||
├── .env
|
||||
├── .env.example
|
||||
├── CLAUDE.md # claude持久上下文
|
||||
├── AGENTS.md # codex持久上下文
|
||||
├── Sublime-Text.txt # 放需求和注意事项,给自己看的,和cli的会话恢复指令^_^
|
||||
│
|
||||
├── docs/ # 文档目录
|
||||
│ ├── notebooks/ # Jupyter文档
|
||||
│ └── reports/ # 分析报告
|
||||
│
|
||||
├── notebooks/ # Jupyter Notebook
|
||||
│ ├── 01_data_exploration.ipynb
|
||||
│ ├── 02_feature_engineering.ipynb
|
||||
│ └── 03_model_training.ipynb
|
||||
│
|
||||
├── scripts/ # 脚本工具
|
||||
│ ├── train_model.py # 训练脚本
|
||||
│ ├── backtest.py # 回测脚本
|
||||
│ ├── collect_data.py # 数据采集
|
||||
│ └── deploy_model.py # 模型部署
|
||||
│
|
||||
├── tests/ # 测试
|
||||
│ ├── test_data/
|
||||
│ └── test_models/
|
||||
│
|
||||
├── configs/ # 配置文件
|
||||
│ ├── model.yaml
|
||||
│ ├── database.yaml
|
||||
│ └── trading.yaml
|
||||
│
|
||||
├── src/ # 源代码
|
||||
│ ├── __init__.py
|
||||
│ │
|
||||
│ ├── data/ # 数据处理模块
|
||||
│ │ ├── __init__.py
|
||||
│ │ ├── collectors/ # 数据采集器
|
||||
│ │ ├── processors/ # 数据清洗
|
||||
│ │ ├── features/ # 特征工程
|
||||
│ │ └── loaders.py # 数据加载
|
||||
│ │
|
||||
│ ├── models/ # 模型模块
|
||||
│ │ ├── __init__.py
|
||||
│ │ ├── strategies/ # 交易策略
|
||||
│ │ ├── backtest/ # 回测引擎
|
||||
│ │ └── risk/ # 风险管理
|
||||
│ │
|
||||
│ ├── utils/ # 工具模块
|
||||
│ │ ├── __init__.py
|
||||
│ │ ├── logging.py # 日志配置
|
||||
│ │ ├── database.py # 数据库工具
|
||||
│ │ └── api_client.py # API客户端
|
||||
│ │
|
||||
│ └── core/ # 核心模块
|
||||
│ ├── __init__.py
|
||||
│ ├── config.py # 配置管理
|
||||
│ ├── signals.py # 信号生成
|
||||
│ └── portfolio.py # 投资组合
|
||||
│
|
||||
├── data/ # 数据目录(Git忽略)
|
||||
│ ├── raw/ # 原始数据
|
||||
│ ├── processed/ # 处理后数据
|
||||
│ ├── external/ # 外部数据
|
||||
│ └── cache/ # 缓存
|
||||
│
|
||||
├── models/ # 模型文件(Git忽略)
|
||||
│ ├── checkpoints/ # 检查点
|
||||
│ └── exports/ # 导出模型
|
||||
│
|
||||
└── logs/ # 日志(Git忽略)
|
||||
├── trading.log
|
||||
└── errors.log
|
||||
```
|
||||
|
||||
**使用场景**:量化交易、机器学习、数据分析、AI研究
|
||||
|
||||
---
|
||||
|
||||
## 3️⃣ Monorepo(多项目仓库)标准结构
|
||||
|
||||
```
|
||||
项目名称-monorepo/
|
||||
├── README.md
|
||||
├── LICENSE
|
||||
├── .gitignore
|
||||
├── .gitmodules # Git子模块
|
||||
├── docker-compose.yml # Docker编排
|
||||
├── CLAUDE.md # claude持久上下文
|
||||
├── AGENTS.md # codex持久上下文
|
||||
├── Sublime-Text.txt # 这个是文件,放需求和注意事项,给自己看的,和cli的会话恢复指令^_^
|
||||
│
|
||||
├── docs/ # 全局文档
|
||||
│ ├── architecture.md
|
||||
│ └── deployment.md
|
||||
│
|
||||
├── scripts/ # 全局脚本
|
||||
│ ├── build_all.sh
|
||||
│ ├── test_all.sh
|
||||
│ └── deploy.sh
|
||||
│
|
||||
├── backups/ # 放备份文件
|
||||
│ ├── archive/ # 放旧的备份文件
|
||||
│ └── gz/ # 放备份文件的gz
|
||||
│
|
||||
├── services/ # 微服务目录
|
||||
│ │
|
||||
│ ├── user-service/ # 用户服务
|
||||
│ │ ├── Dockerfile
|
||||
│ │ ├── requirements.txt
|
||||
│ │ ├── src/
|
||||
│ │ └── tests/
|
||||
│ │
|
||||
│ ├── trading-service/ # 交易服务
|
||||
│ │ ├── Dockerfile
|
||||
│ │ ├── requirements.txt
|
||||
│ │ ├── src/
|
||||
│ │ └── tests/
|
||||
│ ...
|
||||
│ └── data-service/ # 数据服务
|
||||
│ ├── Dockerfile
|
||||
│ ├── requirements.txt
|
||||
│ ├── src/
|
||||
│ └── tests/
|
||||
│
|
||||
├── libs/ # 共享库
|
||||
│ ├── common/ # 公共模块
|
||||
│ │ ├── utils/
|
||||
│ │ └── models/
|
||||
│ ├── external/ # 第三方库(不可修改,只调用)
|
||||
│ └── database/ # 数据库访问库
|
||||
│
|
||||
├── infrastructure/ # 基础设施
|
||||
│ ├── terraform/ # 云资源定义
|
||||
│ ├── kubernetes/ # K8s配置
|
||||
│ └── nginx/ # 反向代理配置
|
||||
│
|
||||
└── monitoring/ # 监控系统
|
||||
├── prometheus/ # 指标收集
|
||||
├── grafana/ # 可视化
|
||||
└── alertmanager/ # 告警
|
||||
```
|
||||
|
||||
**使用场景**:微服务架构、大型项目、团队协作
|
||||
|
||||
---
|
||||
|
||||
## 4️⃣ Full-Stack Web 应用标准结构
|
||||
|
||||
```
|
||||
项目名称/
|
||||
├── README.md
|
||||
├── LICENSE
|
||||
├── .gitignore
|
||||
├── docker-compose.yml # 前后端一起编排
|
||||
├── CLAUDE.md # claude持久上下文
|
||||
├── AGENTS.md # codex持久上下文
|
||||
├── Sublime-Text.txt # 放需求和注意事项,给自己看的,和cli的会话恢复指令^_^
|
||||
│
|
||||
├── frontend/ # 前端目录
|
||||
│ ├── public/ # 静态资源
|
||||
│ ├── src/ # 源码
|
||||
│ │ ├── components/ # React/Vue组件
|
||||
│ │ ├── pages/ # 页面
|
||||
│ │ ├── store/ # 状态管理
|
||||
│ │ └── utils/ # 工具
|
||||
│ ├── package.json # NPM依赖
|
||||
│ └── vite.config.js # 构建配置
|
||||
│
|
||||
└── backend/ # 后端目录
|
||||
├── requirements.txt
|
||||
├── Dockerfile
|
||||
├── src/
|
||||
│ ├── api/ # API接口
|
||||
│ ├── core/ # 业务逻辑
|
||||
│ │ └── models/ # 数据模型
|
||||
└── tests/
|
||||
```
|
||||
|
||||
**使用场景**:全栈应用、SPA单页应用、前后端分离项目
|
||||
|
||||
---
|
||||
|
||||
## 📌 核心设计原则
|
||||
|
||||
### 1. 关注点分离(Separation of Concerns)
|
||||
```
|
||||
API → 服务 → 数据访问 → 数据库
|
||||
一目了然,层级清晰
|
||||
```
|
||||
|
||||
### 2. 可测试性(Testability)
|
||||
```
|
||||
每个模块可独立测试
|
||||
依赖可mock
|
||||
```
|
||||
|
||||
### 3. 可配置性(Configurability)
|
||||
```
|
||||
配置与代码分离
|
||||
环境变量 > 配置文件 > 默认值
|
||||
```
|
||||
|
||||
### 4. 可维护性(Maintainability)
|
||||
```
|
||||
代码自解释
|
||||
合理的文件命名
|
||||
清晰的目录结构
|
||||
```
|
||||
|
||||
### 5. 版本控制友好(Git-Friendly)
|
||||
```
|
||||
data/、logs/、models/ 添加到 .gitignore
|
||||
只提交源代码和配置示例
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🎯 最佳实践建议
|
||||
|
||||
1. **使用 `src/` 目录**:把源代码放在专门的src目录,避免顶级目录混乱
|
||||
2. **相对导入**:统一使用 `from src.module import thing` 的导入方式
|
||||
3. **测试覆盖**:保证核心业务逻辑有单元测试和集成测试
|
||||
4. **文档先行**:重要模块都要写README.md说明
|
||||
5. **环境隔离**:使用virtualenv或conda创建独立环境
|
||||
6. **依赖明确**:所有依赖都写入requirements.txt,并锁定版本
|
||||
7. **配置管理**:使用环境变量 + 配置文件的组合方式
|
||||
8. **日志分级**:DEBUG、INFO、WARNING、ERROR、FATAL
|
||||
9. **错误处理**:不要吞掉异常,要有完整的错误链
|
||||
10. **代码规范**:使用black格式化,flake8检查
|
||||
|
||||
---
|
||||
|
||||
## 🔥 .gitignore 推荐模板
|
||||
|
||||
```gitignore
|
||||
# Python
|
||||
__pycache__/
|
||||
*.py[cod]
|
||||
*$py.class
|
||||
*.so
|
||||
.Python
|
||||
*.egg-info/
|
||||
dist/
|
||||
build/
|
||||
|
||||
# 环境
|
||||
.env
|
||||
.venv/
|
||||
env/
|
||||
venv/
|
||||
ENV/
|
||||
|
||||
# IDE
|
||||
.vscode/
|
||||
.idea/
|
||||
*.swp
|
||||
*.swo
|
||||
*~
|
||||
|
||||
# 数据
|
||||
data/
|
||||
*.csv
|
||||
*.json
|
||||
*.db
|
||||
*.sqlite
|
||||
*.duckdb
|
||||
|
||||
# 日志
|
||||
logs/
|
||||
*.log
|
||||
|
||||
# 模型
|
||||
models/
|
||||
*.h5
|
||||
*.pkl
|
||||
|
||||
# 临时文件
|
||||
tmp/
|
||||
temp/
|
||||
*.tmp
|
||||
.DS_Store
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📚 技术选型参考
|
||||
|
||||
| 场景 | 推荐技术栈 |
|
||||
|-----|----------|
|
||||
| Web API | FastAPI + Pydantic + SQLAlchemy |
|
||||
| 数据处理 | Pandas + NumPy + Polars |
|
||||
| 机器学习 | Scikit-learn + XGBoost + LightGBM |
|
||||
| 深度学习 | PyTorch + TensorFlow |
|
||||
| 数据库 | PostgreSQL + Redis |
|
||||
| 消息队列 | RabbitMQ / Kafka |
|
||||
| 任务队列 | Celery |
|
||||
| 监控 | Prometheus + Grafana |
|
||||
| 部署 | Docker + Docker Compose |
|
||||
| CI/CD | GitHub Actions / GitLab CI |
|
||||
|
||||
---
|
||||
|
||||
## 📝 文件模板示例
|
||||
|
||||
### requirements.txt
|
||||
```txt
|
||||
# 核心依赖
|
||||
fastapi==0.104.1
|
||||
uvicorn[standard]==0.24.0
|
||||
pydantic==2.5.0
|
||||
|
||||
# 数据库
|
||||
sqlalchemy==2.0.23
|
||||
alembic==1.12.1
|
||||
psycopg2-binary==2.9.9
|
||||
|
||||
# 测试
|
||||
pytest==7.4.3
|
||||
pytest-cov==4.1.0
|
||||
pytest-asyncio==0.21.1
|
||||
|
||||
# 工具
|
||||
python-dotenv==1.0.0
|
||||
loguru==0.7.2
|
||||
|
||||
# 开发(可选)
|
||||
black==23.11.0
|
||||
flake8==6.1.0
|
||||
mypy==1.7.1
|
||||
```
|
||||
|
||||
### pyproject.toml(现代Python项目推荐)
|
||||
```toml
|
||||
[project]
|
||||
name = "项目名称"
|
||||
version = "0.1.0"
|
||||
description = "项目描述"
|
||||
authors = [{name = "作者", email = "邮箱@example.com"}]
|
||||
dependencies = [
|
||||
"fastapi>=0.104.0",
|
||||
"uvicorn[standard]>=0.24.0",
|
||||
"sqlalchemy>=2.0.0",
|
||||
]
|
||||
|
||||
[project.optional-dependencies]
|
||||
dev = ["pytest", "black", "flake8", "mypy"]
|
||||
|
||||
[build-system]
|
||||
requires = ["setuptools", "wheel"]
|
||||
build-backend = "setuptools.build_meta"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ✅ 新项目检查清单
|
||||
|
||||
启动新项目时,确保完成以下事项:
|
||||
|
||||
- [ ] 创建README.md,包含项目简介和使用说明
|
||||
- [ ] 创建LICENSE文件,明确开源协议
|
||||
- [ ] 设置Python虚拟环境(venv/conda)
|
||||
- [ ] 创建requirements.txt并锁定依赖版本
|
||||
- [ ] 创建.gitignore,排除敏感和不必要的文件
|
||||
- [ ] 创建.env.example,说明需要的环境变量
|
||||
- [ ] 设计目录结构,符合关注点分离原则
|
||||
- [ ] 创建基础的配置文件
|
||||
- [ ] 设置代码格式化工具(black)
|
||||
- [ ] 设置代码检查工具(flake8/ruff)
|
||||
- [ ] 编写第一个测试用例
|
||||
- [ ] 设置Git仓库并提交初始代码
|
||||
- [ ] 创建CHANGELOG.md,记录版本变更
|
||||
|
||||
---
|
||||
|
||||
**版本**: 1.0
|
||||
**更新日期**: 2025-11-24
|
||||
**维护**: CLAUDE,CODEX,KIMI
|
||||
Reference in New Issue
Block a user