大道至简第二章读后感
今天读完了大道至简的第二章,第二章和第一章的衔接很紧密,让读者读起来有一种非常亲切的感觉。第二章开篇介绍了李冰凿离堆的典故,读者把这个典故和第一章愚公移山的典故紧密的结合在了一起,形成了强烈的对比。李冰和愚公做的是相同的事情,面对的是同样的问题,但是他们两个人的处理方法却大不相同。愚公那种勤劳勇敢的精神虽然值得赞扬,但是他的举动却是没有思考的蛮干,亦或说是他太勤劳了,居然连思考的时间都没有!但是李冰不一样,他是一个善于观察的人,他在厨房看到了灶台上被火灼烧的鹅卵石会裂开,由此受到了启发,用火烧山可以极大地加快工程的进度。因此就出现了后来的都江堰。作者通过这个事例一方面来告诉我们在做事之前一定要好好的考虑考虑,虽然思考会占用我们的一部分时间,但是合理有效的思考往往能给我们带来事半功倍的效果但是作者使用这个例子更重要的目的就是为了向我们说明面向过程的编程为什么会有工程?为什么会出现单元?为什么要用到模块?这些东西都是那些一线编程员在经历了无数次由大型编程带来的苦恼之后,彻彻底底的思考之后得出的结果。
作者还说了一个问题说的也很有道理,我相信这也是很多菜鸟所面临的一大困惑。那就是我们辛辛苦苦的学了一年的编程,到头来好像什么都不会?积累的知识少是一方面的原因,但更重要的是我们对所学的知识没有做出一个合理的归纳,没有认真的去思考。我们在学校里面学到的知识大都是基础性的,真正实用醒的技能都需要我们自己慢慢的去积累,我们要充分利用互联网这个平台,在这里学习我们想要的知识,在这里提升我们自己!
作者的另外一个观点就是程序 = 数据 + 算法 + 解构。他用他和朋友的一段对话来阐述这个观点的。他对面向对象和面向过程这两个不同的编程方法给出了自己独特的见解。他的这些观点并不是空穴来分,而是在结合了大量的开发实例和对操作系统底层的透彻分析之后得出来的结果。在他看来面向对象虽然对面向过程做出了很大的改进,但是因为CPU执行指令的时候是按顺序逐条执行的,所以面向对象和面向过程任然有很多的相同点。但是面向对象的思路最大的优势就是它使程序员摆脱了那种愚公移山式的开发。