Prime Table Generator in Jetpack Compose
I’ve dusted off one of my oldest (and favourite) coding projects, and rewrote it in Jetpack Compose as a nice little practice exercise.
I’ve dusted off one of my oldest (and favourite) coding projects, and rewrote it in Jetpack Compose as a nice little practice exercise.
I started learning Jetpack Compose this week. Two days into that adventure, here’s a quick look at how a neat clock design can be built up in Compose, step-by-step.
MavenCentral is the place to be for Android libraries, but publishing there is no easy task. With JCenter going away soon, this problem is more timely than ever. Here’s the step-by-step guide on how to do it.
Kotlin 1.5 will bring exciting new features, among them improvements to sealed classes and an introduction of sealed interfaces. Let’s take a look at what that will look like!
In MVVM-like view architectures, view state isn’t enough to communicate from the ViewModel to the View. They have to be supplemented by some kind of events, which come with several challenges you should be aware of.
Fragments have… Complicated lifecycles, to say the least. Let’s take a look at these, and how they all fit into the world of Jetpack today, with LifecycleOwners, LiveData, and coroutines.
RainbowCake is an Android architecture framework, providing tools and guidance for building modern Android applications.
Accessing SharedPreferences using its API directly can be somewhat inconvenient. Krate is a library built on Kotlin delegates to simplify the use of SharedPreferences.
One of the most significant items of the Effective Java book is Item 18: Favor composition over inheritance. Let’s see how Kotlin promotes this with class delegation.
When designing a library, minimizing your API surface – the types, methods, properties, and functions you expose to the outside world – is a great idea. This doesn’t apply to just libraries: it’s a consideration you should make for every module in a multi-module project.