阅读思考作业2

第四章

1、问题一:在原文第804.5.3中,提到“在结对编程中,任何一段代码都至少被两双眼睛看过,被两个脑袋思考过。代码被不断的复审,这样可以避免牛仔式编程”不明白“牛仔式编程”的含义是什么。查阅相关信息后:

牛仔式编程:不符合正常编程逻辑和正常编程规范,也可以叫做非常规编程

优点:可以在特定的时候,减少代码,提高效率

缺点:可读性差,只适用于经验丰富者和基础扎实者(牛人写的代码我们看不懂一般就是这种情况了)

2、问题二:原文814.5.4中提到领航员也可以设计TDD中的测试实例。TDD是什么?

TDD测试驱动开发,英文全称Test-Driven Development,简称TDD,是一种不同于传统软件开发流程的新型的开发方法。它要求在编写某个功能的代码之前先编写测试代码,然后只编写使测试通过的功能代码,通过测试来推动整个开发的进行。这有助于编写简洁可用和高质量的代码,并加速开发过程。

测试驱动开发的基本过程如下:

快速新增一个测试

运行所有的测试(有时候只需要运行一个或一部分),发现新增的测试不能通过

做一些小小的改动,尽快地让测试程序可运行,为此可以在程序中使用一些不合情理的方法

运行所有的测试,并且全部通过

重构代码,以消除重复设计,优化设计结构

简单来说,就是不可运行/可运行/重构--这正是测试驱动开发的口号。

第十七章

1、问题一:对原文405页“小强地狱”(Bug Hell)不理解。

 

小强地狱”(Bug Hell)——优先级和缺陷修改的平衡 

 定义一个百分比,或者一个阀值,如果你的Bug超过这个数量,那么,你将被推入小强地狱,在这个地狱里,你能够做的事情,就是改Bug,而不是制作新功能。等你把这个值降下来了,到达阀值以下,你才可以继续正常的工作。

这种对于百分比或是阀值是怎么来确定的,有没有与之相关的规定,具体是怎么操作的呢?

posted on 2018-03-28 22:32  杰克007  阅读(174)  评论(1编辑  收藏  举报