Have a look ^_^
参考书籍:
《重构 改善既有代码的设计 第2版》马丁 福勒著 人民邮电出版社
马丁 福勒的其他著作:《分析模式》,《UML精粹》,《领域特定语言》
目录
这本书一共有12章,像代码的坏味道,测试体系这类词已经屡见不鲜了。
第1章:重构,第一个示例
第2章:重构的原则
第3章:代码的坏味道
第4章:构筑测试体系
第5章:介绍重构名录
第6章:第一组重构
第7章:封装
第8章:搬移特性
第9章:重新组织数据
第10章:简化条件逻辑
第11章:重构API
第12章:处理继承关系
关于重构的定义
作者对于重构的定义有着非常严谨的要求,我提炼一下,大概是这个意思:
在不改变软件可观察行为的前提下,提高代码可读性。
嗯,差不多没了。关于代码可读性这个话题是具有一定适应范围的,对于一个简单的应用并不显得重要,但对于复杂的业务系统就显得十分关键。试想一下,如果5000行代码写的乱七八糟还能咬咬牙硬着头皮看一下;倘若是50万行乱七八糟的代码......就只能......你懂的!
代码的可读性对于后续代码维护,代码修改起到了相当重要的铺垫作用。
随机推荐
- 初级模拟电路:3-11 BJT实现电流源
回到目录 1. 恒流源 (1)简易恒流源 用BJT晶体管可以构造一个简易的恒流源,实现电路如下: 图3-11.01 前面我们在射极放大电路的分压偏置时讲过,分压偏置具有非常好的稳定性,几乎不受晶体管的 ...
- post请求四种传送正文的方式
一.简介 HTTP协议规定post提交的数据必须放在消息主体(entity-body)中,但协议没有规定数据必须使用什么编码方式.HTTP协议是以ASCII码传输,建立再TCP/IP协议之上的应用层规 ...
- Git实用指南
个人整理的一些Git概念和命令,可以速查或者快速解决某些方面的问题 一.精简入门 1.克隆仓库 克隆仓库会下载仓库完整的文件.分支和历史记录 git clone [<options>] [ ...
- Win10(64位)安装汇编环境(MASM)
1:需要的文件 需要的安装包:这些百度都能下载找到 1).DOSBox 链接: 2) .MASM5.0 链接: 3).DEBUG 链接: 下面给出我们打包的环境 直接可用: (汇编我并不需要关注安装这 ...
- ETCD:配置参数
原文地址:Configuration flags etcd通过配置文件,多命令行参数和环境变量进行配置, 可重用的配置文件是YAML文件,其名称和值由一个或多个下面描述的命令行标志组成.为了使用此文件 ...
- Python 一键获取百度网盘提取码
该 GIF 图来自于官网,文末有给出链接. 描述 依托于百度网盘巨大的的云存储空间,绝大数人会习惯性的将一些资料什么的存储到上面,但是有的私密链接需要提取码,但是让每个想下载私密资源的人记住每一个提取 ...
- Linux平台 Oracle 19c RAC安装Part3:DB配置
Linux平台 Oracle 19c RAC安装Part3:DB配置 四.DB(Database)配置 4.1 解压DB的安装包 4.2 DB软件配置 4.3 ASMCA创建磁盘组 4.4 DBCA建 ...
- Selenium(十三):验证码的处理、WebDriver原理
1. 验证码的处理 对于Web应用来说,大部分的系统在用户登录时都要求用户输入验证码.验证码的类型很多,有字母数字的.有汉字的,甚至还需要用户输入一道算术题的答案的.对于系统来说,使用验证码可以有效地 ...
- Go-内置time包
一.导入包 import "time" 二.转换成Time对象 获取当前时间:time. Now () 自定义时间:time. Date(year int, month Month ...
- [browser navigator],写了个检测游览器版本
前些天胃不舒服打吊针了,真得准时吃饭各种啊,然后就是懒,就没在复习了,这次复习的内容是navigator //未知效果 // console.log('浏览器的次要版本' + navigator.ap ...