1 单元测试
(1) 单元测试
(2) 回归测试
回退操作
2 效能分析工具
先用抽样的方法找到效能瓶颈所在,然后对特定的模块用代码注入的方法进行详细分析
3 个人开发流程
(1) 计划
- 明确需求和其他相关因素,指明时间成本和依赖关系
- 分析需求
- 生成设计文档
- 设计复审(和同事审核设计文档)
- 代码规范(为目前的开发定制合适的规范)
- 具体设计
- 具体编码
- 代码复审
- 测试(包括自测,修改代码,提交修改)
- 记录用时
- 测试报告
- 计算工作量
- 事后总结
- 提出过程改进计划
- 一个模块(类)应该只有一个导致它变化的原因,一个模块应该完全对某个功能负责
- 允许拓展。当应用的需求发生改变时,我们可以对模块进行拓展,从而改变模块的功能
- 不允许修改。对模块行为进行拓展时,不必改变模块的本身
- 属性拓展:超过64位的数字
- 数量拓展:十万条数据
- 维度拓展:多维数组
- 其他属性拓展
- 形象的显示数据处理的过程
- 维度拓展
- 数量拓展
- 增量改进
- 让用户更喜欢这个软件
- o 记住上次的状态
- o 自动展现上次文档最后编辑的地方
- 多用户
- 多语言
- 安全性
- 平台的迁移
- 多语言接口
- 增量升级部分模块
- 基本功能
- 拓展功能
- 高级功能
(2) 开发
(3) 报告
4 软件设计的原则
(1) 单一职责原则
(2) 开放-封闭原则
5 程序的健壮性
(1) 数据
(2) 需求
(3) 用户
(4) 软件构建
6 实践
(1) 工作的细分
(2) 如何保证质量——回归测试
保证在加入新功能的过程中,已有的功能可继续工作,我们需要建立起一系列测试文件