《构建之法》阅读疑问

《构建之法》暂时只读到第四章结对项目,前几章的阅读中有一些问题:

1、P18 有的软件企业不但免费,而且连源代码也一并奉送,但是要求获得源代码的开发人员遵守某种约定,我不明白对于这种软件企业它们怎样盈利?

2、P40页提到随机数测试无法产生可重复、一致的结果。能否进行如下改进,把随机产生的输入记录到一个文件中,然后程序运行,当出现错误时,程序报告是哪一个输入,这样就可以认为地输入出错的数据进行调试,这样就可以使错误重现了。

3、P54页提到了回归测试,那么怎样才能避免出现修改后的程序无法通过原有的上一个版本程序的测试点这样的问题?

4、P78页提到了注释的作用,我还是不是很清楚究竟在哪些情况下需要用注释?注释和面向对象编程中的规格有区别吗?

5、P79,关于goto语句,几乎所有的编程语言老师都说不要使用,那么为什么本书在强调规范性的同时要允许这种容易使程序逻辑发生混乱的写法?

软件一词在是1958 年Turkey在论文“The Teaching of Concrete Mathematics”中首次提出的。

软件工程一词是 Margaret Hamilton 在NASA设计阿波罗号电脑上的软件时首次提出的。

时间: 2024-08-09 06:34:06

《构建之法》阅读疑问的相关文章

构建之法阅读笔记三—结对编程

构建之法阅读笔记三——结对编程 何谓结对编程,结对编程就是程序员肩并肩,平等的,互补的进行开发工作,他们使用同一台电脑,编写同样的程序,一起分析,一起设计,一块交流想法. 然而我以前却并不是这样做的,我以前喜欢在没人打扰的环境下写代码,我觉得有人在我身边看着,会影响我的思路,还有我个人自尊心比较强,不太喜欢被人指指点点,所以每次都是,我写完代码之后,自己先找自己的bug,每当自己实在找不到之后,才会请教大神,但是有时候可能由于自己的能力不足,往往一个很简单的问题,我自己发现就会花费很久的时间,让

构建之法阅读笔记四—团队开发

构建之法阅读笔记—团队开发 软件开发过程中有团队和非团队之分.其区别就在于目标利益的不同,团队中每个人的目标是一致的.共同的,会根据实际情况给每个人分配不同的任务,不会计较个人利益的得失.非团队每个人的目标都是不同的,大家都为自己的利益而奋斗. 在阅读了构建之法后,我了解到团队开发有以下的特点:1.团队开发有一致的集体目标,团队要完成这个目标.一个团队成员不一定要同时工作.2.团队成员有各自的分工,互相依赖合作,共同完成任务.还有完成一个项目开发的工作流有业务建模,需求,分析和设计,实现,测试,

构建之法阅读笔记6--敏捷开发2

构建之法阅读笔记—敏捷开发2 敏捷开发并不是一门技术,它是一种开发方法,也就是一种软件开发的流程,它会指导我们用规定的环节去一步一步完成项目的开发:而这种开发方式的主要驱动核心是人:它采用的是迭代式开发:敏捷开发并不是瀑布开发模型,它是以文档为驱动的,为什么呢?因为在瀑布的整个开发过程中,要写大量的文档,把需求文档写出来后,开发人员都是根据文档进行开发的,一切以文档为依据:而敏捷开发它只写有必要的文档,或尽量少写文档,敏捷开发注重的是人与人之间,面对面的交流,所以它强调以人为核心.而所谓的迭代开

构建之法阅读计划

1.本学期我打算阅读关于软件工程的三本书. 在第1-4周先把构建之法阅读完成 5-9周把人月神话阅读完成 10-16周重新寻找新的书刊阅读 2.速览构建之法中的问题 (1).在之后的团体项目中,我们几人如何分配任务,分配任务之后,如果有一些比如我编程能力缺乏,如何才能真正使这个团队最后的软件质量得到保证 (2).还有如果因为分配之后你学习到只有一部分的知识,另一部分如何学习熟练 (3).我们学习的知识只是基础,到了一些企业中,所用的软件不同,会不会白学. (4).在学校的时候用什么样的团队模式最

03构建之法阅读笔记之一

构建之法阅读笔记03 遇到问题总是想弄清楚所有细节.所有依赖关系之后再动手,想的太多,没法前进,分析的就会出现错乱,或者直接动手,慢慢发现偏离的一开始的轨道,忘记了目标,这样就会产生"分析麻痹"和"不分主次,想解决所有问题",以后遇到问题应该时刻记住自己的目标,在解决问题的时候不断提醒自己,应该如何思考.越早对自己有一个清晰的定位,对自己越好,很多人只是把软件工程师当成一个工作,当成一个能挣钱养家的营生,而我想把它的当成自己投身的事业,把软件项目相关的目标作为长期的

《构建之法阅读笔记02》

这次主要对<构建之法>的第四章“两人合作”作一次阅读笔记. 首先是代码规范问题. 我过去对于代码规范问题并没有做到注意.在编程中,许多变量和函数的命名都非常的简单而没有实际的意义.而且编程时不注意对齐缩进.很多时候也不加注释,导致对这些简单的变量名称不熟悉. 这样做会使得很多人读代码费劲,甚至是自己都要花时间再次阅读懂自己的代码.而且很多没必要的注释也会使得注释失去意义.当自己再次在原基础上编程时,可能要重新编程等问题. 因此,通过阅读“代码规范”,我找到一些解决方法.代码的风格要简明.易读.

构建之法阅读笔记05

2017.5.20 今天阅读的是<构建之法>第8章需求分析的阅读笔记,我们如果要开始做一个软件,最先要进行的就是需求分析,我们应该充分的了解我们这个软件是否具有前景,我们为用户提供的服务是不是用户所需要的,这一章详细的叙述了如何进行需求分析. 首先是获取和引导需求,我们应该找到软件的利益相关者,了解挖掘他们对软件的需求,引导他们表达出真实的需求.然后分析和定义需求,对各个方面的需求进行规整,定义需求内涵,从各个角度将需求量化,然后估计实现这些需求所需要的时间和资源,确定各个需求的优先级.紧接着

构建之法阅读笔记三

今天阅读了构建之法第四章,对我最深的感触就是代码规范,对于一个软件工程师来说,编程是一项基本技能,程序编的好一半来自于代码的规范:就算你学的算法再好,编程能力再强,代码不规范也没有任何意义.当阅读者拿到你的代码时一头雾水,完全看不懂,这样的代码对于后期的维护和bug的寻找难上加难,或者是对于后来的初学者来说,也是去了教育意义.所以在我们日常的编程过程中要养成代码规范的习惯,习而久之,这样的习惯会一直伴随我们编程整个过程. 还有就是代码复审,我一开始也想不明白,代码为什么要复审呢,写完代码得到执行

“构建之法”阅读体会 and 软件工程课程总结

  经过一个学期的学习,我从软件工程这门课中收获很多,断断续续地阅读了邹欣老师的<构建之法>并把在其中学到的一些软件工程的基本方法应用到实践中,不敢说精通其精髓,但确实是体会到了现代软件工程开发方法的高效.我也是从一个完全不注重设计.遇到问题上来就码代码的菜鸟程序员提升了一个层次.还学习了github,starUML等有用的工具.真是收获多多. <构建之法>这本书从个人技术.两人合作.团队.敏捷开发.需求分析.软件设计实现.软件测试等方面面面俱到地介绍了现代软件工程开发的整套流程.

构建之法阅读笔记(4)

这周通过阅读构建之法,知道了MSF的原则,团队模型,开发模式. 基本原则: 1.推动信息共享与沟通 2.为共同的远景二=而工作 3.充分授权和信任 4.各司其职,对项目共同负责 5.交付增量的价值 6.保持敏捷,预期和适应变化 7.投资质量 8.学习所有经验 9.与顾客合作 MSF基于一组工作模型,这组模型是由微软公司及其合作伙伴,在与客户成功开发分布式计算和客户服务器应用程序的经验得来的. 简而言之,一个项目要达到的目标很多,MSF团队模型让不同的角色实现这些目标,在一个项目结束时,每个角色都