Well, there are countless ways you can design your next app’s infrastructure, and there are so many good technologies and languages that you might need one more life to learn the better part. So you aren’t able to always have the newest ones in your stack. On other hand, new theories, experiments, new cool features are good for the future, like seeds for the next better technologies. So you don’t want to stick with old but proven technologies either. But when you are responsible for the product’s reliability, you don’t want the peace of the system to mess up the…
If you are trying to get a good understanding of what’s composition vs inheritance, you probably search on google etc., read articles and watch videos around “composition vs inheritance”. Here’s the problem, you are going to learn incorrect definition of composition.
This is coming from a book written in 1994.
“Favor object composition over class inheritance”
— Design Patterns: Elements of Reusable Object-Oriented Software (page 20)
The majority of sources around “composition vs inheritance” has a huge misconception about the composition itself. But they use the statement above as a sign post, saying, hey, we should favor composition over inheritance…
We never hesitate to sacrifice more lines of code, when it comes to a bit better UX. Actually in some cases, a simple tab realization can bring a huge UX improvement, especially on a mobile-first project, being one of the best ways to avoid unnecessary routes or pages. Even more, in some cases it can be the best way of navigation, or simplify the user flow.