今天抽空阅读了大道至简这本书,我的第一印象是书很薄,不像其他的书一样那么厚,但里面写的是有道理的、充满着哲学的气息。
我看了看第一章,感觉写的挺有趣的。作者用史上愚公移山的例子来阐述编程的精义。书中指出:
我们应该注意到愚公作为编程人员的基本素质。在与“河曲智叟”的对答中,他叙述了整个工程的实现程序:
“虽我之死,有子存焉”,这里描述了可能存在的分支结构,即“IF”条件判断。
“子又生孙,孙又生子;⋯⋯子子孙孙,无穷匮也”,这里描述了完成这个工程所必须的循环结构。
作为优秀的程序分析师,愚公论述了这个循环的可行性:由于“山不加增”,所以条件“山平”必将成立(“何苦而不平”),所以这不会是一个死循环。
在愚公的论述中,我们看到了编程的根本:顺序、分支和循环。庞大若“愚公移山”这样的工程,都是可以通过这样简单的编程来实现的。这,就是编程的精义了。
我感觉写的精辟有理,最简单的往往是最重要的,编程也是由这样简单的基础组成的。