DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MS.2007.137
Building clean abstractions with clearly defined extension points is satisfying, but the best design choice isn't always obvious. How much access should you give a subclass to a class's inner workings? How much freedom should you give a subclass designer to "bend" inherited behaviors to make a new abstraction fit in or to extend an existing one? These decisions involve nuanced reasoning. The contract between a class and its subclasses requires thoughtful design, experimentation, and careful specification.
Index Terms:
class, subclass, abstractions
Citation:
Rebecca J. Wirfs-Brock, "Designing Extensible Classes," IEEE Software, vol. 24, no. 5, pp. 15-17, Sep./Oct. 2007, doi:10.1109/MS.2007.137 Usage of this product signifies your acceptance of the Terms of Use. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||