How I Code
编程风格和理念
我的开发工具链、编程风格和理念。
编辑器
AI 优先的多编辑器策略:
- Cursor — 主力 AI 编辑器,日常开发首选
- Zed — 高性能编辑器,追求极致速度时使用
- Windsurf — Codeium AI 编程助手
- Trae — AI 驱动的代码编辑器
- VS Code — 通用编辑器,插件生态丰富
- Neovim — 轻量级编辑器,快速修改和远程开发
移动端开发:
- Xcode — iOS/macOS 原生开发
- Android Studio — Android 应用开发
终端
现代 GPU 加速终端:
Shell: zsh + oh-my-zsh + Spaceship 主题
语言栈
多语言开发,按项目需求选择:
| 语言 | 版本 | 用途 |
|---|---|---|
| TypeScript/JavaScript | Node v25 + Bun 1.3 | 前端、全栈、CLI 工具 |
| Python | 3.14 / 3.9 | 数据处理、AI、自动化脚本 |
| Go | 1.26 | 后端服务、高性能工具 |
| Rust | 1.92 | 性能敏感组件、学习探索 |
| Flutter/Dart | — | 跨平台移动应用 |
| Swift | — | iOS/macOS 原生开发 |
| Kotlin/Java | Gradle/Maven | Android 开发 |
| Ruby | rbenv | 脚本、 legacy 项目 |
开发工具
版本控制
- Git + delta pager(美化 diff 输出)
- lazygit — 快速终端 Git 操作
- Sourcetree — 可视化 Git 客户端
- GitHub CLI — GitHub 操作自动化
数据库 & 网络
文档 & API
AI 工具
- LM Studio — 本地大模型运行
- GitHub Copilot — 代码补全
- Cursor AI — 智能代码生成和重构
VS Code/Cursor 扩展
核心扩展按功能分类:
AI & 智能
- GitHub Copilot + Copilot Chat
- 通义灵码(阿里云 AI)
语言支持
- Flutter/Dart — 移动端开发
- Go — Go 语言支持
- Swift/SwiftFormat — iOS 开发
- Java/Gradle/Maven — Android 开发
- Python/Pyright — Python 开发
- Ruby/Ruby-LSP — Ruby 开发
- Vue/Volar — Vue 框架
- GraphQL/Apollo — GraphQL 开发
- C/C++/CMake — 原生开发
工具增强
- ESLint + Prettier — 代码规范
- Remote SSH/Containers — 远程开发
- Live Share — 协作编程
- Test Explorer — 测试管理
- GitLens/Git Blame — Git 增强
- TODO Highlight — 任务标记
- Anki Editor — 知识卡片
开发原则
- AI 辅助,人为主导 — 善用 AI 工具提效,但保持对代码的理解和掌控
- 简洁优于复杂 — 代码应该清晰易懂,避免过度抽象
- 可读性优先 — 代码是写给人看的,其次才是让机器执行
- 自动化重复任务 — 用脚本、工具、CI/CD 解放重复劳动
- 多工具协同 — 不同场景用不同工具,不迷信单一解决方案
- 持续学习 — 关注新语言、新工具,保持技术敏感度
项目结构
代码项目统一放在 ~/Workspace:
- AlmaWorkspace — AI Agent 项目
- Lumina / DsaioApp / DsaioService — Flutter 应用和服务端
- Pico / Pocket — VR 和移动端项目
- dev.susuyan / wiki.susuyan — 个人文档站点
- resume — 个人简历
- SUSUPANG / Tidy / Wegent — 其他产品项目
工作流
典型的一天:
- 打开 Ghostty,进入项目目录
- 用 Cursor 打开代码,AI 辅助编码
- 用 lazygit 快速提交,delta 查看变更
- TablePlus 查询数据库,Charles 抓包调试
- Dash 查阅 API 文档,Figma 看设计稿
- 需要移动端时切换 Xcode/Android Studio
- 用 Neovim 做快速修改或远程开发