Lets first start to hear why we do everything in abstraction layers:
Warning, not always:
Databases are a whole different story, but if you understand abstraction and OOP, then working with databases becomes easier. What is an Entity in a Database?
Understanding software design patterns Design patterns help eliminate redundant coding. Learn how to use the singleton pattern, factory pattern, and observer pattern using Java. Understanding software design patterns | Opensource.com
Here is a more detailed website that talks about architecture: App architecture | Android Developers
Take some time to watch this. Take notes. And in your free time, work on some projects if you’re not already doing so.
Project idea list:
- Create a basic web server in GO (Google’s language)
- Create a CRUD API in GO
- Build a TODO app with PHP
- Build a multi-user TODO app with Java + Spring Boot
- Develop a maintenance program for books or movies
If you try to work on these things over the next few months, you will find the training much easier.
Start daily exercises in the Code Gym