第二章开篇将愚公与李冰作比较,愚公只知道日复一日,年复一年地挖山,毋庸置疑,他是个勤奋的人,然而,他的勤奋让他没有时间来找寻一个更方便快捷的方法,相比之下,李冰用懒人的方法凿了一座山,用时比愚公少,人力资源消耗小,同是战国时期,愚公就要碎石击壤,而李冰已经懂得积薪烧之了,换句话说,是懒人造就了方法。
李冰积薪烧之的方法来由一次闲极无聊的给夫人烧饭,发现垒灶的鹅卵石被烧的爆裂开来,遇水于甚,所以说人的精力是有限的,提出新的方法,解决的将是影响做事成效的根本问题。早期的程序是将代码打在穿孔纸上让计算机去读,之后有了汇编语言,这时的代码是写在文本文档里,然后交给编译器去编译,再由链接器去链接,这样就出来了程序,后来出现了高级语言,人们依然还是习惯把代码写在一个文件里,然后出现了单元文件,出现了模块,把一个大模块分成小模块,在把小模块分成更细的小小模块,一个模块对应一个单元,于是可以分工进行合作。有了懒人才造成了现在我们的编译环境。
你的书桌乱不乱?既然我们会整理书籍,将他们分类、归整的整整齐齐,就可以类推到我们所学到的知识,将他们归纳一下,整整齐齐放在脑子里。如果学了,却不知道怎么做,那只是他不知道这些知识可以用来做什么。所以我们应该尝试一下分类,把既有的知识像桌子上的书一样整理一下,最常用的放在手边,而最不常用的放在柜子里,这样我们的能力会提高一大步。
“程序=数据+算法+方法”,其实即使没有任何“方法”的根本原因,是即使没有任何“方法”的存在,只需要有了“单元”和“模块”的概念,在面向过程的时代,一样可以做出任意大型的程序。在那个时代,“方法”问题并不会像象鼻子一样凸显在每一个程序员的面向过程开发中,面向过程开发中,过程是由CPU提供的,单元是由编译器提供的机制,程序员不需要造就什么,就可以进行愚公式的开发工作,如果不出现面向对象的话,这样伟大的工程还要进行几百年,而与面向对象是否出现完全无关的一个东西,却因为过程和单元的出现而出现了,这就是工程。
而我们作为一个大二学生,已经学习了C++,现在在接触Java,我们应该像整理书籍,将它们分类,归整的整整齐齐,类推到我们所学到的知识,将学到的知识归纳,整齐的放在脑子里,其实编程语言是相同的,只要你把一门语言学的透彻,在两周内学会一个新的语言是可以的。
第二章主要介绍了是懒人造就了方法,我们要学会寻找方法,把复杂的事情变得简单化。