《构建之法》观后感
刚开 始读《构建之法》这本书时,书上所提到的很多问题都是我们平常在写代码时候会犯的一些小的错误,就我个人而言,在我还没读《构建之法》这本书之前,我还不知道我平常在写代码中犯了这么多的错误,虽然这些错误都是一些小错误,并不影响代码的执行,但是看了《构建之法》这本书之后,才忽然明白原来一些小错误也会造成大的问题。
第一章中有一个问题,每个人对于不同的事物都有不同的看法,我们的软件不可能满足每一个人的要求。但是这句话不是我们逃避问题的原因。我们要尽自己的可能将一切做到最好。在软件生产前要努力了解到人们的需求。基于此进行软件的开发。软件开发完成后。不是所有工作都完成了。要继续对我们软件进行维护。当我们开始工作时,软件的维护将是一项大工程,千万不要小看它!
书本第三章的软件工程师的成长对我的启发很大,在学校,我们需要学的知识和语言太多了。往往给我们一种杂而不精的感觉,但是平时在校期间几乎是没有多余的时间去将所学知识学精的。所以平时老师布置的作业就是很关键了,这是我们学习的一个任务。但是,做作业也出现了很多的问题,确实,像书上52页所描述:我们在平时的作业里,很多都是通过上网找资料得来的。因为有了上网这个功能,而且大家人手一台电脑,我们也没有体会到要去记牢一些最基本的事情。所以此后,我们也养成了习惯,一碰到不会的,马上百度,却从来不记住。当下次再遇到同样的问题时,我们可能还会再一次向百度伸出请求援助之手。此时,我也意识到问题的严重性了。某些低级的问题确实不值得我们一而再再而三地百度,这些最基本的东西本就该稳稳地沉淀在脑海里面,可以不经大脑就自然一气呵成。否则,你所精通的,其实都是别人的。这也就是《构建之法》对我的一些启示。
书本第四章的两人合作和第五章的团队和流程,我觉的这两个章节在我们今后进入企业上班工作起很大的作用,做一个程序,不是一个人可以完成的,团队里每一个人负责什么?需求设计谁写?谁测试?这些都涉及到团队里的每一个人,所以团队中如何分工,如何把各自负责的部分合成一个整体项目,这就考验了整个团队的团结分工性。第四章中我发现了以个在平常的编程里我的错误,在我的程序中,我的注释大多都是在变量名的后面,标注了该变量是什么。突然觉得这样的做法很蠢,一个变量,其实要是命名做的好,那么让人一目了然,就少了一些没必要的注释。
我也没有帮助过别人,但是看了这本书过后我深刻的认识到了团队真的非常重要,我有必要结交新的朋友,新的搭档,这也确实令我憧憬未来的生活,然而第二章中又提到了个人在团队中的作用,接下来他提到了几种团队的运作方式,还讲了几种调试程序的方法,这个方法对于现在的我来说实在是有些遥远,一来我还没有接触过这种大场面,二来我目前真的用不到这些东西,我就当是提前领略了未来程序员的风光生活。书中还说到:在团队的开发中必然要产生矛盾,因为每个人的思想观念都不同,但是一个好的团队能把冲突的积极方面(分子尽力把自己的工作做好,说服别人)释放出来,而避免消极方面(因为冲突而产生的消极,抵触情绪等)。这给了我警示,让我明白了如果在日后我有机会
参与到一个团队中,我要注意的点。书中还有一种我非常喜欢的合作编程方法——结对编程。书中详细介绍了结对编程的具体做法和他的用处,这给了我极大的启发,我非常欣赏这个方法,因为目前的我来说刚好能够达到这样的条件,所以这个方法让我感到兴奋,而且这种能够不断复审的编程方法真的非常有效率,这让我觉得我可以在某些方面上达到了一个成熟的程序员的标准。这个书中还给了我很多有用的信息,比如说很多国内的IT人士认为35岁是一个程序员的职业生涯的点,还有一个程序员的进化历程,达到了什么样的实力算什么级别的程序员,这些信息也让我收益良多。这本书再往后面的部分太过于深入且专业了,让我有一些无法接受,所以对于这段内容我很难有感触。
这本书告诉了我们详细的教学计划,和教学目的目标和手段。让我们自己考虑什么事健康的师生关系。然后给我们简单得讲述了软件工程是什么,用通俗易懂得语言并类比其它学科简单介绍软件工程行业的发展。
这本书对我的启发很多,无论是做管理还是做技术,人总是有学习的能力,相信有这个能力,不用纠结要做管理还是做技术。