《构建之法》第二、三单元

第二章 个人技术和流程



2.1单元测试

1、创建断垣测试函数的主要步骤:

(1)设置数据(一个假想的正确的E-mail地址)

(2)使用被测试类型的功能(用E-mail地址来创建一个User类的实体)

(3)比较实际结果和预期结果(Assert.IsTure(target!=null);)

2、好的单元测试的标准:

单元测试应该是在最基本的功能/参数上验证程序的正确性。

单元测试必须由最熟悉代码的人(程序的作者)来写。

单元测试过后,机器的状态保持不变。

单元测试要快(一个测试的运行时间是几秒钟,而不是几分钟)。

单元测试应该产生可重复、一致的结果。

独立性——单元测试的运行/通过/失败不依赖于别的测试,可以人为构造数据,以保持单元测试的独立性。

单元测试应该覆盖所有代码路径。

单元测试应该集成到自动测试的框架中。

单元测试必须和产品代码一起保存和维护。

3、在单元测试的基础上,我们就能够建立关于这一模块的回归测试(Regression Test)。

2.2效能分析工具

1、两种分析方法:(1)抽样(2)代码注入

2.3个人开发流程

2.4实践

第三章 软件工程师的成长



3.1个人能力的衡量与发展

1、初级软件工程师的成长:

(1)积累软件开发相关的知识,提升技术技能。

(2)积累问题领域的知识和经验

(3)对通用的软件设计思想和软件工程思想的理解。

(4)提升职业技能。

(5)实际结果。

3.2软件工程师的职业发展

(1)职业发展——考级之路

(2)职业成长——Steve McConnell版本

(3)职业成长——大公司版本

(4)职业成长——自我评估

时间: 2024-08-01 22:52:55

《构建之法》第二、三单元的相关文章

构建之法--第二篇

构建之法--第二章 在这一周中,我计划学习了<构建之法>的第二章,我认为从第二章开始,才算真正进入到了这本书的主题.这一章讲到的是个人技术和流程.首先,个人技术是衡量你是否能成为一名合格的软件工程师.而想要组建一个优秀的软件开发团队,就必须要有一名软件工程师.流程则是团队来管理开发活动的经过. 个人技术:其中就包括了三点,即单元测试.回归测试.效能分析. 单元测试:我们为什么需要做单元测试呢?这是为了让自己负责的模块功能定义尽量明确,模块内部的改变不会影响其他模块,而且模块的质量能得到稳定的.

构建之法第三章读书心得

在构建之法第三章中,我们主要学习了个人能力的衡量与发展. 初级软件工程师有以下几个成长阶段:1.积累软件开发相关的知识,提升技术技能. 2.积累问题领域的知识和经验. 3.对通用的软件设计思想和软件工程思想的理解 4.提升职业技能 5.实际成果 软件开发的工作量和质量你的衡量标准:1.项目.任务有多大? 2.花了多少时间? 3.质量如何?交付的代码中有多少缺陷?

构建之法-第三周

构建之法第三章-软件工程师的成长 本章主要的理论和知识点是评价软件工程师水平的主要方法.技能的反面以及TSP对个人的要求. 首先,不同的数据能够从不同方面一个展示软件工程师的技术和能力,例如,通过完成时间平均值的比较,两位工程师或许能决出完成效率的高下,但通过比较方差则又能体现出的两位工程师的工作稳定性. 作为一个初级软件工程师,我们可以关注的成长有一下几个方面: 1.积累软件开发相关的知识,提升技术技能: 2.积累问题领域的知识和经验: 3.对通用的软件设计思想和软件工程思想的理解: 4.提升

我的第二次(四则运算、构建之法、三个软件)

一.代码的coding地址:https://coding.net/u/xuchunxiao119/p/homework_count/git#user-content-homeworkcount 二.<构建之法>读后问题以及感言: 1. 对于7.3MSF团队模型,7.2.6保持敏捷,预期和适应变化,中的"我们是预期变化,不是期望变化"我们如何让自己的软件处于不断的变化之中?换言之,我们如果推出了一款软件之后,如何给软件预留足够的更新空间,这些空间的具体位置我们如何得知呢? 2

读构建之法第二天

刚刚读了构建之法第一章的内容,主要讲述了计算机科学领域,软件工程与计算机科学的关系,软件的特性以及软件工程的定义和组成部分这四方面的内容.下面我将分为四部分 来记录自己的收获. 第一部分: 1. 软件 = 程序 + 软件工程        软件工程的核心部分是构建管理.源代码管理.软件设计.软件测试.项目管理.广义上软件工程还包括用户体验,用户设计界面等, 所以一个拓展的推论是:        软件企业 = 软件  + 商业模式. 2.  软件开发有不同的阶段:(1)玩具阶段  (2)业余爱好阶

谈谈我对构建之法这三章的理解

前言 在第一次作业中我便提过,刚进入大学时,我对未来充满了憧憬,我的人生有着很好的规划,也像我所规划的那样,我的大一过着学习,技术,学生工作有条不紊运行的状态,可是后来为了学生工作放弃了工作室,后来又因为一些原因失去了学生工作,我的人生仿佛失去了重心,浑浑噩噩度过了大二上学期,到了这个学期,上了软件工程导论这门课,我才意识到自己与别人的差距有多大,我下定决心从这学期开始恶补,一定要把差距拉小,直至没有差距.调整好了心态,我翻开了构建之法. 章节一.概论 1."软件=程序+软件工程"这是

阅读《构建之法(第三版)》提出的问题

通过两周的时间,我大致看完了<构建之法>,对此提出以下几点问题: 1.在第二章个人开发流程中对比了大学生和工程师分别完成项目的各个阶段所花时间的占比,得出现象工程师在“需求分析”和“测试”这两方面花的时间明显比大学生高,而在具体编码的时间却更少,从而得出结论:从学生到职业程序员,并不是更加没完没了地写程序——花在写代码的时间反而少了许多. 提出问题:我认为从学生到职业程序员,随着编程能力的提升,职业程序员在写具体代码中能更加轻松的实现,但是大学生由于各项能力的不足,花的时间明显更多.我认为这样

一组阶段小记之读构建之法(三)

这周是本学期中的第10周,我们可以复习期中学习的内容,有些同学或多或少结束了几门选修课程,完成了体育测试 ,大家渐渐应该开始有更多的时间学习构建之法: 前几周我们对于构建之法这本书有了粗略的了解,比如:日后编程的工作,大都是多人合作写软件,那么有好的代码风格相当重要,这本书详细介绍了什么是好的代码风格,这让我有  了改进的方向日后工作,不再是自己写代码玩,而是要最大程度的满足顾客的需求.这本书详细讲述了如何获得顾客真正的需求,在做软件的同时要不断检验是否偏离了需求等等:书上的内容开始渐渐有了深度

构建之法 第三次心得

构建之法 第四.五章心得 学习了第四第五章之后,我了解到了两人合作的注意要点,还有团队和开发流程.软件都是在相互合作中完成的,合作的最小单位是两个人.每个人的标准都不一样,对于什么是好的代码规范未必认同,所以我们需要给出一个基准线,即什么是好的代码规范和设计规范. 代码规范可以分成两个部分,一是代表风格规范,主要是文字上的规定,看似是表面文章,实际上非常重要.二是代码设计规范,牵涉到程序设计.模块之间的关系.设计模式等方方面面的通用原则.代码风格的原则是:简明.易读.无二义性.这里可以从几个方面

构建之法——第二篇

学到现在,那么对于我们而言真正的软件工程包括什么呢? 根据构建之法中的描述,软件工程包括了开发,运营,维护软件的过程中的很多技术,做法,习惯和思想.软件工程把这些相关的技术和过程统一到一个体系中,叫"软件开发流程",软件开发流程的目的是为了提高软件开发,运营,维护的效率,以及提升用户满意度,软件的可靠性和可维护性. 由构建之法中写到软件工程中的软件开发流程,那么软件开发流程不光指团队的流程,还包括个人开发流程,因为软件团队是由个人组成的.在团队的大流程中,是每一个具体的个人在做开发,测