Answers are grounded in this paper and cite their sources.
Inheritance is an important mechanism when developing object-oriented programs with class-based programming languages: it enables subtyping, polymorphism, and code reuse. Inheritance is also known as a difficult feature to grasp and to use correctly because of its many purposes. We propose a model of inheritance to help understand class hierarchies of class-based object-oriented programs. We define metrics and rules to highlight interesting classes and behaviours with respect to inheritance. Thus, we provide the programmer with insight on how inheritance is used in a program. We illustrate our approach on JHotDraw and validate it further on three other programs: ArgoUML, Azureus, and Log4J. We also show thatour model can describe existing rules, such as micro patterns.
No takes yet. Share an insight, caveat, or question.
Denier et al. (2008) studied this question.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: