Skip to content

第 1 章:务实的哲学

系列:程序员修炼之道 · 第 1/9 章
全书导读:00-overview.md


一句话总结

成为务实程序员,意味着对技艺负责、主动学习、接受「够好即可」的质量权衡,并持续沟通——软件熵可被对抗,但不会被消灭。


核心观点浓缩

  • 人生是你的:技术选择与环境不是被动接受,可主动塑造
  • 软件的熵:无序自然增加;不持续小步整理,系统必然腐烂
  • 够好即可(Good Enough):质量与资源、期限权衡;完美是敌人
  • 知识组合:学无止境;批判性阅读、多语言、多领域
  • 沟通!:软技能与硬技能同等重要;文档、会议、API 都是沟通
  • 提供选择,别找借口:对问题负责,用方案说话
  • 石头汤与煮青蛙:渐进推动变革;警惕缓慢劣化

关键概念 / 金句

概念含义
Pragmatic务实 ≠ 凑合;在约束下做负责任的专业判断
Software entropy每次凑合一点,可读性与结构就退化一点
Good enough明确质量标准,而非无限拔高
Knowledge portfolio像投资组合一样管理所学技能

本章在全书中的位置

第 1 章定心态与价值观,后文 DRY、工具、测试、项目都是在此之上的操作层。没有「对技艺负责」,后面技巧容易变成形式主义。


个人思考与启发

「熵」的比喻对长期维护的桌面软件尤其贴切:连接逻辑、导出路径、配置项若不断打补丁而不重构,新同事不敢动旧代码。对抗熵不需要大爆炸重写,而是每次改动留一点比来时干净

「够好即可」在医疗器械/扫描类软件里要更谨慎——核心数据路径的质量底线往往高于 UI 皮肤,关键是显式区分哪些必须高可靠、哪些可以迭代。


与《软件设计的哲学》对照

  • 务实哲学强调人如何学习、如何沟通;Ousterhout 较少涉及,默认团队能讨论设计
  • 「够好即可」与战略式编程:战略投资设计时间,不等于无限延期;两者都反对无脑堆砌功能
  • 知识组合 ↔ 读源码、读 VTK/Qt 文档,是降低理解复杂度的长期投资

重点与注意

重点:务实 = 对技艺与结果负责,主动选择而非抱怨环境。
重点软件熵 inevitable,要靠持续小步重构与规范对抗。
重点够好即可是有意识的质量目标,不是降低专业标准。
注意:沟通不足会导致重复实现与错误假设,比写错一行代码代价更大。
注意:煮青蛙式劣化常来自「先这样以后再改」——以后要主动排期。


导航00 全书思考 · 下一篇:第 2 章 务实的方法

基于 VitePress 强力驱动 | 记录技术与生活