艾兹格·W. 迪杰斯特拉与他那本没有可运行代码实例的编程专著
图灵奖设立最开始的六年,奖项分别被四个美国人和两个英国人拿走。直到第七年,1972年,来自荷兰的计算机科学家、《编程的修炼》一书的作者,艾兹格·W. 迪杰斯特拉才成为第一个既不是英国人,也不是美国人的图灵奖获得者。
当时,图灵奖颁给他的理由是“程序设计语言的科学与艺术”,以表彰其结构化的编程思想为当时的基础程序编写指明了方向,拟定了规范。
For fundamental contributions to programming as a high, intellectual challenge; for eloquent insistence and practical demonstration that programs should be composed correctly, not just debugged into correctness; for illuminating perception of problems at the foundations of program design.
▲ 图灵奖官方颁奖词
艾兹格·W. 迪杰斯特拉一生大部分时间都在学校度过,直到1999年从德克萨斯大学奥斯汀分校退休。在之前他还担任过埃因霍温科技大学的数学教授(1963-1984年),于1952年到1963年间在荷兰国家数学与计算机科学中心任职。
在 2002 年去世前不久,他因在程序计算的自稳定方面的工作而获得了分布式计算领域的 ACM PODC 影响力论文奖。该年度奖项为了纪念他,于次年更名为 Dijkstra 奖(Edsger W. Dijkstra 分布式计算奖)。
作为计算机科学的先驱者,艾兹格·W. 迪杰斯特拉推动了计算机编程从一门“手艺”到一门“科学学科”的转变,让人们不再认为编程仅仅是一种纯粹的“手工活动”。
同时,艾兹格·W. 迪杰斯特拉提出了“结构化编程”一词,并且让它成为新的编程正统观念。在那个混乱的年代,他的编程方法论思想为软件工程专业学科的诞生和发展奠定了基础,使程序员能够越来越多且高效地组织和管理复杂的软件项目。
这本《编程的修炼》就是当时所写,凝结了作者对于对于编程的所有思考,是艾兹格·W. 迪杰斯特拉长时间在计算机编程工作中的宝贵经验的积累。
这本写于三十多年前的编程书,没有一个可运行的实例。这对于现在很多程序员来说,会觉得非常不可思议,因为当下更多的人的观点是:说那么多有什么用?先把代码拿来看看。
大家似乎更重视代码。
似乎忘了,程序员的工作是“编写程序”,而不仅仅是简单的“写代码”。
而这本书就是作者艾兹格·W. 迪杰斯特拉基于其敏锐的洞察力和长期的实际编程经验,对基本顺序程序的描述和开发中,许多关键问题做出的独到的总结和开发,目的是为了教人“编写程序”,引导人对那些需要解决的问题进行深入地思考与探索,让人抛弃那些花里胡哨的编程工具,去关注“数学上的正确性”和“工程上的效率性”。
正是因为所有的内容都是基于问题本身,而不是某种特定程序语言,所以即使是三十多年前书写,当下这本书仍然没有过时,依然值得每一个关注计算机科学技术的本质,冀求在程序和软件领域有长远发展的计算机工作者、教师和学生阅读。