Kotlin Coroutines by Tutorials: Mastering Coroutines in Kotlin and Android, 2nd Edition

Kotlin Coroutines by Tutorials: Mastering Coroutines in Kotlin and Android, 2nd Edition

eBook Details:

  • Paperback: 352 pages
  • Publisher: WOW! eBook (September 30, 2019)
  • Language: English
  • ISBN-10: 1942878958
  • ISBN-13: 978-1942878957

eBook Description:

Kotlin Coroutines by Tutorials: Mastering Coroutines in Kotlin and Android, 2nd Edition: Up to date for Android 10, Android Studio 3.5 & Kotlin 1.3

Android is inherently asynchronous and event-driven, with strict requirements as to on which thread certain things can happen. Learn how to use Kotlin coroutines to solve common Android programming problems using asynchronous programming techniques!

Executing background tasks has always been a big challenge in every environment and, in particular, on mobile devices where resources are limited. Kotlin has simplified the way you can write code improving your productivity with a new programming paradigm, enhancing object-oriented and functional programming with with simple, powerful and new constructs. Coroutines are one of these!

The importance of concurrency is discovered quite early on by people who start with Android development. Android is inherently asynchronous and event-driven, with strict requirements as to on which thread certain things can happen.

Add to this the often-cumbersome Java callback interfaces, and you will be trapped in spaghetti code pretty quickly (aptly termed as “Callback Hell”). No matter how many coding patterns you use to avoid that, you will have to encounter the state change across multiple threads in one way or the other.

The only way to create a responsive app is by leaving the UI thread as free as possible, letting all the hard work be done asynchronously by background threads.

Kotlin Coroutines by Tutorials, 2nd Edition will teach you the techniques you need to solve common programming problems using asynchronous programming.

DOWNLOAD

Leave a Reply

Your email address will not be published. Required fields are marked *