根本不存在充分分析這種東西,無論花多少時間去找出完美的軟件結構,客戶總是會引入一個變化來破壞這種結構。
這種情況是無法避免的。不存在完美的結構。只存在那些試圖去平衡當前的代價和收益的結構。隨着時間的過去,這些結構肯定會隨着系統需求的改變而改變。管理這種變化的訣竅是儘可能的保持系統的簡單,靈活。
模式是既能帶來好處又具有代價的東西,你應該使用那些最適合手邊問題的模式。
代碼往往會腐化。隨着我們添加一個又一個的特性,處理一個又一個的錯誤,代碼的結構會逐漸退化。如果對此置之不理的話,這種退化最終會導致糾結不清,難以維護的混亂代碼。