• 大规模重构
  • 大规模重构
  • 大规模重构
  • 大规模重构
21年品牌 40万+商家 超1.5亿件商品

大规模重构

23 九五品

仅1件

北京石景山
认证卖家担保交易快速发货售后保障

作者(美) 莫德·勒梅尔著

出版社中国电力出版社

ISBN9787519886264

出版时间2024-05

装帧平装

开本16开

上书时间2024-12-17

白洋淀书斋

十七年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:九五品
商品描述
目录
前言 1

第一部分 概述

第1 章 重构  11

1.1 什么是重构? .12

1.2 什么是大规模重构? 14

1.3 你为什么要关心重构? .16

1.4 重构的好处 17

1.4.1 开发者的生产力 17

1.4.2 识别bug 19

1.5 重构的风险 19

1.5.1 严重的退步 20

1.5.2 挖掘出休眠的bug 20

1.5.3 范围蔓延 .20

1.5.4 不必要的复杂度 21

1.6 何时重构21

1.6.1 小范围 22

1.6.2 代码的复杂度明显地阻碍了开发 22

1.6.3 产品需求的转变 22

1.6.4 性能 23

1.6.5 使用新技术 23

1.7 何时不要重构 .24

1.7.1 为了好玩或出于无聊的原因 .24

1.7.2 因为你恰好路过 25

1.7.3 使代码更具可扩展性.26

1.7.4 当你没时间时 27

1.8 我们的第一个重构示例 .27

1.8.1 简化条件语句 29

1.8.2 提取魔法数字 31

1.8.3 提取自包含逻辑 32

第2 章 代码是如何退化的 .37

2.1 为什么理解代码退化很重要 38

2.2 需求的转变 39

2.2.1 可扩展性 .39

2.2.2 可访问性 .40

2.2.3 设备兼容性 40

2.2.4 环境改变 .41

2.2.5 外部依赖 .42

2.2.6 未使用的代码 42

2.2.7 产品需求变化 43

2.3 技术债 46

2.3.1 技术决策 .47

2.3.2 缺乏持续的整理 50

2.3.3 移动得太快 51

2.4 应用我们的知识 53

第二部分 规划

第3 章 测量我们的起点状态 .57

3.1 为什么测量重构的影响很难? 58

3.2 测量代码复杂性 59

3.2.1 哈尔斯特德(Halstead)度量 59

3.2.2 循环复杂度 62

3.2.3 NPath 复杂度 65

3.2.4 代码行数 .68

3.3 测试覆盖率指标 69

3.4 文档 .73

3.4.1 正式文档 .73

3.4.2 非正式文档 75

3.5 版本控制76

3.5.1 提交信息 .77

3.5.2 聚合提交 .77

3.6 声誉 .79

3.7 构建完整的画面 82

第4 章 起草计划 83

4.1 定义你的最终状态 84

4.1.1 旅途中 84

4.1.2 工作中 85

4.2 映射最短的距离 86

4.2.1 旅途中 86

4.2.2 工作中 87

4.3 确定战略中间里程碑 89

4.3.1 旅途中 89

4.3.2 工作中 90

4.4 选择推出策略 .94

4.4.1 明模式(Light)/ 暗模式(Dark) 95

4.4.2 Smart DNA 案例的推出 99

4.5 清理工件.100

4.6 在你的计划中引用指标 102

4.6.1 将目标指标延伸至中间里程碑 102

4.6.2 不同的里程碑指标 103

4.7 估算 104

4.8 与其他团队分享你的计划 .105

4.8.1 透明度 106

4.8.2 观点 .106

4.9 精细化计划 108

第5 章 获取支持 111

5.1 为什么你的经理没有上船 . 112

5.1.1 经理不编码 . 112

5.1.2 经理们的评估方式不同 . 113

5.1.3 管理者看到的风险  113

5.1.4 管理者需要协调  114

5.2 制定令人信服的策略  115

5.2.1 使用对话策略 . 117

5.2.2 构建对齐的“三明治” . 118

5.2.3 依赖证据 121

5.2.4 采取强硬手段 .122

5.3 认同塑造重构 124

第6 章 构建正确的团队  125

6.1 识别不同类型的专家 126

6.2 匹配制度.128

6.2.1 多行业专家 .129

6.2.2 重新审视活跃贡献者130

6.2.3 我们专家名单中的偏见 .130

6.3 重构团队的类型 .132

6.3.1 所有者 132

6.3.2 建议的方法 .134

6.3.3 清洁人员 134

6.4 招募动员.136

6.4.1 指标 .137

6.4.2 慷慨 .138

6.4.3 机会 .139

6.4.4 交换筹码 139

6.4.5 重复 .140

6.5 一些结果.141

6.5.1 现实的场景 .141

6.5.2 最坏的情况 .141

6.6 培养强大的团队 .142

第三部分 执行

第7 章 沟通 . 147

7.1 在你的团队内 148

7.1.1 站会 .150

7.1.2 每周同步 151

7.1.3 回顾会议 153

7.2 在你的团队外 154

7.2.1 开始项目时 .154

7.2.2 在项目执行期间 157

7.3 始终迭代.162

第8 章 执行策略 . 163

8.1 团队建设.163

8.1.1 结对编程 164

8.1.2 保持每个人的动力 166

8.2 保持记录.168

8.2.1 中期指标度量 .168

8.2.2 发现的漏洞 .169

8.2.3 清理项 170

8.2.4 记录超出范围的内容170

8.3 高效编程.171

8.3.1 原型 .171

8.3.2 保持事物小巧 .172

8.3.3 测试,测试,测试 173

8.3.4 提出“愚蠢”的问题173

8.4 结论 174

第9 章 让重构保持有效  175

9.1 推动支持.176

9.2 传授 177

9.2.1 主动传授 177

9.2.2 被动传授 180

9.3 强化 181

9.3.1 渐进式代码检查 181

9.3.2 代码分析工具 .182

9.3.3 门槛与护栏 .182

9.4 将改进融入企业文化 184

第四部分 用例

第10 章 案例研究:冗余数据库模式(Schemas)  189

10.1 Slack 101 .190

10.2 Slack 架构101 192

10.3 可扩展性问题 195

10.3.1 启动Slack 客户端 .196

10.3.2 文件可见性196

10.3.3 提及 197

10.4 合并表格 198

10.4.1 收集分散的查询 .199

10.4.2 制定迁移策略 202

10.4.3 量化我们的进展 .205

10.4.4 试图保持团队的动力 206

10.4.5 沟通我们的进展 .207

10.5 整理 209

10.6 经验教训  211

10.7 了解代码的历史 212

10.7.1 确保充分的测试覆盖率 213

10.7.2 保持团队的动力 .213

10.7.3 专注于战略里程碑 214

10.7.4 识别并依赖有意义的指标 .214

10.8 收获 215

第11 章 案例研究:迁移到新数据库  217

11.1 工作区分片数据 218

11.2 将channels_members 迁移到Vitess 219

11.2.1 分片方案 220

11.2.2 开发新模式 221

11.3 解决JOIN 操作中的纠缠问题 224

11.4 一个困难的推出 228

11.4.1 回填模式 229

11.4.2 暗模式 .230

11.4.3 明模式 .235

11.4.4 日落模式 237

11.5 整理 237

11.6 经验教训 239

11.6.1 设定现实的估算 .240

11.6.2 寻找你需要的团队成员 240

11.6.3 仔细规划范围 241

11.6.4 选择一个项目沟通的单一地点 241

11.6.5 设计一个周到的推出计划 .242

11.7 收获 243

内容摘要
理解代码是如何退化的,以及为什么一些退化是不可避免的。在重构之前,量化和评定你的代码状态。起草一个具有战略里程碑且精心设计的执行计划。赢得领导层的支持。建立和协调一个最适合项目的团队。在团队内外进行高效沟通。正确使用重构的很好实践。

   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP