《大道至简》概括了从最简单的编程讲义,到工程实现的概括。不仅有现实结合的软件工程,还有团队管理,沟通交流之间的问题。
书中提到编程没有不会的,程序=算法+结构,而语言只是一个工具,只要将逻辑顺理清楚,算法能够设计出来,将结构描述出来,就没有实现不了的了,因为剩下的只有劳力活,顺着理好的思路一步一步做就好了。
在读这本书之前,我遇到所有的程序设计题目,方法都是直接上手,一边写代码一边想着逻辑,而不是先理清思路再顺其而为,这样很容易遇到一点问题就要卷土重来。书中提到"编程的第一事务是先把事情分析清楚",这样也确实是最正确的,只有清楚的逻辑思路才能将逻辑关系与依赖关系搞清楚,才能最终由代码实现题目的要求。
思想是最主要的,"程序=算法+结构",而代码在其中是不存在的,因为代码只是语言工具实现目的的办法,精髓在于如何用代码去实现,就是思想是否正确,逻辑是否合理。因此我意识到自己之前的方法存在很大的纰漏,不是解决一个问题应有的步骤。解决方案便是遇到每一道题目都应该把需求逐层分析,将需求由简单至难的结构分解开来,有清楚的逻辑思路,将大体注释先排列完善,再先从最简单的开始,在简单代码实现的基础上,一步步增加其他需求的代码。
现在我已能够先行设计思路,想好每一步骤应做什么,由小化大,从最简单的实现开始,进而增加更深层次的要求,一步步完成一个题目的实现,对我来说意思非凡,帮助也是十分巨大的。
除此之外,书中还有很多其他的分析,例如书中的学生问"我学了一年的编程,为什么还是写不出程序",而回答很是简单,就是将学过的知识分类归纳,让它们在脑子里整齐的排列,我想这样遇到程序便能一瞬间知道需要怎么的方法来实现了,对我而言这也是很大的提醒,我也应该不时的整理归纳学过的知识才行。
书中还提到了一个团队的分工与各自的职业,一个人,两个人做出项目都不叫团队,因为缺乏监督者的作用,所以只有具有监督职责的第三者作用的才叫一个团队,但同时,监督者也应承担失败的后果,如果不能做到处理后果的作用,那么他便是无用的。一个团队还应具有对一个项目完成的工期有具体准确的预估,必须要有足够的经验。
《大道至简》这本书确是软件工程者不可或缺的一部书,能给我们指出正确的道路,对提升自己有很大的帮助。通过阅读此书,我学会了很多:
1.程序设计需要有足够的前提逻辑和思路顺理。2.要不时的对学过的知识进行整理和归纳。3.团队工作需要各司其职,相辅相成。总而言之,这本书对我有着潜移默化的影响。