- 区分编程与软件工程:阐明编程与软件工程的区别,帮助读者理解构建可持续代码库所需的工程实践。
- 管理大型代码库:分享Google管理数十亿行代码的经验,解决代码库随规模增长而难以维护的难题。
- 建立高效工程文化:介绍Google的工程文化、流程与工具,解决团队协作效率低下与规范缺失的问题。
- 应对需求变化:阐述如何使代码库在生命周期中持续演化并响应不断变化的需求,解决系统僵化问题。
★★★
中级
入门初级中级进阶高级
- 高级软件工程师:希望从编程高手成长为工程专家,需要了解大型系统工程实践的资深开发者。
- 技术团队负责人:需要建立高效工程文化、流程与工具链,提升团队协作效率的管理者。
- 软件架构师:负责设计可持续演化的系统架构,需要借鉴Google大规模代码库管理经验的专业人士。
- 计算机专业学生:有志于进入大型科技公司,希望提前了解工业级软件工程实践的学生。
- 理解核心差异:先精读第1章,深刻理解编程与软件工程的本质区别,这是全书的思想基础。
- 结合实践:阅读时对照自己团队的开发流程,思考哪些Google实践可以借鉴或改进。
- 重点章节:第3章代码库管理、第4章代码审查和第5章测试策略是工程实践的核心,建议反复研读。
- 案例研讨:第11章案例研究可与同事组织读书会讨论,结合自身项目进行反思与落地。
- 软件工程思维:建立起超越编程的工程思维,理解可持续代码库的重要性与构建方法。
- 大型项目管理能力:掌握管理大规模代码库、依赖与构建系统的策略与工具。
- 团队协作与文化建设:学会如何打造高效的工程文化,提升团队整体开发效率与代码质量。
- 职业发展视野:了解顶级科技公司的工程实践,为个人职业成长与团队管理提供方向。
📖 书籍简介
作 者:(美)铁达时·温特斯,(美)汤姆·曼史瑞克,(美)海仑·莱特 编
定 价:118
出 版 社:东南大学出版社
出版日期:2021年01月01日
页 数:604
装 帧:平装
ISBN:9787564192075
●《Google的软件工程:英文》目录参见目录图
如今,软件工程师不仅需要知道如何有效地编程,还需要知道如何开发适当的工程实践,以使他们的代码库可持续和健康。这本书强调了编程和软件工程之间的区别。软件工程师如何管理一个活的代码库,使其在生命周期中不断演化并响应不断变化的需求?基于他们在谷歌的经验,软件工程师TitusWinters和HyrumWright,以及技术作家TomManshreck,对一些的从业者是如何构建和维护软件进行了坦率和深刻的观察。这本书涵盖了谷歌独特的工程文化、过程和工具,以及这些方面如何对工程组织的有效性做出贡献。
📑 章节目录
- 第1章 软件工程与编程的区别
- 第2章 团队协作与工程文化
- 第3章 代码库管理与版本控制
- 第4章 代码审查与质量保障
- 第5章 测试策略与持续集成
- 第6章 依赖管理与构建系统
- 第7章 大规模代码重构
- 第8章 文档与知识共享
- 第9章 度量与工程效率
- 第10章 领导力与工程管理
- 第11章 案例研究:Google的工程实践
- 第12章 未来展望与挑战