《大道至简》读后感
大道至简,知易行难。越是简单的东西,往往越是接近本质。周老师的这一本《大道至简——软件工程实践者的思想》虽没有教会我什么技术上的知识,但是对软件工程以及软工实践者的思想有了一定的了解。作为一个接触计算机近一年的新手,参与到工程项目中还为时尚早,有些地方读不懂,很多东西理解不清楚,却也收获良多。
思想是客观存在反映在人的意识中经过思维活动而产生的结果,是人类一切行为的基础。本书主要目的就是讲解一些软件工程的思想。根据软件工程的层状模型,逐层讲解。从程序到方法,再到过程和工程。还列出了许许多多,我们软工者可能在以后公司中遇到的种种问题,面对用户的各种需求等。让我初步认识到了今后的工作情形。
以前,我对软件不太了解,只是简简单单的认为就是许多的可以实现小功能的代码集合体。读完才明白,自己的认识之肤浅。软件=程序+软件工程。软件工程是一种实现目的的手段。实现是软件开发的本质要求。编了这么多的程序,我却从来没有关注过“为什么”,只是不管不问的使用着技巧和方法,忘却了追寻其中的原理,成为了只知道写代码的打字员。再说程序,编程的根本:顺序,分支和循环。作者用愚公移山这样庞大的项目做比喻,将其中的过程化为这三种语句,让我印象深刻。仔细回想在以前编写过的所有功能,都可以用这样简单的编程来实现功能。
作为合格的程序员,编程的第一要务是先把事情分析清楚,事件先后的逻辑关系和依赖关系搞清楚,然后再用代码实现。作为初学者,我有着很不好的习惯,总是要求都没有看完,思路都没有屡清楚就急急忙忙的开始敲代码。缺乏规划,结果可想而知,不是等到最后才发现整个程序结构有问题,就是错误成堆出现,编到半路就编写不下去了。随后就是,大段大段的修改删除,耗时耗工。别人用十分钟就实现的功能,我却用了一个小时才勉强完成,甚至没完成。因此,我决定在以后的任何编程中,一定先认真分析,理清层次逻辑,画出程序设计的思路图,再开始编写。
静下心来写代码也是非常重要的,是一个优秀的开发人员必不可少的良好品质。在过去的学习中,我总是用一些零碎的时间,像完成任务一样赶着进度完成编程。并没有好好的坐下来,静心编程。这就导致我的思路经常被这零碎的时间打断,静不下心。以至于又要重新想解决问题的思路,事倍功半。在周末或在周内上完课的晚上,静下心学习,写代码,相信一定会事半功倍。
总结经验与反思。我没有这样的习惯,我遇到一些问题,或查阅书籍,或网上搜索。解决之后,就完事了。下次遇到同样的问题,却又总是忘记解决办法,继续重复上述过程,费时费工。人们都说:吃一堑长一智。我却总是忘记。写博客,记录编程学习过程中遇到的问题,与自己解决的方法,总结教训,吸取经验,养成良好习惯。
这本书蕴藏的思想我远远没能理解,经历的太少,但开拓了我的视野,让我对软件开发有了新的认识。相信经历许多后再读这本书,一定会有不同的收获。