Software Architecture & Design Design Principles Date: May 28, 2018Author: Bhalala Take what varies and encapsulate it. And it will not affect rest of our code. Program to an interface/supertype and not to an implementation. Favor composition over inheritance. Share this: Share on X (Opens in new window) X Share on Facebook (Opens in new window) Facebook Like Loading... Related