2026 Programmer Day

程序人生又多了一年。

今年拜读了三位大师的作品《Structured Programming》。

  1. Notes on Structured Programming - By Edsger W.Dijkstra
  2. Notes on Data Structuring - By C.A.R.Hoare
  3. Hierarchical Program Structures - By Ole-Johan Dahl and C.A.R.Hoare

受益颇多。

什么是编程?
编程是为了实现一个过程,而不是写一段代码。
代码是过程的一种描述,当它被计算机执行时,过程就实现了。

编程为什么要结构化?
根本原因是人类智力有限与计算机庞大记忆的矛盾。
当一个过程很长的时候,人类的智力无法扁平地理解整个过程。 所以人类为过程建立结构。 这样,在某一个时刻,人们只需关注结构中的目标节点以及与它相邻的节点。
代码作为描述过程的文本,它应该尽量和过程保持同样的结构。这样,通过阅读代码,程序员就能大概的知道过程。

同理,人类智力是有限的,外界普遍是庞大的,所以结构化是一个普遍的现象。
层次结构是一种普遍的结构。

......