Technology is now diversified. Technology now cuts across all fields. The use of code in technology birthed the code name Architecture, also known as SOLID. This particular code language is commonly used for Android, websites, and backend guys.
Architecture is the bedrock of every building structure, and it has found its way into Android. Architecture is a term used in the building field for house structure and drawing. In this case, it is being used in the technological field.
There is a difference between Good Architecture and Bad Architecture. We will be focusing on good Architecture, which is also referred to as clean Architecture. Therefore this series will be a summary of an opinionated approach to Clean Architecture based on the preference of the majority of experts in the field and mine.
Clean Architecture is a new trendy Architecture that works inky on Android (looking at your iOS, Web, and backend guys). Clean Architecture is mostly what Smartphone is made of. The coding in an android is mostly Clean Architecture. Clean Architecture is what Apple products use in coding their products.
Clean Architecture can also be referred to as S.O.L.I.D. principles. S.O.L.I.D. principles birthed by Clean Architecture can be referred to as Common Sense principles because it helps you stay out of trouble. The trouble here is the use of a coding language that can be maintained.
I will be focusing on two principles. The Lisbon substitution principle and Inheritance principles. Lisbon substitution principles derived classes must be substitutabesubstitutable for their base classes. While, Inheritance is the tightest coupling you can have, bad usage of it leads to highly-coupled and lowly-cohesive code.
Inheritance is majorly used by inexperienced engineers to achieve reusability, but this often makes maintenance almost impossible to achieve (and just so you know, repeating code is much better than coupling code, maintenencemaintenance > reusabilitreusabilityy. Inheritance is majorly used in financial institutions, and this has made maintenance impossible.
The main principal user to regulate Inheritance is the L.S.P., so it is fine to use Inheritance as long as you do not violate the L.S.P.
Here’s a way to think about it. If you’re developing an app yourself or maintaining your own code base, you can do whatever you like or write it however you want as long as you can understand what you’re doing, but when working on a large-scale project that involves hundreds or even thousands of developers from different backgrounds; there needs to be a structure _ (or an agreed upon a pattern or code language to be used.