过程与它们所产生的计算——《计算机程序的构造和解释》

  之所以写这篇以及之后的几篇笔记,主要是因为,当我读了《计算机程序的构造和解释》这本书的相关内容时,实在是觉得书中说的太TM有道理了!!!  

  不说出来都觉得浑身不舒服。。。,真的是这样(/ □ )

  我们现在已经考虑了程序设计中的一些要素:使用过许多基本的算术操作,对这种操作进行组合,通过定义各种复合过程,对复合过程进行抽象。但是,即使是知道了这些,我们还不能说自己已经理解了如何去编程序。我们现在的情况就像是在学下象棋的过程中的一个阶段,此时已经知道了移动棋子的各种规则,但却还不知道典型的开局、战术和策略。就像初学象棋的人们那样,我们还不知道编程领域中各种有用的常见模式,缺少有关各种棋步的价值(值得定义哪些过程)的知识,缺少对所走棋步的各种后果(执行一个过程的效果)做出预期的经验。

  能够看清楚所考虑的动作的后果的能力,对于成为程序设计专家是至关重要的,就像这种能力在所有综合性的创造性的活动中的作用一样。要成为一个专业摄影家,必须学习如何去考察各种景象,知道在各种可能的暴光和显影选择条件下,景象中各个区域在影像中的明暗程度。只有在此之后,人才能去做反向推理,对取得所需效果应该做的取景、亮度、曝光和显影等等做出规划。在程序设计里也一样,在这里,我们需要对计算过程中各种动作的进行情况做出规划,用一个程序去控制这一过程的进展。要想成为专家,我们就需要学会去看清各种不同种类的过程会产生什么样的计算过程。只有在掌握了这种技能之后,我们才能学会如何去构造出可靠的程序,使之能够表现出所需要的行为。

原文地址:https://www.cnblogs.com/dongerlei/p/5197427.html