对《软件工程》第四章的理解

两人合作写软件首先要代码规范,进一步阐述就是要代码风格规范和代码设计规范。

代码风格规范对于结对来说首先要统一开发工具,然后要注意源文件的格式、排版、换行、适当的注释、命名规范。即要简明,易读,无二义性。

代码设计规范:对于函数来说。即用简单的构造函数,最好是默认构造函数,这是因为简单的构造函数增强易用性;对于错误处理来说。包括(逻辑和编程错误,设置错误,被破坏的数据...),然后要对程序增加一些相应的错误处理;对于异常处理来说。不是百分之百确定的情况,不要吞掉异常。如果理解该异常在具体环境当中产生的原因,建议捕获特定类型的异常。要在捕获并重新抛出异常时使用空的throw语句,这是保持调用栈的最好方法。

2个程序员、同一套设备、一起工作、一起分析、设计、写测试用例、编码、单元测试、写文档,平等互补地工作。一人充当“执行”角色,只负责编程。

最后是两人合作的不同阶段和技巧。以鄙人之见,结对双方相关性最强、区别性最大的因素是他们两人的效率差距。很多东西会影响程序员的效率,包括他们先前的:背景、个性、技能、经验、文化背景、领域知识、语言知识等。如果我们把这些综合起来,我们就能得出“效率”。考量“效率”可能还有另外一种方式,看他们产出的潜在强度,即完成编程的速度与质量。

时间: 2024-10-23 01:02:43

对《软件工程》第四章的理解的相关文章

现代软件工程 第四章 练习与讨论

4.7.1  结对项目的案例和论文 在现代软件工程教学的过程中,同学们已经总结了不少切身体会.例如: 总结1[i]:那是project到了比较关键的创造阶段,整整一天,我们俩椅子靠椅子的坐在电脑前,一边讨论一般coding,那次才真正的体会到结对真的能够带来效率.一整天的coding是容易走神的事,还好有pair在旁边指导,总是不断在我敲某某变量之前提前告诉我成员变量的名字,数据修改时帮忙检查是否有漏掉的,变量和函数定义的时候一起为其取名字,感觉有点眼花了,就换了个角色,我也开始对他“指指点点”

软件工程—第四章

第四章—需求工程 软件需求是决定软件开发是否成功的一个关键性因素,可以划分为业务需求.用户需求.系统需求.功能需求和非功能需求等类型.业务需求包含:业务.客户.特性.价值和优先级.用户需求是从用户的角度描述系统功能需求和非功能需求.功能需求描述系统应该提供的功能和服务.非功能需求还可以分为很多类型.系统需求则详细的描述系统应该做什么. 需求工程的过程包括需求获取.分析.规格说明.验证和管理等.首先,需求获取的是对客户需求的普遍理解,然后对收集到的需求进行提炼.分析和认真审查即需求分析,需求规格说

[深入理解Android卷一全文-第四章]深入理解zygote

由于<深入理解Android 卷一>和<深入理解Android卷二>不再出版,而知识的传播不应该由于纸质媒介的问题而中断,所以我将在CSDN博客中全文转发这两本书的所有内容. 第4章  深入理解Zygote 本章主要内容 ·  深入分析zygote,并介绍system_server进程的初始化工作. 本章涉及的源代码文件名称及位置 以下是我们本章分析的源代码文件名称及其位置. ·  App_main.cpp framework/base/cmds/app_process/App_m

[深入理解Android卷二 全文-第四章]深入理解PackageManagerService

由于<深入理解Android 卷一>和<深入理解Android卷二>不再出版,而知识的传播不应该因为纸质媒介的问题而中断,所以我将在CSDN博客中全文转发这两本书的全部内容 第4章  深入理解PackageManagerService 本章主要内容: 详细分析PackageManagerService 本章所涉及的源代码文件名及位置: ·  SystemServer.java frameworks/base/services/java/com/android/server/Syst

《深入理解Android 卷III》第四章 深入理解WindowManagerService

<深入理解Android 卷III>即将公布,作者是张大伟.此书填补了深入理解Android Framework卷中的一个主要空白.即Android Framework中和UI相关的部分.在一个特别讲究颜值的时代,本书分析了Android 4.2中WindowManagerService.ViewRoot.Input系统.StatusBar.Wallpaper等重要"颜值绘制/处理"模块 第4章  深入理解WindowManagerService(节选) 本章主要内容: ·

0403对《软件工程》第四章的理解

一.代码规范    1.代码风格规范:简明易读无二义,包括有意义的命名及增加注释    2.代码设计规范        (1)函数只做一件事,并且要做好        (2)错误处理.验证参数的正确性:使用断言:使用public,protected,private说明成员,非必要不使用虚函数和类型继承    3.代码复审 二.结对编程好处 1.在开发层次上能够提供更好的设计质量和代码质量,两人合作解决问题的能力更强: 2.对开发人员自身来说,结对工作能带来更多的信心,高质量的产出能带来更高的满足

浅谈对《构建之法——现代软件工程》第一章的理解

---恢复内容开始--- 一.精读第一章后对专业术语的整理 <构建之法——现代软件工程>一书第一章向我们主要介绍了计算机科学的领域.软件工程与计算机科学的关系.软件的特性以及软件工程的定义与组成部分. 1.通过对第一章的学习,我们了解到了软件的 几种分类: 系统软件:操作系统.设备驱动程序.工具软件等 应用软件:办公软件.通信软件.游戏视频软件等 恶意软件:软件病毒等 以及软件的几种特殊性:1.负责性:2.不可见性:3.易变性:4.服从性:5.非连续性: 2.软件工程与计算机科学的关系 首先,

现代软件工程 第四章 【结对编程】练习与讨论

4.7.2  性格对合作的影响 人和人不一样,在和别人合作的时候,要注意各人表达观点的方式和思考的方式不尽相同.请看网上关于MBTI的文章,测试并分享各自的MBTI类型,讨论不同性格类型对合作有多大的影响, 在合作的各个阶段应该如何应对. ISTJ 安静.严肃,通过全面性和可靠性获得成功.实际,有责任感.决定有逻辑性,并一步步地朝着目标前进,不易分心.喜欢将工作.家庭和生活都安排得井井有条.重视传统和忠诚. ISFJ 安静.友好.有责任感和良知.坚定地致力于完成他们的义务.全面.勤勉.精确,忠诚

现代软件工程第四章

1.结对项目的案例和论文学术界.工业界对结对编程已经有不少研究,请阅读至少两篇相关论文或论文,结合自己的切身体会总结一下.(1)提高效率 结对编程的形式使得代码处于不断地审查过程,每一段代码都由一个人编写,另一个人检查,最大程度上减少了出现bug的可能:两人互相交流,商讨实现方式,遇到问题时,能够做到互补.(2)互相学习 结对编程也是一个互相学习的过程.在结对编程过程中,两人会不断对实现方法.代码风格或命名方法等进行讨论,两个人的思路能够进行互补,在编写过程中能够学到对方解决问题的思路和方法,对