读书笔记 Week5 2018-4-5
再结束了第一个个人任务以后,我也算有点时间翻开一本大部头来通读一下。在看了一些相关的评论说:“该书可以从任意章节读起”后,刚刚在180M测试文件的个人任务中吃了亏的我,决定从他的第5部分,代码改善看起,大致将感想记录如下。
首先是张图片,的确很符合一贯的认识,没有一个软件在每一方面中做到尽善尽美。我们能够做的是,根据每个软件的不同需求,在功能上做出不同的侧重。对于外部的交互部分,健壮性至关重要,而对于最核心的计算,效率则是需要优先考虑的。
其次是质量保证,文中提出了多种缺陷检测方式,从简单的单元测试到正式的代码复查,列出了一个表格。其后详细讨论了缺陷的成本问题,包括找出与修正所花费的成本,结论告诉我们这个会占据开发流程中相当一部分的精力。后续又紧接着提出了一个问题,就是什么时候进行质量保证工作。众所周知,如果在最后阶段发现致命问题,需要对整个代码大改,这是无法接受的。所以书中说到,要在早期阶段就开始强调质量保证,一步一步稳扎稳打,在开工之时就添加到计划中。
第21章 协同构建
可以说这一章刚好在讲述我们这周要做的事情,也就是结对编程。书中先提出,这一行为目的是为了改善软件的质量,用很多公司的例子与调查报告告诉我们,在合理的质量检测能够既减少缺陷也缩短开发周期。
其次对于结对编程的好处做出了充分的阐述:
可见,结对编程并不是一个玩乐的方式,而是切实有效的。
协同除了两人的结对编程,还有一个团体的协同,具体表现为正式检查,每个参与者以明确的角色去对代码仅检查。数据现实,这样的方式检出的缺陷仅少于原型和大规模 beta 测试,推荐的人数一般是6人,可以说是一种十分经济适用的方法了。
而且该方法由于有标准的核对表和标准的角色,是一个系统化过程,也可自我优化。采用了正式的反馈循环来改进核对表,无论开始时状况如何,都能够不断优化,最终起到很好的效果。
读书笔记 Week5 2018-4-5的更多相关文章
- 读书笔记-《Maven实战》-关于Maven依赖传递的思考 2018/4/26
上次读书笔记中,提到了依赖传递.看着依赖传递表,一直在思考为什么会是这样. 先看传递表: compile test provided runtime compile test provided run ...
- 【2018.08.13 C与C++基础】C++语言的设计与演化读书笔记
先占坑 老实说看这本书的时候,有很多地方都很迷糊,但却说不清楚问题到底在哪里,只能和Effective C++联系起来,更深层次的东西就想不到了. 链接: https://blog.csdn.net/ ...
- TJI读书笔记17-字符串
TJI读书笔记17-字符串 不可变的String 重载”+”和StringBuilder toString()方法的一个坑 String上的操作 格式化输出 Formatter类 字符串操作可能是计算 ...
- 读书笔记--Android Gradle权威指南(上)
本篇文章已授权微信公众号 dasu_Android(大苏)独家发布 最近看了一本书<Android Gradle 权威指南>,对于 Gradle 理解又更深了,但不想过段时间就又忘光了,所 ...
- 《玩转Django2.0》读书笔记-编写URL规则
<玩转Django2.0>读书笔记-编写URL规则 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. URL(Uniform Resource Locator,统一资源定位 ...
- Javascript DOM 编程艺术(第二版)读书笔记——基本语法
Javascript DOM 编程艺术(第二版),英Jeremy Keith.加Jeffrey Sambells著,杨涛.王建桥等译,人民邮电出版社. 学到这的时候,我发现一个问题:学习过程中,相当一 ...
- 读书笔记汇总 - SQL必知必会(第4版)
本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...
- 读书笔记--SQL必知必会18--视图
读书笔记--SQL必知必会18--视图 18.1 视图 视图是虚拟的表,只包含使用时动态检索数据的查询. 也就是说作为视图,它不包含任何列和数据,包含的是一个查询. 18.1.1 为什么使用视图 重用 ...
- 《C#本质论》读书笔记(18)多线程处理
.NET Framework 4.0 看(本质论第3版) .NET Framework 4.5 看(本质论第4版) .NET 4.0为多线程引入了两组新API:TPL(Task Parallel Li ...
随机推荐
- 转一篇pgpool配置
转一篇pgpool配置 http://dz.sdut.edu.cn/blog/subaochen/2013/08/postgresql-9-1的failover配置及其管理/ 环境介绍 在两台虚拟机上 ...
- [Scala]Scala学习笔记一 基础
1. 变量 val定义的值实际上是一个常亮,无法改变其内容 scala> val num = 0 num: Int = 0 scala> num = 2 <console>:1 ...
- HDU - 6333:Harvest of Apples (组合数前缀和&莫队)
There are n n apples on a tree, numbered from 1 1 to n n . Count the number of ways to pick at most ...
- HihoCoder 1158 : 质数相关 (最大独立集)
质数相关 时间限制:2000ms 单点时限:1000ms 内存限制:256MB 描述 两个数a和 b (a<b)被称为质数相关,是指a × p = b,这里p是一个质数.一个集合S被称为质数相关 ...
- MySql必知必会实战练习(三)数据过滤
在之前的博客MySql必知必会实战练习(一)表创建和数据添加中完成了各表的创建和数据添加,MySql必知必会实战练习(二)数据检索中介绍了所有的数据检索操作,下面对数据过滤操作进行总结. 1. whe ...
- NIO:异步非阻塞I/O,AIO,BIO
Neety的基础使用及说明 https://www.cnblogs.com/rrong/p/9712847.html BIO(缺乏弹性伸缩能力,并发量小,容易出现内存溢出,出现宕机 每一个客户端对应一 ...
- IQ/OQ/DQ/PQ
Installation Qualification (IQ) 安装验证,安装时在用户处进行.它提供文件证明用户安装环境所有的规格及参数完全符合制造商的描述和安全 要求. Operation Qual ...
- fn project 运行时配置选项
Env Variables Description Default values DB_URL The database URL to use in URL format. SeeDatabases ...
- gogs docker 安装
1. gogs 镜像 docker pull gogs/gogs 2. mysql docker mysql 3. 本地数据卷配置 mkdir gogs & ...
- 如何开启 FastAdmin 的顶部导航功能?
如何开启 FastAdmin 的顶部导航功能? FastAdmin 默认的是侧边导航,但是如果功能多的时候就有会眼花缭乱,使用顶部导航就会清晰很多. 好消息现在已经支持顶部导航,可以在demo.fas ...