上面一章讲了一个项目开始时的步骤就是设计,那么在实施设计之前还有一个步骤,那就是代码示意。这个环节许多程序员都会向设计人员要算法的描述内容,除了文字部份外,重要的是要提供看得见的代码形式。
对于设计人员来说所写的代码只能叫做代码示意,还不是真正用在组件中的算法代码。在 Python 中有一个词叫做 pseudo-code 就是干这件事的。代码示意不能作为程序的组件,但更接近代码部署,因为采用了许多像代码一样的书写方式。
书写代码示意混用了人类语言和高级编程语言中的用词,这样的表述所建立起来的内容,主要价值在于让普通人都能看懂一个数据结构的实现,或者是一个算法的实现。
正因为代码示意是为人类阅读而设计的,所以不能直接作为程序来运行。同时可以进入高级思维的沟通状态,不需要承受低级的实现细节。
这里最容易犯的错就是对待代码示意的态度,很多人都会走马观花式的去阅读代码示意。因为他们只想看重要的步骤,从而导致忽视平衡的重要技术细节,这些内容实际上都是借着代码示意在实行中可以改善提升的。
作为一名 Python 听众来说,阅读代码示意时也要注意数学符号表达形式,以及英文的表述。例如在 Python 代码中使用 raise 语句来抛出一个例外错误,而表述内容会是“指明一项错误”。对于控制结构会使用缩进来展开,一个具有长度的对象表达,例如会用 A[0]到 A[n - 1]来表达。注释内容会用花括号对{这是注释}表达,而没有使用 Python 中的#井号字符。