The Pragmatic Programmer - Andrew Hunt, David Thomas

The Pragmatic Programmer

Andrew Hunt, David Thomas

出版时间

1999-10-30

ISBN

9780201616224

评分

★★★★★
书籍介绍
本书直击编程陈地,穿过了软件开发中日益增长的规范和技术藩篱,对核心过程进行了审视――即根据需求,创建用户乐于接受的、可工作和易维护的代码。本书包含的内容从个人责任到职业发展,直至保持代码灵活和易于改编重用的架构技术。从本书中将学到防止软件变质、消除复制知识的陷阱、编写灵活、动态和易适应的代码、避免出现相同的设计、用契约、断言和异常对代码进行防护等内容。
AI导读
核心看点
  • 直击编程核心,审视从需求到代码的完整过程。
  • 涵盖个人责任、职业发展及灵活易维护的架构技术。
  • 传授防止软件变质、消除复制及编写动态代码的方法。
适合谁读
  • 希望提升职业素养、从新手进阶为靠谱程序员的开发者。
  • 感觉工作效率不高,寻求突破瓶颈的在职程序员。
  • 对软件工程、代码规范及团队管理感兴趣的计算机学生。
读前提醒
  • 建议有一定项目经验者阅读,否则难以理解具体语境。
  • 中文版翻译略显艰涩,若英语好建议直接阅读原版。
  • 书中观点如模式语言,需结合实践思考,勿死记硬背。
读者共识
  • 被誉为程序员必读经典,是提升编程修养的指南针。
  • 内容虽出版较早,但核心思想如DRY原则依然适用。
  • 像亲切邻家大叔娓娓道来,强调责任感与持续改进。

本导读基于书籍简介、目录、原文摘录、短评和书评生成,不等同于全文精读。

精彩摘录
  • "项目团队 你是否注意到,一些项目团队非常高效,每个人都知道该做什么,并做出了充分的贡献;而其他一些团队的成员却总是争吵不休,似乎无法相互谦让? 通常这就是一个正交性问题。当团队组织重复到架屋迭床时,成员会对职责感到困惑。每修改一个东西都需要整个团队开会,因为修改会影响每个人。 如何将团队组织成职责明确、重叠最少的不同小组?没有简单的答案。这一定程度上取决于具体项目,以及你对可能发生变化区域的分析;同时还取决于你能调用的人手。我们的首选做法是,先将基础设施从应用程序中分离出来,让每个主要的基础设施组件(数据库、通信接口、中间件层等)都有自己的子团队,让应用程序中特别明显的不同功能都能简单地分开。"
  • "要把低级的知识放在代码中,把注释留给高级的知识。"
  • "早崩溃"
  • "不要做历史的奴隶,不要让已有的代码支配将来的代码,如果不再适用,所有的代码都可被替换"
  • "1. 不要试图在重构的同时增加功能 2. 在开始重构之前,确保你拥有良好的测试。尽可能进场运行这些测试。这样,如果你的改动破坏了任何东西,你就能很快知道 3. 采取短小、深思熟虑的步骤。如果你的步骤保持短小,并在每个步骤之后进行测试,你将能够避免长时间的调试 完美,不是在没有什么需要增加,而是在没有什么需要去掉时达到的 需求不是架构,需求不是设计,也不是用户界面,需求是需要"
  • "提供各种选择,不要找蹩脚的借口"
  • "“不要容忍破窗户”"
  • "”做变化的催化剂”"
作者简介
Andy Hunt是一个热心的木工和音乐家,但他似乎作为顾问时更受欢迎。他工作过的行业有电信、银行、金融服务和公用事业,还有一些外来领域,如医学成像、图形艺术Internet服务。Andy擅长于将实践已验证的技术和前沿技术相结合,创造新奇而实用的方法。Andy在北卡罗莱纳的Raleigh拥有自己的顾问业务。
用户评论
這本書好幾次拿起來看了幾頁又放下,這個週末終於一口氣讀完了,收穫不少,慢慢整理。
:无
写得真的像前言里面说的——一个模式语言。尽管里面有许多当时比较新鲜的观点。但是在出版十年之后读的话,发现许多都已经知道了,而且这本书没有很系统地讲一些深刻的内容,因此笔记也就做一个基本模式摘要就够了。
Great book for junior to medium programmers! Contain many principles and best practices for programmer careers. Some are already well known to the world, for example, DRY (don't repeat yourself), DBC (design by contract).
不错的鸡汤,但如果正餐吃得不饱就容易营养不良。
工作几年后再看这本书,简直是开发人员进阶的圣经,可笑当年在学校翻翻就过去了。应该买一本放在公司,随时翻阅,查漏补缺。
入职第二个月的读物。个人觉得这本书对于从校园踏入工业届的同学来说是非常适合的入门读物,有些时候会有“aha!这条建议xxx之前在面对xxx情景时讲过”的感觉,或者“oh!我司的xx确实是这么做的”的回顾。理论联系实际确实有不错的效果。不过,这本书对于有多年软件开发经验的人来说可能并不是那么有价值。
时候未到,理解和感悟都有限
2014.7.17第一次读,大概刚入门的时候会比较有用 2020.10.09 再过六年重读,感觉都是大家已经知道的大道理,看都看不下去了
务实的
收藏