构建之法:第二次心得

对于《构建之法》这本书,里面有许多我不熟悉的C#语言,研读的时候会有很多困难。但在老师的指导下,我了解到对于这本书我们要学的并不是代码相关的知识,而是它的工程思想和方法。在这个基础上,我仔细翻阅了第二章以及第三章的相关内容,以下就是我对于这两章的认识。

第二章

在第二章中,我知道了为了成为一个合格的软件工程师,一些基本概念我们需要了解清楚,就比如说这一章重点提到的单元测试、回归测试以及效能分析。

以前,没有接触过这一块的内容,我只知道软件在研制出来之后,并不会立马发布,会有专门人员先进行使用,对出现的许多bug进行调试。而单元测试和回归测试也有相似的功能,就是对程序基本模块进行测试,在测试的基础上,后期对于这个软件的修改也好,又或者是调试都会有很大帮助。

另外,在效能分析方面,我在以前C语言、C++语言和java语言中都有体验,比如说,for(int i=0;i<m_wordList.Count;i++)int count=m_wordList.count;for(int i=0;i<count;i++)z,这两段代码,就差了一行代码,但是它们的运行时间却大不相同,后者比前者所耗时间少了很多,而在实际软件的应用中,运行时间的长短对于软件是否长寿也是很重要的。所以,在以后的软件开发中,必须牢记“效能测试,分析,改进,在效能测试”。

每个工程师在软件生命周期所做的工作都应该有一个流程,从书中我们可以知道,工作后的软件工程师比起在学校的学生来说,更注重软件的“需求分析”和“测试”,在我看来,如果一个工程师很高效的开发了顾客的不喜欢的软件,即使这种开发效率很高,那也是失败的,作为软件行业的开发者,必须时刻以顾客的需求为标准。

在大一大二的时候,我也曾做过一些程序设计大作业,就是在短学期时,做过一个网上购书系统,大作业都是两人一组完成,花了一周的时间,代码也并不是特别长,但是有好几个模块,但这些模块也大都是书上现有的,所以最后的结果就是全班只有几个版本,做出来的系统只能完成最简单的操作,最主要的原因就是大家的基本功都不是特别好,对代码、整个系统流程、用户需求不是特别清晰。

第三章

对于第三章,我认为是对我未来就职生活打的一剂预防针。团队固然是重要的,在团队中大家都需要互相依赖,互相监督。但是团队的成功是建立在个人能力的基础上的,倘若你只在团队中浑水摸鱼,那么你将永远不会有提高。每个人的工作质量都直接影响最终软件的质量。

对于这章后面的实际案例讨论,我也做了一定的思考,第一题中,首先我认为医生和软件工程师有着本质上的区别,医生的对象是人,而软件工程师的对象是软件,对于软件工程师来说,不管是在书上看到例子,学以致用,严谨地完成软件的开发,还是有一定的创新意识,立马在软件上实施,都是可行的。另外,对我的自身发展来说,考相关的证书是一条必经之路,当今社会,证书也是衡量你能力的一条重要指标。第二题,在科技大发展的背景下,软件的更新换代是非常迅速的,这就要求我们必须有一定的创新意识,在原有软件的基础上,提高软件的性能,否则在淘汰软件的同时,我们自身也有可能被公司淘汰。第三题,在绞刑架故事的背后,也阐述了当今软件工程师这个行业的前景大好,随着科技发展,IT行业受到许多求职者的关注,如果我不努力提高自己,那我的岗位就会被更加有能力的人占有。第四题中,小飞在软件开发的过程中,发现自己在软件原来设计中的问题,进而面临一个矛盾,是就这样将错就错,留给后面团队调试,还是及时改正,拖延交付时间。我认为,这个案例中,小飞需要直视自己的错误,及时改正,将具体原因对自己的老板也好,团队其他成员也好阐述清楚,相信其他人并不会嘲笑自己,团队的成功,软件最后质量的保证才是最重要的。

最后,我认为在求职道路上,我需要不断提高自己,不论是团队协作能力还是自身能力,都需要在慢慢磨砺中得到发展,这样才不会被时代淘汰。

原文地址:https://www.cnblogs.com/20hx/p/6747992.html