第8章 注重实效的项目 Pragmatic Projects
41. 注重实效的团队
提示60: Organize Around Functionality,Not Job Functions
围绕功能、而不是工作职务进行组织
42. 无处不在的自动化
提示61: Don't Use Manual Procedures
不要使用手工流程
哪些地方可以自动化:
- 项目编译
- 生成代码
- 回归测试
43. 无情的测试
提示62: Test Early.Test Often.Test Automatically.
早测试,常测试,自动测试
“编一点,测一点”是Smalltalk世界里流行的一句话
提示63: Coding Ain't Done'Til All the Tests Run
要到通过全部测试,编码才算完成
测试什么,你需要进行的测试的主要类型有:
- 单元测试
- 集成测试
- 验证和校验(validation and verification)
- 资源耗尽、错误及恢复
- 性能测试
- 可用性测试
代码可能遇到的一些限制包括:
- 内存空间
- 磁盘空间
- CPU带宽
- 挂钟时间
- 磁盘带宽
- 网络带宽
- 调色板
- 视频分辨率
怎样测试,包括:
- 回归测试
- 测试数据
- 演练GUI系统
- 对测试进行测试
- 彻底测试
提示64: Use Saboteurs to Test Your Testing
通过“蓄意破坏”测试你的测试
提示65: Test State Coverage,Not Code Coverage
测试状态覆盖,而不是代码覆盖
提示66: Find Bugs Once
一个bug只抓一次
44. 全都是写
提示67: Treat English as Just Another Programming Language
把英语当作又一种编程语言
提示68: Build Documentation In,Don't Bolt It On
把文档建在里面,不要拴在外面
变量名应该精心选择,并且有意义。
例如,foo是没有意义的,doit、manager或stuff也是如此。
比无意义的名称更糟糕的是误导人的名称。
45. 极大的期望
提示69: Gently Exceed Your Users'Expectations
温和地超出用户的期望
46. 傲慢与偏见
提示70: Sign Your Work
在你的作品上签名
网友评论