软件技术基础第二次作业
| 这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zjlg/rjjc20 |
| ---- | ---- | ---- |
| 这个作业的目标 | <通读构建之法,提出三个问题> |
| 姓名-学号 | <朱俊杰>-<2018330301139> |
第一个问题
如何验证正确性?那就要用断言。断言和错误处理是什么关系?
-- 引用自《构建之法》
有这个问题 什么是错误处理?什么是断言?
我的想法:编写代码时,我们总是会做出一些假设,断言就是用于在代码中捕捉这些假设。程序员相信在程序中的某个特定点该表达式值为真,可以在任何时候启用和禁用断言验证,因此可以在测试时启用断言而在部署时禁用断言。断言的格式是:assert Expression1 当你觉得某件事必然发生时可以用断言,程序进行到这里的时候必然判断为真,不会出现错误。只有当某事时可能发生的时候才会写代码来处理可能发生的错误。
第二个问题
如何结对编程,领航员和驾驶员要不断轮换角色,并且两者只有水平上的差距,没有级别上的差距
-- 引用自 p81 《构建之法》
有这个问题: 既然结对编程的两人水平有差距,程序的质量取决于程序员中各方面水平较高的那一位,那么在相处时如何保证工作的公平性呢?
我的想法:我预想到几种情形(1、高层次的人嫌弃自己的搭档,万事亲历亲为,层次低的人想要参与其中,却因水平低而不被采取意见 2、高层次的人打压搭档,仗着自己的高水平,始终保持着“领航员”的角色,将编程的主要工作施加给搭档 3、出现“乘客”,低水平的人将自己能力不足作为借口,将大多数的工作推给高水平者)。 如果出现了上述情况,那么结对编程就在一定意义上变成了一个人的工作,这样不仅降低了工作效率,还会使双方在小细节上发生争执。那么处理两人之间的关系是十分重要的,我觉得这件事必须在工作的一开始就处理好,不然只会在错误的道路上越走越远。其实,结对编程就像是合租,从一个人独自生活到和一个室友共同生活,双方在一开始不得不花时间处理双方的关系以及找到能使双方都能高校工作的方法,如果双方在一开始就趣味相投,那么工作会很愉快。但是若初期产生了分歧,双方或其中一方必须有所妥协和让步,缔结一个双方都能认可的规则。对于我上述的三种三种假设,我认为必须在开始时安排好各自的工作职责和范围,将这种由水平差距产生的地位、面子问题由一个规则去约束,若双方能进行到程序完成,那么就算成功的了。
第三个问题
有这个问题:在刚开始编程的阶段是不是需要将检测的代码加入到每一个函数中?
我的想法:代码注入可以帮助我们在编程完成后精准测量程序的各个效能,但是程序的运行时间会大大加强,还会产生很大的数据文件,增加数据分析的时间。但是如果不在一开头加入检测代码,就会找不到程序出错的原因。先用抽样的方法找效能的瓶颈,然后对特定的模块用代码注入的方法进行详细分析.

浙公网安备 33010602011771号