Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying Kotlin for Java Developers
  • Table Of Contents Toc
Kotlin for Java Developers

Kotlin for Java Developers

By : José Dimas Luján Castillo, Ron Veen
close
close
Kotlin for Java Developers

Kotlin for Java Developers

By: José Dimas Luján Castillo, Ron Veen

Overview of this book

This book is a hands-on programming guide for Java developers who want to gain practical, production-ready knowledge of Kotlin. Whether you’re maintaining Java systems or adopting Kotlin for Android, backend, or cross-platform projects, it will help you bridge the gap by building on your existing understanding of Java’s syntax and design principles. You’ll begin by learning why Kotlin was created and how it improves on Java – exploring types, expressions, control flow, and null handling while mapping each concept to familiar Java constructs. Each topic is introduced with clear purpose, showing how Kotlin’s concise syntax, safety features, and expressive APIs lead to cleaner, more maintainable code. As you progress, you’ll master object-oriented and functional programming, extension functions, smart casting, and interoperability with Java. The second half of the book dives into generics, data and sealed classes, coroutines for concurrency, and DSL design – demonstrating when and why to use these features to build scalable, elegant solutions. By the end, you’ll not only write idiomatic Kotlin but also understand the reasoning behind its design, enabling you to craft modern, reliable applications with confidence.
Table of Contents (22 chapters)
close
close
Lock Free Chapter
1
Getting Started with Kotlin
6
Object-Oriented Programming
10
Functional Programming
14
Coroutines, Testing and DSLs
20
Other Books You May Enjoy
21
Index

What is a coroutine?

To simplify what a coroutine is, let’s first look at the official definition: “A coroutine is an instance of a suspendable computation.” While technically accurate, it may seem too abstract. Instead, let’s break it down with a practical and relatable analogy.

Imagine you are dining at a restaurant. A waiter comes to your table, takes your food order, and heads to the kitchen to pass the order on to the chefs. Now, imagine the waiter stays in the kitchen, doing nothing but waiting for your food to be prepared. This would be inefficient, as the waiter could be serving drinks, attending to other tables, or bringing bread to your table while the food is being cooked.

A smarter approach is for the waiter to leave the instructions with the kitchen staff and return to attend to other customers or tasks. Once your food is ready, the kitchen would alert the waiter, who would promptly bring the dishes to your table.

This efficiency...

CONTINUE READING
83
Tech Concepts
36
Programming languages
73
Tech Tools
Icon Unlimited access to the largest independent learning library in tech of over 8,000 expert-authored tech books and videos.
Icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Icon 50+ new titles added per month and exclusive early access to books as they are being written.
Kotlin for Java Developers
notes
bookmark Notes and Bookmarks search Search in title playlist Add to playlist download Download options font-size Font size

Change the font size

margin-width Margin width

Change margin width

day-mode Day/Sepia/Night Modes

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY

Submit Your Feedback

Modal Close icon
Modal Close icon
Modal Close icon