<<大道至简-软件工程实践者的思想>>读后感
作者:互联网
大一结束后的暑假期间读了这本书,让我受益匪浅,对我以后在软件工程专业的学习有很大的帮助。
书是人类思考的结晶,是经验的宝藏。因此书的真正价值在于内容,在于作者的思考,在于读者能否从书中得到收获; 愚公移山知识一种精神追求,而做工程却不是追求精神目标,我们的目标是完成工程,作者通过愚公对自己移山的经验以及方法介绍编程的根本是顺序、分支和循环,周爱民在书中写到除了先天智力问题或者后天懒惰不思进取的人,都能学会编程,程序=算法+结构。这些在信心上绝对的帮助我们一些对编程有心理困难的同学,相信自己就能做好。
一接到任务就开始 Coding 的程序员,通常就是加班最多的程序员,以前的我就是这个样子,一看到题就开始敲代码,乱敲一通后运行报错就开始疯狂挠头,毫无头绪,导致了这道题没能完成,因此,我认为:积极工作和勤于思考都要占时间;勤奋固然重要,但是“懒人”造就了方法。虽然古语常说:“天道酬勤”,但对于编程来说,从才不缺勤快人,反而却缺少一些懒人。有些东西并不是勤快就能解决的,所以说,方法是根本做一件事不要怕失败,我们注重的是过程而不是工程。
所有的算法描述中,有且仅有顺序、分支和循环这三种执行逻辑;算法是对一个程序的逻辑实现的描述,而结构是逻辑实现所依附的数据实体。只要开发人员将这个程序的算法设计出来,并把数据结构描述出来,那么程序就定型了。剩下的事,简而言之,就是劳力活;所以敲代码前要先思考,代码看起来复杂,其实把每个部分单独放出来,就是我们平时学习的基础。
成天讨论这么语言好,或者那门语言坏的人,甚至是可悲的。不但是悲其一叶障目,更要悲叹于那种大愚若智的自得心态;大一时的我也听过一些说法,说什么c++是没落的语言,学java才会有高薪,后来又听说java即将没落,学python才是王道。这时我才意识到,没落的不一定是语言,而是三心二意,随大流的程序员,当你努力的把一门语言学到极致,一样有很好的未来,一个学c并得到字节offer的学长给了我这种启示。
如果一个人学了一年的编程,它的脑袋里还是晕乎乎的,不知道从哪里开始,也不知道如何做程序。那想来只有一个原因:他学了,也把知识学进去了,就是不知道这些知识是干什么的,或者说,他不知道各种知识都可以用来做什么。进入大学一年了,虽然也学习了c语言和c++,自我感觉良好,但没有做过实际的项目,甚至有些知识还没有听说过,我才意识到,自己现阶段只是学了些皮毛,真正的东西我还遥不可及。我认为,后阶段如果想深入了解这些未知的东西,就要学会自学,自己查找资料,去github接触一些项目,也可以请教大佬,去b站、mooc找教学视频。
同时,我也学到了:经验,是源于对过去的思考,而不是对过去的复制;模式需要一定的编程经验才能理解;经验来源于回顾、理解与分析,而不是你将要写的下一行代码;有人在寺院里扫了一辈子的落叶而得道,也有人因为一句话而得道;给与你奖励的决定通常是你的上司,而不是绩效经理作出的;实现,是软件开发的本质需求;高明的剑士是不会用剑去砍的,剑刃大多数拿来削苹果,真正有效的是剑尖;使用工具的方法,比工具本身更关键;有能力的人,未必真有识见,真有才略;技术容不得取巧,只能点滴积累;如果不了解 OOP,那么 Java 与 C# 每一座都是高山大壑;反之,则可举一反三,触类旁通了;语言只是工具;融通”与“融同”的区别在于:前者是以一通十,有运用变化的能力;后者则知工具之大同,信手而得,随心所用;于某时某事,适用的就是最好的;“极限”是达到“敏捷”的一种途径;找别人解决问题比自己解决问题来得迅速;敏捷的根源是学会思维而不是立即着手解决问题;“知道更多”则更容易找到解决问题的方法,因而比“精通”重要;敏捷方法的核心之一,就是“寻找更有经验的成员来解决问题”或“使自己变得更有经验”。如果不想沦为代码工人,甚至代码机器,那门就需要思考并领会这些背后的道理。
通过这一本书使我明白了应该如何去更好的编程,对于接下来学习JAVA提供了指导意义,对以前的C/C++的巩固也有很大的帮助,对接下来大二的学习生活提供了一条有益的经验。
标签:读后感,经验,语言,代码,编程,思考,解决问题 来源: https://www.cnblogs.com/xlm926/p/16503802.html