关于《大道至简:软件工程实践者的思想》一书的读后感

在阅读《大道至简:软件工程实践者的思想》一书后收获颇多,遂将感受与想法记录下来。

此书首先由愚公引出编程,给我们看到编程的根本:顺序、分支和循环。然后明确的告诉了我们编程其实很简单,只要掌握了步骤与操作,皆可以编程。在此之前,我还经常怀疑自己是否真的适合编程,看了此书后才金篦刮目,没有什么适不适合,只有愿不愿意。书中说“编程作为一种行为,只需要知道其逻辑方法就可以了”——即编程很简单,就比如拿到一件事首先要分析,只要找到方法这个问题就随之而解了。而我们的现状往往是一味地蛮干,记住:积极工作和勤于思考都要占时间。在我们了解了“程序=算法+结构”后就可以开始学习多种语言了,而学习了他们之后总会有疑问“到底哪门语言更有用呢?”这本书却纠正了我——语言没有好坏之分,各有各的作用,甚至是直言“成天讨论这门语言好,或者那门语言坏的人,甚至是可悲的”,幡然醒悟的我明白了,事物的存在必定会有他的价值,要多方面分析,不能从一而论。

然后此书将愚公与李冰做对比,向我展示了方法的重要性。愚公没有方法,只知道蛮干,所以就要用时间去堆积,但一个人的精力终归是有极限的,然后就用上了世世代代去继续完成,最终才能完成这么一项任务。而李冰掌握了方法,在最快的时间里完成了作业,自然,李冰获得的回报也就更多。勤快的愚公创造不了方法,这个世界上,有勤快人就必然有懒人,有懒人也就必然有懒人的懒方法,然后就发现把一个大模块分成小模块,再把小模块分成更细的小小模块,一个模块对应于一个单元,让源代码分散开来,这样要完成一个程序其实也没有那么难。而我时常问自己“为什么我学了一年的编程,却还是不知道怎么写程序呢”看完此书后发现我们首先要明白这些知识是用来做什么的,再将知识在大脑中分类储存,要用时才能清晰明了的输出需要的部分。就像把大模块分成小模块的过程的逆向分析。

在学会方法之后就到了管理层面。在哪个位置就要承受那个位置所必须要承受的责任,当了负责人之后还要学会如何管理这个团队,既要做到人性化又要做到公平性,在一个团队中不要混淆自己的角色,该做什么就做什么。比如我现在是学生,就理应好好学习,而不是出去打工,而学习就得认真学,不能三心二意,心口不一。

管理之后就是沟通了。沟通在我的理解中算是比较重要的一部分,好的沟通可以为我们节省很多时间与精力,与其这部分浪费在不沟通上,不如多做几个项目。管理层在分配任务之前就必须与客户沟通恰当,当然管理层与管理层也要沟通,在没有问题后再分配下去,让员工彼此之间在多沟通,避免重复、缺少、多余的情况。

做一件事不要怕失败,我们注重的是过程而不是工程。都说失败乃成功之母,所以失败不可怕,可怕的是失败之后就再也没有勇气继续。

我们知道软件开发包括中语言、程序、方法、过程、工程、组织。这些在软件开发中都各自占有一定比重。而我们平时所说的BOSS则不属于其中,BOSS在公司中解决的是“经营”问题,这其实是在比“组织”更靠外侧的一层。而软件开发的最终目的则是实现,实现又被称为“上帝之手”,因为实现是软件开发的本质需求和基本动因。

然后此书向我们介绍了现实中的软件工程。因为知识积累不够,所以不是很能理解。

是思考还是思想——这是此书最后一章的问题。在向我们提出问题时,也解释了作者写下这本书的原因。

总之此书在软件工程方面给我带来了不一样的感觉,值得一读。

原文地址:https://www.cnblogs.com/xiangyu721/p/11273738.html

时间: 2024-08-30 07:10:37

关于《大道至简:软件工程实践者的思想》一书的读后感的相关文章

阅读《大道至简--软件工程实践者的思想》有感(3)

阅读完<大道至简--软件工程实践者的思想>,明白了软件与程序的区别,<战国策-秦策>中的那句话,“王不如远交而近攻,得寸,则王之寸:得尺,亦王 之尺也.”程序只是程序员与电脑之间的对话,而软件却是让程序员把用户与电脑连接到一起,作为桥接.程序不一定是用来卖的,但软件是用来卖的,所以软件包含了商业因素,而程序却没有. 做软件,达不到好.快.省三点.我们的项目,无经费可言,无充足的时间,所以总是图快.图省,然而这样做出来的项目,只能是应付老师,并不是真正的学会了什么东西.然而想要达到好

《大道至简--软件工程实践者的思想》读后感

<大道至简--软件工程实践者的思想>读后感       "工程其实很简单,只是大家把它做复杂了."或许,这就是作者周爱民想阐述给我们的软件工程的核心思想.       愚公移山,看似是一个庞大的工程.可既然山不加增,又何苦而不平?正如书中所说,除了先天智障或后天懒惰,任何人都是可以写程序的.在愚公身上就可以看到编程的基础,顺序.分支和循环,移山这等的工程都可以通过编程来简单实现,这便是编程的精义.       积极工作和勤于思考都要占时间,只要开发人员把这个程序的算法设计出

《梦断代码》、《你的灯亮着吗?》、《最后期限》、《大道至简——软件工程实践者的思想》的阅读计划

作为从事IT行业的必读枕边书目,没理由不拜读一下.以下是我的阅读计划,希望自己能认真执行,阅读自己慕名已久的书目. (每天的阅读时间晚上9点半以后,看一个小时的书籍) 一.<梦断代码>的阅读时间跨度(3月5号~~~4月4号) 随书笔记的发表时间:第一篇3月14号 第二篇3月21号 第三篇3月28号 二.<你的灯亮着吗?>的阅读时间跨度(4月5号~~~5月4号) 随书笔记的发表时间:第一篇4月14号 第二篇4月21号 第三篇4月28号 三.<最后期限>的阅读时间跨度(5月

《大道至简----软件工程实践者的思想》

愚公移山的故事想必大家都听过,而愚公移山的过程恰恰能够描述一个项目的实施和编程的精义.首先,要有对解决项目的兴趣和信心,我认同这句话:没有会不会,只有喜不喜欢.只要把自己投入其中,有自己的思考方式,就一定会有所成就.在实施过程中,从需求的产生到团队之间的交流,从技术方案的提出到程序具体的实现,一个项目就完成了.其中程序功能的实现则由简单的语法:顺序.循环.分支一点一点地拼凑而成,就像愚公说的:"虽我之死,有子存焉:子又生孙,孙又生子:子又有子,子又有孙.子子孙孙,无穷匮也(循环).而山不加增,何

《大道至简---软件工程实践者的思想》阅读笔记二

08大道至简——软件工程实践者的思想阅读笔记之二 2015-06-02 16:41 第五章 失败的过程也是过程 以得失而论,在瀑布模型与RUP模型之间,学习前者而不成,可思过程的本质:学习后者而不成,可得文字的架子. 如果懂得了所谓的模型原本都演化自那个简单的瀑布,那么文档是按XP写还是按RUP写,也就可以应时.应需,因地置宜,择善而从了. 越是简单的东西,往往越是接近于本质. 项目经理的工作,就是要去组织这个工程中的各个角色,使得分工明确,步调一致,共同地完成这个项目. 第六章从编程到工程 我

《大道至简----软件工程实践者的思想》阅读笔记三

第七章 现实中的软件工程 第八章 是思考还是思想 读完了这本<大道至简——软件工程实践者的思想>,感触其实很多,从一开始的“愚公移山”的故事,一直到最后的古诗词的音律知识,我更多情况下是在中国文化的背景之下了解软件工程的相关知识,说起来这种感觉很微妙,因为作者为我们提供的讲述方式确实很新颖,以至于我们在对中国文化解读的过程中就不知不觉的对软件工程有了一种莫名的情感. 我们每个人从小就听到过很多故事,我们知道做人要礼貌,谦虚,富有正义,但是知道读了这本书,才知道原来故事还可以这样讲. 这也正是验

《大道至简---软件工程实践者的思想》阅读笔记一

07大道至简——软件工程实践者的思想阅读笔记之一 2015-05-29 16:41 第一章编程的精益 作者将<列子·汤问篇>中的<愚公移山>与软件工程巧妙的结合起 来,通过分析证明其实在两千多年前的愚公除了在移山的过程中担任 “项目组织者,团队经理,编程人员等众多角色”,还已经具备了编 程人员的基本素质. <愚公移山>                                项目管理 惩山北之塞,出入之迂                       项目原始需求的

读《大道至简-软件工程实践者的思想》有感

囫囵吞枣地读完,总是看的走神,里面有许多术语看不懂.的确,这本书是该读许多遍,每一次都会有新的体会的.而对于初学者,至少从这本书中该获得学习编程的大方向.想着要写1000字的读后感,我又折回来看了每一章,每一章都该有所收获.作为一个初学者,许多东西看到的都很表面,也会有错误的地方,还请多多包涵. 第一章是编程的精义,作者周爱民将编程和古代愚公移山的故事结合起来,巧妙地告诉我们自古以来我们就有这种思想.而编程能不能学会,是很多初学者都会问到的问题,编程重在逻辑,作者也明确告诉了我们,除了先天智障和

《大道至简——软件工程实践者的思想》读后感(一)

在老师推荐书目之前 读过的编程书 基本都是教辅为主的 像谭浩强先生编著的<c++程序设计>以及<java程序设计>等等 都是目的性很强的书籍 很基础性的书籍 从来没有读过类似<大道至简><梦断代码>这类书籍 我非常感兴趣 希望再老师的指导下 认真的学习这些书籍 对自己的学习和以后的工作起到长足的影响 首先 我粗略的看了下这几本书目录 一下就被这本书所吸引 在我看来 这本书充满了哲学的味道 在读惯了枯燥的代码书籍 这本书 给我耳目一新的感觉 如同新大陆一般 编

阅《大道至简--软件工程实践者的思想》,读后感

大道至简这本书总体来说比较通俗易懂,同时在说明自己观点的时候引用了许多古代的例子,更加的形象生动有趣,可读性很强.       前几章的主要思想如下:       程序=算法+结构+方法:编程的第一要务是先把事情分析清楚,把事件先后的逻辑关系和依赖关系搞清楚,然后再去写代码实现.代码是不存在的,存在的只是思想.其实算法是对一个程序的逻辑实现的描述,而结构是逻辑实现所依附的数据实体.在所有算法的描述中,有且仅有顺序.分支.循环这三种执行逻辑.而且对于编程语言来说只有喜不喜欢的问题,没有会不会的问题