個人認為,設計模式其實都對java最為基本的三個特性:封裝 繼承 多態的使用.也不只是針對java.所有的oo設計我想都一樣.
結合oo設計的一些基本原則,
1 面向接口編程,而不面向實現編程.
2 優先使用對象組合,而不是繼承.
3 將程序中不變部分與變化部分分離.也即封裝.
達到支持變化和擴展的目的.設計模式中23種設計模式都是為了實現這種功能.而巧妙地使用了面向對象語言的三種特性.
如果一個程序員,對自己所構建的代碼,在思想上沒有想讓它更為優秀的想法,以支持可擴展和支持變化.學習設計模式.其實是沒有用的.只有在編碼的過程中貫輸想更為精練,更為適用的想法.去使用設計模式,去學習設計模式.設計模式才能發揮最大的作用.為學習設計模式而學習設計模式是沒有用的.