工具放大才干.

14.纯文本的威力

作为注重实效的程序员.

什么是纯文本

用纯文本保存只是
缺点

  • 比二进制空间更多
  • 解释纯文本,计算上的代价可能更昂贵

文本的威力

  • 保证不过时
  • 杠杆作用
  • 易于测试

保证不过时

杠杆作用

作为配置文件

更易于测试

最小公分母.

纯文本就是一个公共标准

15.shell游戏

16.强力编辑

一种编辑器

用好一种编辑器

编辑器的特性

  • 可配置
  • 可拓展
  • 可编程

生产率

17. 源码控制

undo
redo

18.调试

调试的心理学

要修正问题,而不是发出指责

调试的思维方式

不要恐慌

从何处开始

测试策略

是你的数据可视化
跟踪
橡皮鸭
消除过程

select 没有问题

造成惊讶的要素

不要假定,要证明

调试检查列表

  • 正在报告的问题时底层bug的直接结果,还是只是症状
  • Bug真的在编译器里?在OS里?或者是在你的代码里?
  • 如果你向同时详细解释这个问题,你会说什么.
  • 如果可以代码通过了单元测试,测试是否足够完整?如果你用改数据运行单元测试,会发生什么
  • 造成这个bug的条件是否存在于系统中的其他任何地方

19.文本操纵

学习一种文本操纵语言

  • 数据库schema维护

    • 用户创建数据库的sql语句
    • 用于填充数据词典平板(flat)数据文件
    • 用于访问数据库的C代码库
    • 用于检查数据完整性的脚本
    • 含有schema描述及框图的网页
    • schema的XML版本
  • Java属性(proerty)访问

  • 测试数据生成.

  • 书写

  • C与ObjectPascal的接口

  • 生成Web文档

20. 代码生成器

编写能编写代码的代码

被动代码生成器

  • 创建新的源文件
  • 在编程语言之间进行一次性转换
  • 生成查找表及其他在运行时计算很昂贵的资源

主动代码生成器

代码生成不一定要很复杂

代码生成器不一定要生成代码

html xml 纯文本