第二章:注重实效的途径(2)


四、曳光弹

用曳光弹找到目标
敏捷开发,迭代开发

五、原型与便笺

应制作原型的事物
  • 已有系统中的新功能
  • 外部数据的结构和内容
  • 第三方工具或组件
  • 性能问题
  • 用户界面设计
为了学习而制作原型
原型与曳光弹的区别 原型是用完就扔掉的代码,曳光弹则是在迭代中找到方向,不断扩展,成为一个集成平台。

六、领域语言

语言的界限就是一个人的世界的界限 靠近问题领域编程
无论是用于配置和控制应用程序的简单语言,还是指定规则或过程的更为复杂的语言,你都应该考虑让你的项目更靠近问题领域。通过在更高的抽象层上编码,你获得了专心解决问题领域问题的自由,并且可以忽略琐碎的实现细节。 实现小型语言 数据语言与命令语言
  • 数据语言产生某种结构的数据结构给应用使用,这种语言常用于表示配置信息。比如sendmail。
  • 命令语言更进一步,在这种情况下,语言被实际执行,所以可以包含语句、控制结构、以及类似的东西。
独立语言与嵌入式语言 易于开发还是易于维护

七、估算

估算,以避免发生意外。
多准确才够准确
  • 问题的语境
  • 单位对结果的影响
估算来自哪里 所有的估算都以问题的模型为基础,在我们深入卷入建模技术之前,我们必须先提及一个基本的估算诀窍,它总能给出好的答案:去问已经做过这件事情的人。
  • 理解提问内容
  • 建立系统模型
  • 把模型分解为组件
  • 给每个参数指定值
  • 计算答案
  • 追踪你的估算能力(如果错了,找出原因)
阅读原文:程序员修炼之道:从小工到专家

Vote Vote Cancel Collect Collect Cancel

<< 上一篇: 第二章:注重实效的途径(1)

>> 下一篇: 第三章:基本工具(1)