匠艺整洁之道:程序员的职业修养(英文版)

2025-8-22 32 8/22

匠艺整洁之道:程序员的职业修养(英文版)

作者:罗伯特?C.马丁

页数:400

出版社:电子工业出版社

出版日期:2023

ISBN:9787121445828

高清校对版pdf(带目录)

前往页尾底部查看PDF电子书

内容简介

罗伯特?C.马丁(鲍勃大叔)因在技术人群中声名远播的Clean系列在全球圈粉无数。本书为其烫手新作,旨在为广大工程师指明一条通向匠师之路,包括饱经洗砺的敏捷技术实践,如何通过持续的努力提高专业素养,软件可用之上的目标与技能,以及如何激发团队优选潜能,等等。本书融会几本经典著作的精髓,将"整洁”方法论推向至高境界―软件开发者有责任维护世界正常运行,而"人”才是"技术”的决定者。 本书共分三部分,前两部分用实例阐释TDD在敏捷软件中的运用,以及验收测试、协同编程等常被忽视的敏捷侧面与具体策略,还探讨了颇有价值的软件设计方案相关话题;第Ⅲ部分拔地而起,直接提出十条堪称金玉良言的"规劝”,以帮助程序员成为团队基石。

作者简介

罗伯特?C.马丁,自1970年起从事程序员职业。他与人合办了cleancoders.com网站,为软件开发者提供在线视频培训服务。他还创办了Uncle Bob咨询有限公司,为分布于世界各地的大公司提供软件咨询、培训和技能培养服务。同时,他也供职于芝加哥的软件咨询企业8th Light,任大匠(Master Craftsman)一职。
罗伯特?C.马丁,自1970年起从事程序员职业。他与人合办了cleancoders.com网站,为软件开发者提供在线视频培训服务。他还创办了Uncle Bob咨询有限公司,为分布于世界各地的大公司提供软件咨询、培训和技能培养服务。同时,他也供职于芝加哥的软件咨询企业8th Light,任大匠(Master Craftsman)一职。

本书特色

Robert C.Martin 鲍勃大叔封山之作◎Clean系列最终章,3000万读者苦追多年的大结局;◎中国黄金一代程序员的技术偶像;◎代码—>架构—>匠艺,解密编码生涯的终极命题;◎如何打破35岁魔咒?程序员是终身职业吗?是码农还是大师?
◎美亚、豆瓣高分高赞的传奇系列。
鲍勃的《匠艺整洁之道》阐释了敏捷技术实践的目的,深入探讨了敏捷技术实践出现的历史因素,指出了敏捷技术实践为何总是那么重要。作者曾亲历敏捷技术的发展和成型过程,全面了解其实践目标和手段,这在本书中体现得淋漓尽致。
—蒂姆·奥廷格(Tim Ottinger)知名敏捷教练,图书作者
鲍勃文风上佳。书稿易于阅读,概念解释得非常详尽,即便是新入行的程序员也能读懂。鲍勃也会时不时幽上一默,让你稍做放松。本书的真正价值在于呼唤变革,呼唤更好的东西……呼唤程序员的专业素养……以及对软件无处不在的认识。此外,我相信,鲍勃写到的历史还有很多价值。我很高兴地看到,他没有浪费时间指责我们如何走到今天。鲍勃呼吁大家行动起来,要求大家提高标准和专业素养,从而承担责任,即便有时这意味着某种退步。 —海瑟·坎瑟(Heather Kanser)作为软件开发者,我们必须不断为雇主、客户、同事和未来解决重要问题。让软件可用尽管困难,但远未足够,并不能令你成为成功匠人。软件能运行,只代表你通过了能力测试。你也许具备成为匠人的能力,但还要掌握更多东西。在本书中,鲍勃阐明了能力测试之外的技能和责任,展示了严肃软件匠人该有的样子。
—詹姆斯·葛莱宁(James Grenning)《测试驱动的嵌入式C语言开发》(Test-Driven Development for Embedded C)作者,《敏捷宣言》(Agile Manifesto)作者之一
鲍勃是少数我愿意与之合作技术项目的知名开发者之一。并不只因为他技能出众、名声在外、善于沟通,更在于他曾帮助我成为更好的开发者和团队成员。他往往早于其他人好几年发现软件开发领域的重要变化趋势,且能解释其重要性,鼓舞我学习新技能。回顾我入行之时,匠艺和职业操守的概念还没在软件领域出现,大家只是告诉你要做个有诚信的好人。如今,这些概念已然成为专业开发者能习得的最重要能力,甚至比编码本身更为重要。我很高兴地看到鲍勃再领风气之先,迫不及待想听他阐述观点,并将他的观点应用于实践。
—丹尼尔·马克汉姆(Daniel Markham)

目录

第 1 章 匠艺 ................................................................................... 25

第Ⅰ部分 纪律 ................................................................................ 35

极限编程 .............................................................................................................................. 37

生命之环 ...................................................................................................................... 38

测试驱动开发 ...................................................................................................................... 39

重构 ...................................................................................................................................... 40

简单设计 .............................................................................................................................. 41

协同编程 .............................................................................................................................. 41

验收测试 .............................................................................................................................. 42

第 2 章 测试驱动开发 ....................................................................... 43

概述 ...................................................................................................................................... 44

软件 .............................................................................................................................. 46

TDD 三法则 ................................................................................................................. 47

第四法则 ...................................................................................................................... 58

基础知识 .............................................................................................................................. 59

简单示例 ...................................................................................................................... 60

栈 .................................................................................................................................. 60

质因数 .......................................................................................................................... 76

保龄球局 ...................................................................................................................... 86

小结 .................................................................................................................................... 103

第3章 高级测试驱动开发 ................................................................... 105

排序示例一 ........................................................................................................................ 106

排序示例二 ........................................................................................................................ 111

卡壳 .................................................................................................................................... 119

安排、行动、断言 ............................................................................................................ 127

进入 BDD ................................................................................................................... 128

有限状态机 ................................................................................................................ 129

再谈 BDD ................................................................................................................... 131

测试替身 ............................................................................................................................ 132

DUMMY ..................................................................................................................... 135

STUB .......................................................................................................................... 139

SPY ............................................................................................................................. 142

MOCK ........................................................................................................................ 145

FAKE .......................................................................................................................... 148

TDD 不确定性原理 ................................................................................................... 150

伦敦派对决芝加哥派 ................................................................................................ 163

确定性问题 ................................................................................................................ 164

伦敦派 ........................................................................................................................ 165

芝加哥派 .................................................................................................................... 166

融合 ............................................................................................................................ 167

架构 .................................................................................................................................... 167

小结 .................................................................................................................................... 169

第 4 章 设计 ................................................................................. 171

测试数据库 ........................................................................................................................ 172

测试 GUI ............................................................................................................................ 174

GUI 输入 .................................................................................................................... 177

测试模式 ............................................................................................................................ 178

专为测试创建子类 .................................................................................................... 179

自励 ............................................................................................................................ 180

HUMBLE OBJECT .................................................................................................... 181

测试设计 ............................................................................................................................ 184

脆弱测试问题 ............................................................................................................ 184

一一对应 .................................................................................................................... 185

打破对应关系 ............................................................................................................ 187

VIDEO STORE .......................................................................................................... 188

具体 vs 通用 ............................................................................................................... 207

转换优先顺序 .................................................................................................................... 208

{} → NIL(无代码→空值) .................................................................................. 210

NIL → CONSTANT(空值→常量) ..................................................................... 211

UNCONDITIONAL → SELECTION(无条件→条件选择) .............................. 212

VALUE → LIST(值→列表) ...................................
PDF更新中
- THE END -

非特殊说明,本博所有文章均为博主原创。