内容推荐 对大型、复杂的代码库进行重大修改是一项艰巨的任务,除非你有合适的团队、工具和思维方式,否则几乎不可能成功。如果你的应用程序需要进行重大改造,但你又不确定以何种可持续的方式进行,那么这本书就是为你准备的。 本书作者将带领你从头到尾经历整个重构过程。你将了解她在Slack的关键发展时期是如何提高性能和重构的,并从这些经验中得到启发,书中利用两个案例研究来说明这些技术是如何在实际工作中产生影响的。本书将有助于你获得一种新的能力,使你更高效地进行重构。 作者简介 莫德·勒梅尔(Maude Lemaire)是Slack的一名软件工程师,她的工作是提升产品性能,以支持一些世界上最大的组织。她的大部分时间都在进行人员管理、网络调用、重构复杂的代码块、整合冗余的数据库,以及为其他开发者构建工具。 目录 前言 第一部分 概述 第1章 重构 1.1 什么是重构 1.2 什么是大规模重构 1.3 你为什么要关心重构 1.4 重构的好处 1.4.1 开发者的生产力 1.4.2 识别bug 1.5 重构的风险 1.5.1 严重的退步 1.5.2 挖掘出休眠的bug 1.5.3 范围蔓延 1.5.4 不必要的复杂度 1.6 何时重构 1.6.1 小范围 1.6.2 代码的复杂度明显地阻碍了开发 1.6.3 产品需求的转变 1.6.4 性能 1.6.5 使用新技术 1.7 何时不要重构 1.7.1 为了好玩或出于无聊的原因 1.7.2 因为你怡好路过 1.7.3 使代码更具可扩展性 1.7.4 当你没时间时 1.8 我们的第一个重构示例 1.8.1 简化条件语句 1.8.2 提取魔法数字 1.8.3 提取自包含逻辑 第2章 代码是如何退化的 2.1 为什么理解代码退化很重要 2.2 需求的转变 2.2.1 可扩展性 2.2.2 可访问性 2.2.3 设备兼容性 2.2.4 环境改变 2.2.5 外部依赖 2.2.6 未使用的代码 2.2.7 产品需求变化 2.3 技术债 2.3.1 技术决策 2.3.2 缺乏持续的整理 2.3.3 移动得太快 2.4 应用我们的知识 第二部分 规划 第3章 测量我们的起点状态 3.1 为什么测量重构的影响很难 …… 第三部分 执行 第四部分 用例 |