写在前面
- DRY原则,别让开发人员干体力活,让工具去做。
- 获取新技术的三大途径:Google、Stack Overflow、GitHub,远离百度。
- 没有最好的工具,只有适合自己的工具,下面的仅供参考。
需求分析
-
:业务过程图、用例分析(用例图、活动图、序列图、领域模型类图)、状态图(系统流程分析,代替DFD)。
-
头脑风暴:、、白板。
-
系统原型:、、、
-
部署图:Enterprise Architect、Visio/
-
功能矩阵:Excel/Enterprise Architect
系统设计
-
:包图(子系统和模块设计)、类图(少用)、序列图(多用)、状态图(工作流程,多用)、数据库结构设计。
-
:XML和Schema设计。
构建和测试
包管理
- :Mac和iOS开发必备的Cocoa依赖库管理工具。
- :适合Swift动态库的无中心的Cocoa依赖管理器。
- :基于Node.js的JavaScript库管理。
- :面向Web开发的包管理器。
- 、Sublime、Eclipse:内置丰富的插件工具库。
构建和集成
- :GitHub云端持续集成。
- :Mac和iOS项目自动构建和测试,代替Xcode图形用户界面。
- :基于Node.js的项目构建工具,面向Web开发。
- :基于Ruby的构建工具,可用于基于Jekyll的博客和在线文档项目。
- :经典的跨平台自动构建工具,经常用。
- +:批量处理代码文件、自动构建或发布,经常用。
质量度量
-
:评测代码行数、复杂度,用于代码重构。
-
+:反向生成UML图和模块依赖关系,代码重构的轻量级利器,经常用。
-
:代码分析工具,基于Clang的集成环境,很强大也很麻烦。
-
:代码分析和审查工具,集成环境,很强大但我很少用。
-
Xcode Analyze:Xcode中的代码问题分析,可检测出很多隐患。
-
Analysis:OSChina的代码质量检查,挺好用,推荐使用。
-
CheckStyle、JDepend、JSLint、jshint:Java和JavaScript代码质量检查。
-
pclint: C++静态代码检查工具,VisualLint是其VC++插件,前几年用过。
单元测试
- xUnit系列,例如CppUnit:自动单元测试、代码覆盖率分析。
- Jasmine、JsTestDriver:JavaScript单元测试框架。
- QTRunner:跨平台自动化测试工具。
- XCTest:Xcode自动测试框架和环境。
集成测试
-
各种Profile,例如 Xcode Profile:白盒测试、性能测试、资源泄露检查。
-
LoadRunner:自动测试、负载测试。
-
Windows Sysinternels:Dbgview、DiskMon、Process Explorer、TCPView。
-
DevPartner、BoundsChecker:资源泄露分析、性能分析、代码覆盖率分析。
BUG跟踪
-
Issue Tracker:GitHub、OSChina等代码托管平台的BUG跟踪。
-
方正电子BUG库:公司内部使用。
文档
- :维基文档和问题跟踪(基于Ticket)。
- 、、:编写MarkDown语法的轻量级文档。
- OmniGraffle、Origami:代替Visio。
- +:根据代码自动生成文档。
- :根据Java或JavaScript代码自动生成文档。
本文同时发布在。