Next: Use layering.
Up: Principles
Previous: Minimize the number
- Specialization: subclasses should preserve all properties
of superclass, but also add more.
- Evolution: new version preserve all operation of previous ones
and adds new ones.
- Don't cancel, weaken, contradict visible properties in new
subclasses/versions.
- This avoids changing existing client code when changing, extending, or
fixing a component (ideal not always possible).
- ... optimize via specialization and versioning
Doug Lea
Sat Apr 8 09:58:22 EDT 1995