《大道至简》读后感
最近几天阅读了周爱民老师的《大道至简》,有着许多的感悟,本书生动的表达了许多的内容。让我学到了很多,在阅读本书之前我认为编程只是一串串枯燥乏味的代码,只需要记住这些代码就能完成编程的工作。但这本书更正了我的认知。诚如之前所学的c与c++所学到的不过是一些皮毛只是单纯的利用基础知识来做一些简单的案例并没有深度的思想与考量。因此往往得到一份问题从来不会先分析拆解而是凭借着不多的经验“硬”编,导致做出来的代码十分的繁琐冗杂。
而《大道至简》给我的启发就是任何问题都是阶段性的,问题并非是做这么简单而是做,怎么做,如何做。讲究的是一个章法,前提是是否看到了事物的本质,我所读的版本共11章。下面一一说来。
第一章在对《愚公移山》的论述中我们看到了编程的根本:顺序,分支,与循环。再大的编程都可以用简单的代码来一一实现这就是“愚公移山”,也就是编程的精髓所在了。还讲到了“程序=算法+结构”。用愚公来比喻的话,算法就是愚公的家人们来挖山,而结构就是“子子孙孙无穷尽也”。算法就是思路就是解决问题的方法。其实对于变成来说还有一个关键点就是语言。然而通过一年的学习发现大部分计算机语言都有相似的语法和结构,但深究起来却大相径庭。
第二章的主题是“懒人造就了方法”,的确是人类进步的根本原因就是“懒“,一个计算机程序让本来需要人力上万遍的重复计算用几行代码待以实行,解决了人工的问题。语言是工具,没有所谓的语言的好坏,只有哪种语言适用于什么情况,任何语言只是我们实现编程这一行为的工具罢了。懒人造就了方法,勤快的愚公只会埋头苦干,创造不了方法,我们要忘掉定式思维,摸索创造方法。接到任务就开始编程的程序员往往是加班最多的那个。编程要条理清晰,思路明确,不能埋头苦干。
接下来的几章主要围绕的就是团队公司的思想了。整本书主要围绕 “程序=算法+结构+方法” 展开,周爱民先生将其几十年从事软件工程实践者的宝贵经验传授给每个读者。通过这本书,我不仅了解了编程的本质思想,还认识了许多专业名称及知识,对项目的确立到项目完成的过程有了大致了解,受益匪浅。之前的编程过程中,我仅仅是按照 “程序=算法+结构” 了解其大致结构和思路算法后便开始潦草编程,走一步是一步。这样做的话,不仅思路不太明确,而且特别容易出错,若是比较小的项目的话,缺点还不太明显。稍微大一点,就会发现程序一团糟,思路不明确,各个地方卡死。阅读完此书之后,我明白了不能傻傻的埋头苦干,要明确思路,理清条理关系,将复杂的大项目分成一个一个小项目。这样不仅能将复杂的项目简化,而且更方便查找错误,分成一个一个独立的小模块,只需保证小模块正确,然后将其嵌套关联,就组成了庞大的项目,而且思路明确,条理清晰。