读《构建之法 现代软件工程(第二版)》

一、读后感:算法

   对于计算机相关专业的学生来讲,咱们学习了不少的专业课程,像编程语言、算法、数据结构、编译原理、软件工程等。可是我相信不少同窗和我同样仍然对于咱们如今学到的课程在以后有什么用心存疑惑。也就是说,你们都以为理论和实践之间有着不可逾越的鸿沟。然而在读到邹欣老师的这本书《构建之法 现代软件工程(第二版)》的时候,我解决了我一直纠结的这个问题。编程

  由于做业要求,第一遍是快速阅读,虽然仍然对书里的一些内容有些疑问,可是仍然以为这本书有不少特色:数据结构

  (1)文字+图画;不少专业书都有一个问题就是整本书都是字,虽然不乏内容优质的书可是很容易让读者在阅读的时候困倦疲惫,我一直接触到额计算机相关的书大部分也都是那样,因此邹欣老师新颖的编书模式很吸引我,也是我一个星期能读完这本书的缘由之一。本书包含了不少有趣的图片,读者也能够经过这些图片加深对相关概念的理解数据结构和算法

  (2)理论+实践;本书介绍了软件工程的相关概念,如:软件工程、单元测试、软件开发流 程、敏捷开发、软件需求、用户体验、软件测试、质量保障等。然而在介绍这些基本概念的同时,邹欣老师也全面地诠释了它们在实际的研发工做中是如何表现的,它们又是如何与每一个开发和测试人员息息相关的。在介绍这些概念的时候,邹欣老师常常举例,也使得你们更加的容易理解。 编程语言

  (3)幽默+严谨;软件工程里面的概念比较的枯燥和单调,邹欣老师为了加强学生的兴趣,描述的语言十分幽默诙谐,好比书中用“阿超”、“国栋”、“小飞”、“小李”等角色之间的对话来揭示一个概念的本质,经过他们之间风趣的对话又加深了对相关概念的理解。同时有做为专业技术的指导书,邹欣老师在不少技术介绍时也都使用了数据,真实状况等分析,严谨而认真。性能

二、我的疑问:单元测试

  (1)咱们在作一个软件对软件的质量应该有多高的要求?当咱们的代码的规模很大时基本上不可能作到没有bug。不少软件在还未修复调试好的时候就发布使用,虽然基本功能都能完成,可是仍是有不少bug,最后会致使修改一些bug成本太大,或者形成的影响太大。可是咱们若是一味追求高质量,一直压着修复调试发布太晚也会形成很多的损失。咱们应该如何把握好这以前的度,可以较为和平的维持双方关系?学习

  (2)在团队项目中,工做量如何分配?若是是一个专业成熟的团队,每一个人技术都足够优秀,彻底能够考虑小组成员平均分配,或者按照我的能力技术问题按比例分工。可是对于咱们如今分工的团队,在咱们小组分工的时候彻底把握不到这个度,甚至都不清楚都须要作什么工做,我的能力的认知上可能也有缺陷。测试

  (3)关于bug与测试。从最开始接触计算机编程咱们就明白不可能有人的程序编的毫完好陷,bug是一直都会有的。可是怎么判断这些bug的重要程度?怎么肯定对某个bug的修改不会影响其余功能?怎么分析这个bug对于整个程序的影响?有没有一种比单元测试更简单快捷的方式来保证全部单元的正确性?即便咱们通过了足够的测试,仍是不能保证在实际运行中不会出错,尤为是当开发面向对象的网站或者软件时候,由于使用对象的多样性会遇到不少问题 。那么在维护阶段出现bug有没有比打补丁更规范适用的方法?优化

  (4)咱们除了写程序也要学会分析程序,在不少时候分析程序性能要比写程序更重要,书里面也不少介绍了代码模块的执行效率,着重优化耗时长内存大的部分,也由于咱们须要优化一些基础代码而后有了数据结构和算法,可是不少时候你不会第一时间就想到一个合适的算法适合这个功能,如何根据测试结果思考一个合适的算法呢?

  (5)书中有一段对话颇有意义,大概讲一个新人进入公司看到前辈写的一些程序以为很垃圾想要推到重写,这时候一个老员工告诉他他如今看到的这些程序也是前辈刚进入公司的时候以为程序很很差改写的结果,反而尚未原来的好用。咱们在前人的基础上去使用这些软件可是不表明咱们以为他很差咱们就有能力写的比他好,因此该如何正确对待别人的程序呢?可能有你以为很差的地方,可是确定也有你要学习的地方。

相关文章
相关标签/搜索