


Retrofit2 along with RxJava2 to help log server requests and get server responses.Kotlin to develop the app along with the AndroidX library.I will show you how to implement a simple Android app that loads a news list, allows you to save stories to Favorites, and then delete if necessary using my approach. Tools used during the processĪfter studying all these architectures, I built a simplified approach and came up with an architecture with fewer layers. However, all these architectures have one common architectural foundation that almost equally divides the logic for working with networks, databases, dependencies, and processing callbacks. And it depends on the programming language. Whichever architecture you use depends on your specific purpose, approach, and application of various toolkits for the implementation various functionalities. But if a developer changed companies, it would take them some time to learn that new architecture along with a new project.Īt the moment, there are 16 different architectures for Android developers, thanks to Google: This helped them make their code clearer and made it possible to switch between projects. Until Google released its first supported architecture, almost every software development company used its own architecture. It is better to rebuild such projects from scratch, since maintenance becomes a complicated process.

And the next developer who needs to maintain the project or modify it may go crazy. This is bad - they won’t be able to deal with their code. Sometimes they might disregard the main principles of object oriented or functional programming, which can lead to disorientation among the developers. Individual programmers develop their mobile apps according to their vision, including their ideas and views on how to perform various tasks.
