Inheritance and composition are two programming techniques developers use to establish the relationship between classes and objects. Whereas inheritance derives one class from another, composition ...
We will focus on the relationship between polymorphism and Java inheritance. The main thing to keep in mind is that polymorphism requires an inheritance or an interface implementation. You can see ...
Twenty-three years ago, in his Design Principles and Design Patterns article, Robert "Uncle Bob" Martin boiled down the Liskov substitution principle to the idea that "derived classes should be ...
A monthly overview of things you need to know as an architect or aspiring architect. Unlock the full InfoQ experience by logging in! Stay updated with your favorite authors and topics, engage with ...
Design symmetry means that if one method causes an effect, the logically opposite method should cause the opposite effect. In this Java tip, David Petersheim discusses why this can be a subtle point, ...