C#版-代码不朽-编写可维护软件的10大要则
- ISBN:9787121298981
- 装帧:暂无
- 册数:暂无
- 重量:暂无
- 开本:32开
- 页数:168
- 出版时间:2016-10-01
- 条形码:9787121298981 ; 978-7-121-29898-1
本书特色
人类到目前为止已经能够度量越来越多的东西,例如时间、长度等,但是在软件开发领域,我们依然很难去评估一个软件系统的质量,以及维护它的难易程度。可维护性越差,意味着开发成本越高、开发速度越慢,以及由于改动带来的缺陷也越多。在现实中,我们经常会面对代码混乱、模块紧耦合的遗留系统,持续攀升的维护难度会*终导致系统不可维护,从而推倒重来。来自软件改进组织(Software Improvement Group)的咨询师们,从大量实践项目中提取出了编写可维护软件的10个*佳原则,不仅可以用来测量软件的质量和可维护性,还可以指导我们如何编写出高质量的代码。本书会一一介绍这些原则,并且提供了翔实的代码示例,能够让读者一步步了解到如何对代码进行重构,从而达到满足原则、提高可维护性。本书中的代码示例都采用Java语言编写,但是背后的原则也适用于使用其他语言的开发人员。希望各位读者在阅读完本书后,能够了解和掌握如何对软件系统的质量进行评估和测量,以及如何在实践中遵循书中的原则,编写出高质量、简洁的代码,开发出松耦合、高可维护性的系统。
内容简介
你有没有在修改其他人代码时感到过沮丧?如今,难以维护的代码已经成为了软件开发中一个很的大问题,导致成本高昂的延期和大量缺陷。本书从实践出发,提供了10条易于实现的原则,可以帮助你开发出可维护且灵活的软件,并且这些原则来自对成百上千个现实系统的分析。
* 编写短小的代码单元:限制方法和构造函数的长度
* 编写简单的代码单元:限制每个方法中分支点的数量
* 编写代码一次,而不是到处复制含有缺陷的代码
* 通过将接口参数提取到对象中,保持短小的代码单元接口
* 分离关注点,避免产生体积庞大的类
* 保持架构组件松耦合
* 平衡顶层组件之间的数量和大小
* 保证代码库尽可能小
* 对代码库进行自动化测试
* 编写整洁的代码,避免会反映更深层问题的“代码坏味道”
目录
前言 ........................................................................................... xiii
第 1 章 简介 .................................................................................1
1.1 什么是可维护性? ..........................................................................................1
1.2 为什么可维护性很重要? ...............................................................................2
1.3 本书的三个基本理论 ......................................................................................4
1.4 对可维护性的误解 ..........................................................................................5
1.5 评价可维护性 ..................................................................................................6
1.6 可维护性原则的概述 ......................................................................................8
第 2 章 编写短小的代码单元 ........................................................11
2.1 动机 ...............................................................................................................14
2.2 如何使用本原则 ............................................................................................15
2.3 常见的反对意见 ............................................................................................22
2.4 参考 ...............................................................................................................25关于作者 ......................................................................................xi
前言 ........................................................................................... xiii
第 1 章 简介 .................................................................................1
1.1 什么是可维护性? ..........................................................................................1
1.2 为什么可维护性很重要? ...............................................................................2
1.3 本书的三个基本理论 ......................................................................................4
1.4 对可维护性的误解 ..........................................................................................5
1.5 评价可维护性 ..................................................................................................6
1.6 可维护性原则的概述 ......................................................................................8
第 2 章 编写短小的代码单元 ........................................................11
2.1 动机 ...............................................................................................................14
2.2 如何使用本原则 ............................................................................................15
2.3 常见的反对意见 ............................................................................................22
2.4 参考 ...............................................................................................................25
第 3 章 编写简单的代码单元 ........................................................27
3.1 动机 ...............................................................................................................33
3.2 如何使用本原则 ............................................................................................34
3.3 常见的反对意见 ............................................................................................39
3.4 参考 ...............................................................................................................40
第 4 章 不写重复代码 ..................................................................43
4.1 动机 ...............................................................................................................47
4.2 如何使用本原则 ............................................................................................48
4.3 常见的反对意见 ............................................................................................53
4.4 参考 ...............................................................................................................55
第 5 章 保持代码单元的接口简单 .................................................57
5.1 动机 ...............................................................................................................59
5.2 如何使用本原则 ............................................................................................60
5.3 常见的反对意见 ............................................................................................64
5.4 参考 ...............................................................................................................65
第 6 章 分离模块之间的关注点 ....................................................67
6.1 动机 ................................................................................................................72
6.2 如何使用本原则 ............................................................................................73
6.3 常见的反对意见 ............................................................................................78
第 7 章 架构组件松耦合 ..............................................................81
7.1 动机 ...............................................................................................................82
7.2 如何使用本原则 ............................................................................................85
7.3 常见的反对意见 ............................................................................................87
7.4 参考 ...............................................................................................................89
第 8 章 保持架构组件之间的平衡 .................................................91
8.1 动机 ...............................................................................................................92
8.2 如何使用本原则 ............................................................................................93
8.3 常见的反对意见 ............................................................................................95
8.4 参考 ...............................................................................................................95
第 9 章 保持小规模代码库 ...........................................................99
9.1 动机 ...............................................................................................................99
9.2 如何使用本原则 ..........................................................................................102
9.3 常见的反对意见 ..........................................................................................104
第 10 章 自动化开发部署和测试 ................................................107
10.1 动机 ...........................................................................................................109
10.2 如何使用本原则 ........................................................................................110
10.3 常见的反对意见 ........................................................................................119
10.4 参考 ...........................................................................................................120
第 11 章 编写简洁的代码 ...........................................................121
11.1 不留痕迹 ...................................................................................................121
11.2 如何使用本原则 ........................................................................................122
11.3 常见的反对意见 ........................................................................................128
第 12 章 后续事宜 .....................................................................131
12.1 将原则变成实践 ........................................................................................131
12.2 低层级(代码单元)原则要优先于高层级(组件)原则 .........................131
12.3 对每次提交负责 ........................................................................................132
12.4 下一本书会讨论开发流程的*佳实践 ......................................................132
附录 A SIG 如何来评估可维护性 ...............................................133
索引 ..........................................................................................137信息
作者简介
译者张若飞,有十年以上IT公司从业经历的资深Java软件开发工程师,对Java和大型互联网、分布式系统有较深研究,曾译有《Grails权威指南》《Java EE 6开发手册·高级篇(第4版)》《写给大忙人看的Java SE 8》等书。 Joost Visser,SIG研究负责人,掌管这家独一无二的认证软件分析实验室。这家实验室根据ISO 25010国际标准,对软件产品质量进行标准化的测量。本书汇集了SIG顾问们从2000年以来在软件质量测量和建议方面的集体智慧和经验。
-
深度学习的数学
¥43.5¥69.0 -
全图解零基础word excel ppt 应用教程
¥19.0¥48.0 -
机器学习
¥59.4¥108.0 -
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥31.9¥65.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥76.3¥109.0 -
UG NX 12.0数控编程
¥22.1¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥83.3¥119.0 -
Visual Basic 语言程序设计基础(第6版)
¥32.0¥45.0 -
贝叶斯推理与机器学习
¥139.3¥199.0