内容推荐 每个代码库都包含一些错误和低效之处,你需要将其找出并完成修正。以正确的方式进行重构,代码就会变得优雅、易读和易维护。在本书中,你将学习一种独特的重构方式,可以在5行或更少的代码中实现任何方法。你还会发现大多数资深开发人员都知道的一个秘密:有时敲定代码并在稍后进行修复会更快。 对所有技术水平的开发人员来说,本书是以全新视角审视重构。在本书中,你将掌握作者的创新方法,学习一些具体的规则,将任何方法简化为5行或更少。你将了解重构的时机、适用于大多数常见问题的特定重构模式,以及应该完全删除的代码特征。 作者简介 郭涛,Turing Lab发起人,主要从事模式识别与人工智能、智能机器人技术、软件工程技术和地理人工智能(GeoAI)、时空大数据挖掘与分析等前沿交叉领域研究。曾翻译过《复杂性思考:复杂性科学和计算模型(第2版)》《神经网络设计与实现》等多本图书。 目录 第Ⅰ部分 通过重构电脑游戏来学习 第1章 重构 1.1 什么是重构 1.2 技能:重构什么 1.2.1 代码异味示例 1.2.2 规则示例 1.3 文化:什么时候重构 1.3.1 在遗留系统中重构 1.3.2 什么时候不应该重构 1.4 工具:如何(安全地)重构 1.5 入门所需的工具 1.5.1 编程语言:TypeScript 1.5.2 编辑器:Visual Studio Code 1.5.3 版本控制:Git 1.6 总体示例:一款2D益智游戏 1.7 关于实际软件的说明 1.8 本章小结 第2章 重构的内部原理 2.1 提高可读性和可维护性 2.1.1 使代码更好 2.1.2 维护代码而不改变代码作用 2.2 获得速度、灵活性和稳定性 2.2.1 优先选择组合而非继承 2.2.2 通过添加而非修改来更改代码 2.3 重构与你的日常工作 2.4 在软件上下文中定义“域” 2.5 本章小结 第3章 拆分长函数 3.1 建立第一条规则:为什么是5行 3.2 引入重构模式来分解函数 3.3 分解函数以平衡抽象 3.3.1 规则:EITHER CALL OR PASS 3.3.2 应用规则 3.4 好的函数名称的属性 3.5 分解任务太多的函数 3.5.1 规则:IF ONLY AT THE START 3.5.2 应用规则 3.6 本章小结 第4章 让类型代码发挥作用 4.1 重构一个简单的if语句 4.1.1 规则:NEVER USE IF WITH ELSE 4.1.2 应用规则 4.1.3 重构模式:REPLACE TYPE CODE WITH CLASSES 4.1.4 将代码推入类 4.1.5 重构模式:PUSH CODE INTOCLASSES 4.1.6 内联一个多余的方法 4.1.7 重构模式:INLINEMETHOD 4.2 重构一个大的if语句 4.2.1 去除泛化 …… 第Ⅱ部分 学以致用 附录 为第Ⅰ部分安装工具 |