Modularization articles cycle:

  1. Modularization of Android Applications in 2021
  2. Modularization of Android Applications with explicit initialization
  3. Modularization of Android Applications with lazy initialization

This article is a continuation of the previous one with common thoughts about our approach to splitting a monolithic Android-application code base into modules. It is strongly recommended to see through it before reading this one.

To remind there we had three base interfaces: ComponentHolder, BaseAPI, and BaseDependencies put in Module-injector to be implemented in all feature-modules.

These interfaces look like this:

Now I suggest you look at the implementation of one of the ComponentHolder, which…


Splitting a monolithic Android-application code base into modules is not a new theme, and this way of code organizing is becoming more common. Even our colleague had already published a couple of articles about best practices for working with modules when we first started the division.

We have gained more experience, and we want to share the conclusions and tips that we had arrived at by the beginning of the 2021 year. Therefore, this article can be useful both for those who are just considering about separation and for those who have begun the process.

With this article, I would…


Introduction

Jetpack Compose is one of the most discussed topics covered in the recent Android 11 video series. It is expected to solve most of the problems with the current Android UI toolkit, which contains lots of legacies. Another promising tool for Android-development is Kotlin Coroutines and especially Flow API which is supposed to help avoid over engineering with RxJava.

In this article I would like to show you a small application built with Jetpack Compose UI and with the use of Coroutines StateFlow as a tool for sharing state between screens. Moreover, MVI architecture will be also used.

I would…

Andrey Beryukhov

Android Dev @Kaspersky

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store