在學習Object-Oriented programming時,不免會學到Design Patterns,這在程式的設計上可說是非常重要且有用的概念,如何思考程式的設計一直是很重要的事情,雖然大多人在寫程式時都會忽略它的存在...,利用現在在學JAVA機會,把這東西也搞到手!
主要從Gof的著作--
Design Patterns Elements of Reusable Object-Oriented Software
來做學習
先說明會什麼Design Patterns會被這麼看重,其實主要的原因很簡單
->不重造車輪
我們寫程式所遇到的百百種問題,其實可以都已經被前人給歸納成好幾類,他們利用這幾類問題設計了幾種良好Patterns來做解決,所以只要遇到這些問題就用相對應的Patterns來解決
這樣的好處是
1)不用再為這些問題想新解法
2)他人方便閱讀程式,較易維護
書中介紹了23種Patterns,主要分為三類
1)Creational -- 注重於物件的建立、管理
Abstract Factory
Builder
Factory Method
Prototype
Singleton
2)Structural -- 注重於物件間的組成結構,如何利用繼承、實現來使程式更加健壯
Adapter
Bridge
Composite
Decorator
Facade
Flyweight
Proxy
3)Behavioral -- 注重於物件間的合作,有良好的互動才能有良好的執行效率
Chain of Responsibility
Command
Interpreter
Iterator
Mediator
Memento
Observer
State
Strategy
Template Method
Visitor
接下來就是花點時間學習一下這些東西
沒有留言:
張貼留言