Dal 1 febbraio 2021, in collaborazione con CGM Consulting, partirà il mio corso di programmazione Android destinato a tutti coloro che si stanno avvicinando al mondo della programmazione mobile: https://bit.ly/corso-android-ivan-morgillo Anche se sei già un dev, c’è sempre la possibilità di aiutare qualche amico o amica interessati ad una carriera come Android Dev 😉 Il…
D’oh!! There is no copy method for Sealed Classes in Kotlin!
A few weeks ago we looked at one of my pain points of working with Kotlin Data Classes: nested copy and we improved on a basic Kotlin solution using a Lens. Today we look at another type of nesting: Sealed Classes nesting. When we wanted to create some sort of restricted hierarchy in Java we…
How to fix the pain of modifying Kotlin nested data classes
When Kotlin arrived a few years ago one of the selling points was immutability: In object-oriented and functional programming, an immutable object (unchangeable object) is an object whose state cannot be modified after it is created. https://en.wikipedia.org/wiki/Immutable_object This is very cool! Value objects are such a huge help when it comes to reasoning about code, safety and avoiding weird subtle misbehaviours due to “things…
IntelliJ IDEA / Android Studio Tricks: Surround With
In one of my previous posts I wrote about one of my favorite features of IntelliJ IDEA/AS: Live Templates. “Surround With” is a sort of LT’s cousin. When you want to wrap a piece of code with a specific snippet, you select the code and hit the “Surround With” shortcut. On Mac you can access…
IntelliJ IDEA / Android Studio Tricks: Live Templates
One of my favorite features of IDEA are Live Templates. To give you a bit of context, Live Templates are those things you see appearing when you start typing in IDEA 😂 OK OK, let’s be a bit more precise. If you are writing some Java code and you type foreach and then press TAB,…
My IntelliJ Plugin Collection – Kotlin Fill class
I spend on average 8 hours a day using Intellij and, over the years I created quite a collection of useful plugins. This is the first article of a series where I will present all the plugins I use every day 😄 Kotlin Fill Class One of the Kotlin tools I use every day are…
Can I loop over a Kotlin Sealed Class?
As an Android developer, I constantly write API clients: 90% of all mobile apps fetch some JSON, parse it and show it in a list ¯\_(ツ)_/¯ To keep a clear separation between what’s coming from the network and what I want in my domain, I usually have a DTO and a Domain Model. DTO and…