第二章:注重实效的途径(2)
四、曳光弹
用曳光弹找到目标
敏捷开发,迭代开发
五、原型与便笺
应制作原型的事物
- 已有系统中的新功能
- 外部数据的结构和内容
- 第三方工具或组件
- 性能问题
- 用户界面设计
为了学习而制作原型
原型与曳光弹的区别
原型是用完就扔掉的代码,曳光弹则是在迭代中找到方向,不断扩展,成为一个集成平台。
六、领域语言
语言的界限就是一个人的世界的界限
靠近问题领域编程
无论是用于配置和控制应用程序的简单语言,还是指定规则或过程的更为复杂的语言,你都应该考虑让你的项目更靠近问题领域。通过在更高的抽象层上编码,你获得了专心解决问题领域问题的自由,并且可以忽略琐碎的实现细节。
实现小型语言
数据语言与命令语言
- 数据语言产生某种结构的数据结构给应用使用,这种语言常用于表示配置信息。比如sendmail。
- 命令语言更进一步,在这种情况下,语言被实际执行,所以可以包含语句、控制结构、以及类似的东西。
独立语言与嵌入式语言
易于开发还是易于维护
七、估算
估算,以避免发生意外。
多准确才够准确
估算来自哪里
所有的估算都以问题的模型为基础,在我们深入卷入建模技术之前,我们必须先提及一个基本的估算诀窍,它总能给出好的答案:去问已经做过这件事情的人。
- 理解提问内容
- 建立系统模型
- 把模型分解为组件
- 给每个参数指定值
- 计算答案
- 追踪你的估算能力(如果错了,找出原因)
阅读原文:程序员修炼之道:从小工到专家
No Comments