Software development

From Java to Kotlin – Part X: Virtual Threads and Coroutines

Posted on by  
Justus Brugman

Considering a move to Kotlin? Coming from a Java background? In this short series of blog posts, I’ll take a look at familiar, straightforward Java concepts and demonstrate how you can approach them in Kotlin. While many of these points have already been discussed in earlier posts by colleagues, my focus is simple: how you used to do it in Java, and how you do it in Kotlin.

Case 10: You need to do many things at once. Mostly waiting. Sometimes working.

Continue reading →

From Java to Kotlin – Part IX: Statics and Companion Objects

Posted on by  
Justus Brugman

Considering a move to Kotlin? Coming from a Java background? In this short series of blog posts, I’ll take a look at familiar, straightforward Java concepts and demonstrate how you can approach them in Kotlin. While many of these points have already been discussed in earlier posts by colleagues, my focus is simple: how you used to do it in Java, and how you do it in Kotlin.

Case 9: You need something that belongs to the class. Not to an instance.

Continue reading →

From Java to Kotlin – Part VIII: The Ternary operator vs the Elvis Operator

Posted on by  
Justus Brugman

Considering a move to Kotlin? Coming from a Java background? In this short series of blog posts, I’ll take a look at familiar, straightforward Java concepts and demonstrate how you can approach them in Kotlin. While many of these points have already been discussed in earlier posts by colleagues, my focus is simple: how you used to do it in Java, and how you do it in Kotlin.

Case 8: You want a sensible default.

If something is missing. Or null. Or both.

Continue reading →

From Java to Kotlin – Part VII: Null Safety

Posted on by  
Justus Brugman

Considering a move to Kotlin? Coming from a Java background? In this short series of blog posts, I’ll take a look at familiar, straightforward Java concepts and demonstrate how you can approach them in Kotlin. While many of these points have already been discussed in earlier posts by colleagues, my focus is simple: how you used to do it in Java, and how you do it in Kotlin.

Case 7: Nulls exist.

Ignoring them doesn’t make them go away.

Continue reading →

From Java to Kotlin – Part VI: Higher-Order Functions Without Fear

Posted on by  
Justus Brugman

Considering a move to Kotlin? Coming from a Java background? In this short series of blog posts, I’ll take a look at familiar, straightforward Java concepts and demonstrate how you can approach them in Kotlin. While many of these points have already been discussed in earlier posts by colleagues, my focus is simple: how you used to do it in Java, and how you do it in Kotlin.

Case 6: Passing functions around sounds scary.

Until you try it.

Continue reading →

From Java to Kotlin – Part V: Switch vs When

Posted on by  
Justus Brugman

Considering a move to Kotlin? Coming from a Java background? In this short series of blog posts, I’ll take a look at familiar, straightforward Java concepts and demonstrate how you can approach them in Kotlin. While many of these points have already been discussed in earlier posts by colleagues, my focus is simple: how you used to do it in Java, and how you do it in Kotlin.

Case 5: Java has switch. Kotlin has when.

Continue reading →

From Java to Kotlin – Part IV: Copying objects

Posted on by  
Justus Brugman

Considering a move to Kotlin? Coming from a Java background? In this short series of blog posts, I’ll take a look at familiar, straightforward Java concepts and demonstrate how you can approach them in Kotlin. While many of these points have already been discussed in earlier posts by colleagues, my focus is simple: how you used to do it in Java, and how you do it in Kotlin.

Case 4: Copying objects should be easy.

And safe. And boring.

Continue reading →

From Java to Kotlin – Part III: Default Values and Named Arguments

Posted on by  
Justus Brugman

Considering a move to Kotlin? Coming from a Java background? In this short series of blog posts, I’ll take a look at familiar, straightforward Java concepts and demonstrate how you can approach them in Kotlin. While many of these points have already been discussed in earlier posts by colleagues, my focus is simple: how you used to do it in Java, and how you do it in Kotlin.

Case 3: Constructors are supposed to be simple.

Java sometimes seems to disagree.

Continue reading →

From Java to Kotlin – Part II: Boring Data Classes

Posted on by  
Justus Brugman

Considering a move to Kotlin? Coming from a Java background? In this short series of blog posts, I’ll take a look at familiar, straightforward Java concepts and demonstrate how you can approach them in Kotlin. While many of these points have already been discussed in earlier posts by colleagues, my focus is simple: how you used to do it in Java, and how you do it in Kotlin.

Case 2: You need a simple object.

Just data. No behavior. No clever tricks.

And yet, Java somehow turns this into a small project.

Continue reading →

From Java to Kotlin – Part I: String extensions without the boilerplate

Posted on by  
Justus Brugman

Considering a move to Kotlin? Coming from a Java background? In this short series of blog posts, I’ll take a look at familiar, straightforward Java concepts and demonstrate how you can approach them in Kotlin. While many of these points have already been discussed in earlier posts by colleagues, my focus is simple: how you used to do it in Java, and how you do it in Kotlin.

Case 1: You are working on an application in Java and you need a reusable way to modify a String.

Nothing fancy. No frameworks. Just a small helper.

Continue reading →

shadow-left