gof的23种设计模式,想必大家都比较清楚了。
不过我想知道有没有人研究过,java标准API中用到了多少设计模式,分别是在什么地方,用到的什么模式,或者模式的组合。我先找个简单的,大家再向深里挖掘。Structural Patterns
1.Decoratorjava.io.Reader
java.io.Writer
java.io.InputStream
java.io.OutputStream
的继承类里Behavioral Patterns
1.Iterator广泛用于Collection的实现类里。
不过我想知道有没有人研究过,java标准API中用到了多少设计模式,分别是在什么地方,用到的什么模式,或者模式的组合。我先找个简单的,大家再向深里挖掘。Structural Patterns
1.Decoratorjava.io.Reader
java.io.Writer
java.io.InputStream
java.io.OutputStream
的继承类里Behavioral Patterns
1.Iterator广泛用于Collection的实现类里。
2.Observer使用observer接口和Observable类来实现观察者模式其实严格来讲这个只是提供了一个框架,不是应用。
设计模式是要理解,而不是套用
切记切记
-----------------------------------------------------这话只要看过设计模式的人都知道,谁都知道应该是这样的,但是这属于典型的“大而空”的言论。在java的标准库里面寻找设计模式,一个是能够对设计模式更好的理解,另外也能够更好的学习这些标准库。
Decorator 和单态 到是用过.
能用到固然好,但觉得只要掌握他们的思想就是最好的,不用全部都掌握精通.
awt swing的event用到Mediator,Default Adapter
java.util提供的模式框架Iterator和Observer,本身也使用到Default Adapter和Singleton 个人学的不多 但觉得学点模式常识能更好的理解拿到手的共通,理解开源的东西但模式用滥了就不好了,都知道递归算法好读,但是效率不高,因为有大量的方法压入stack
模式用多估计也有这种效率问题