1. 好的架構(gòu)都是演化出來的
2. 第二版往往是最糟的
3. 到第五版才能令人滿意
4. 架構(gòu)都是不可復(fù)制的
5. 架構(gòu)是組織關(guān)系的映射
6. 完全推倒重來通常會導(dǎo)致技術(shù)和政治上的雙重失敗
7. 不要給豬抹口紅,已經(jīng)頻繁出問題的系統(tǒng)不能打更多補丁
8. 演化成功的關(guān)鍵在情商,特別是溝通能力
9. 一個人要經(jīng)歷過三次大的工程失敗,才能去設(shè)計架構(gòu)。
10. 軟件演化如同生物演化,都是利用現(xiàn)有素材重用
11. 架構(gòu)演化設(shè)計的關(guān)鍵不是最終目標(biāo)(架構(gòu)圖),而是實現(xiàn)目標(biāo)的步驟
12. 搞砸事情需要三個新手,但只需要一個理想主義者
13. 架構(gòu)師要先服務(wù)其他人,而不是讓其他人改變
14. 慢慢想,但做的時候要快速迭代,按周交付。一個演進(jìn)設(shè)計一個月不交付就可能永遠(yuǎn)不能交付。
15. 有一點成果,就要給團(tuán)隊和用戶體現(xiàn)一點成果
16. 先動接口,再動實現(xiàn)
17. 如果涉及面廣,接口先保持向后兼容性,再逐步替代
18. 及時分離框架代碼和業(yè)務(wù)代碼。保持精干的框架代碼
19. 寫注釋