首页 > 代码库 > 第18章 表驱动法(1)

第18章 表驱动法(1)

  这本书讲什么?

code complete 是编码完成的意思,是一个软件项目开发过程中的重要里程碑(milestone)。软件项目进行到这里,表名已经完成了所有的编码工作,即将开始系统测试。
这本书讲的正是为了达到“编码完成”这一重要里程碑所必须的软件构建技术,确切的说,就是如何编写高质量的代码。作者认为,应该首先为人编写代码,其次才是为机器编写。代码主要是供人阅读的。遍布全书的提高代码质量的实实在在的技术和诀窍,是本书最有价值得部分。

  表驱动法是一种编程模式(scheme)——从表里面查找信息而不使用逻辑语句(if和else)。

18.1 表驱动法使用总则
  Genernal Considerations in Using Table-Driven Methods
  在适当的环境下,采用表驱动法,所生成的代码会比复杂逻辑代码更简单、更容易修改,而且效率更高。假设你希望把字符串划分成字母、标点符号和数字三类,那么你也许会用到下面这种复杂的逻辑链。


使用表驱动法存在的两个问题
  Two Issues in Using Table-Driven Methods。
  在使用表驱动法的时候,必须要解决两个问题。首先,你必须回答怎样从表中查询条目的问题。
  直接访问(Direct Access)
  索引访问(Indexed Access)
  阶梯访问(Stair-Step Access)
  第二个问题是:你应该在表里存些什么?