知识卡片

架构决策非一成不变:用三项技术实践留后路

普通读书笔记卡

内容

作者在给出一整章的架构选型建议前,先明确提醒读者:任何建议都是危险的礼物——单凭几分钟或者一本书的描述,作者不可能替某个具体项目做出真正合适的决策,读者对自己项目的了解永远胜过作者,这些建议的作用应该是推动读者自己思考,而不是替代思考;最终决策和后果都由读者自己承担。好在架构决策不是刻在石头上的:架构重构确实很难、代价也常被低估,但并非不可能。作者给出的兜底建议是——即便对极限编程整体不感兴趣,也应该认真采纳三项具体技术实践:持续集成、测试驱动开发、重构。这三项实践不是万能药,但它们共同的作用是让系统在日后需要改变架构决策时变得”更容易改”——换句话说,与其试图一次性做出完美的、不可撤销的架构判断,不如投资于让判断本身具备可修正性的工程基础设施。可迁移启发:面对信息不充分、无法保证正确的架构决策,与”追求一次性做对”相比,”保留低成本纠错的能力”往往是更现实、也更划算的策略。

参考来源

- 位置:《企业应用架构模式》第一部分"表述"之"第8章 通盘考虑"(源文件:_epub-src/OEBPS/Text/000050.html) - 结论依据:原文说明"好在决策不是一成不变的。架构重构很难,人们也经常忽视它的代价,但是并非不可能。我能给的建议就是:即使你对极限编程不感兴趣,你还是应该认真地思考三个方面的技术实践:持续集成、测试驱动的开发和重构。这些技术虽然不是万能的灵丹妙药,但它们能够帮助你在需要的时候更容易地改变你的系统",直接支撑本卡结论。 - 原始内容:应该用这些建议去推动你去思考,而不是代替你去思考。最终决策的应该是你,最终享受乐趣或承担痛苦的也是你。