大道至简周爱民 大道至简(周爱民)第二章
今天把周爱民大道至简的第二章关于是懒人造就了方法读了几遍,作者通过战国时李冰凿山与愚公移山的比较来阐述懒人早就方法主题,以前听历史老师讲课的时候正是因为懒人才会有那么多可以节省人们力气和时间的发明,但懒人并不是真的懒,只是把更多的时间用到了思考上面与观察生活细节上面,正如文中作者所说愚公太勤快了,勤快的今天可以比昨天凿出一倍的石头,以致没有了机会去寻找更快的方法,人的精力终归是有极限的。
提出新的方法,解决的将是做事成效的根本问题。而愚公可以多吃点饭,多加点班,但却突破不了人的精力极限。
文中讲的一百万行代码是可以写在一个文件里面的,由早期的写程序,都是打在穿空带上,让计算机去读,到后来的汇编语言这也是一种进步了,省去了好多麻烦,而且无论这个程序多大,多少行代码,写到一个文件里会方便许多。
但 把一百万行代码写到一个文件中去,要查找一个函数需要在编辑器中按五千次PageDown/PageUp键,当然对于勤快的愚公来说他并不会去想些什么,但对于一些懒人来说这个十分庞大的工程并不愿意去参与,因而他们才会去想如何才能"偷点懒" ,才会有了后来的"单元文件(Unit)",有了单元文件,也就很快出现了一个新的概念:模块。
把一个大的模块分成小模块,再把小模块分成更细的小小模块,一个小模块对应于一个单元,因而就可以分工作了,一部分人写着几个单元的代码,另一部分写那几个,这样就能减少一个人的工作量 了,从而提高了工作的效率,这也达到了"懒人"们的要求了,也正因为多了些思考,才少了那么多的辛劳。
当讲到你桌上的书是乱的吗?我当时就想这和编程又拉上了什么关系,但当讲到内容时我陷入到了思考当中,文中作者的引用的例子正好是困扰自己的问题,学了一年的编程,却不知道怎么写程序,作者用整理桌上的书说出了其中的问题,既然书桌上的书知道怎么分类、归整得整整齐齐的,那编程不也是一样的道理,把自己所学的知识、所了解的东西分类一下、归纳一下,整整齐齐的放在脑子中,那样不就更清楚地了解自己所学的了,常用的记在自己的脑子之中,而那些不常用的可以不去记只需要在用的时候能从书中找到便可。
所以我们在学习中我们应该学会归纳自己所学的知识,那样我们就可以更快的学会新的知识。勤奋的人没有时间去思考这些问题,他们努力地编写着程序,有时候我们真的需要一些时间去整理我们所学到的东西。
而且,对于软件工程的专业的我来说,有良好的软件品质的是非常重要的,这里的素质指的是:我们在写编程时一定要写备注,断行的良好的习惯、规范的格式是写代码应该具备的重要素质。
关于作者对:程序=数据 算法 方法的思考,是在soul和他的对话中,可以很好的看出自己的思考有很多不满之处,他缺失了面向对象的"方法问题"如果一个问题不能解决,那它将永远成为问题。所以就有了对"程序=数据 算法 方法"的思考。