a a a RSS 1.0 Print content
Edit On
  • Coordinator
  • Future Counterfactual
  • Mass Hysteria And The Delusion Of Crowds*
  • prozessintegration auf xml-basis
Open in full screen
building robust frameworks using less inheritance
Published in the proceedings of Europlop 98, this paper addressed issues to be tackled when attempting to build robust frameworks (frameworks with a chance of surviving over time). The framework for a real-world large-scale reservation system was used as one of the working examples.

The paper concentrated on how to avoid the coupling due to inheritance and state from seizing up frameworks. Inheritance is often overused as it seen as core of Object Oriented programming, and objects religiously containing logic and data (with all their specific getters and setters) can also become a barrier to reuse. Techniques including reduction of inheritance by the use of plugin flyweight strategies recursively organised in component structures and separation of logic from extrinsic state (e.g. in generic containers such as Anythings or XML) are used to tackle these coupling problems.

With C++ the structure of the language, as it then was, also meant that experimentation with inheritance structures often lead to costly full rebuilds which negatively impacted the desire to experiment.

The framework makes use of Reactor, ACT, Flyweight, Strategy and Composite Patterns.

The picture above, taken from the paper, shows an early attempt at graphically representing the geometry of Design Centers (Christopher Alexander) in Coordinator or any other software.