Kotlin In-depth [Vol-II]: A comprehensive guide to modern multi-paradigm language (English Edition) - Softcover

Book 2 of 2: Kotlin In-Depth

Sedunov, Aleksei

 
9789389423228: Kotlin In-depth [Vol-II]: A comprehensive guide to modern multi-paradigm language (English Edition)

Synopsis

Master the concise and expressive power of a pragmatic multi-paradigm language for JVM, Android and beyond

Key Features

  • Language fundamentals
  • Object-oriented and functional programming with Kotlin
  • Kotlin standard library
  • Building domain-specific languages
  • Using Kotlin for Web development
  • Kotlin for Android platform
  • Coroutine-based concurrency

  • Description
    The purpose of this book is to guide a reader through the capabilities of the Kotlin language and give examples of using it for development of various applications be it desktop, mobile or Web. Although our primary focus is on the JVM and Android, the knowledge we’re sharing here to various extents applies to other Kotlin-supported platforms such as JavaScript, native and even multi-platform applications.The book starts with an introduction to language and its ecosystem that will give you an understanding of the key ideas behind Kotlin design, introduce you to the Kotlin tooling and present you the basic language syntax and constructs. In the next chapters we’ll get to know the multi-paradigm nature of Kotlin which allows you to create powerful abstractions by combining various aspects of functional and object-oriented programming. We’ll talk about using common Kotlin APIs such as the standard library, reflection, and coroutine-based concurrency as well as the means for creating your own flexible APIs based on domain-specific languages. In the concluding chapters, we’ll give examples of using Kotlin for more specialized tasks such as testing, building Android applications, Web development and creating microservices.

    What will you learn
    By the end of the book, you’ll obtain a thorough knowledge of all basic aspects of Kotlin programming. You’ll be able to create a flexible and reusable code by taking advantage of object-oriented and functional features, use Kotlin standard library, compose your own domain-specific languages, write asynchronous code using Kotlin coroutines library as well. You’ll also have a basic understanding of using Kotlin for writing test code, web applications and Android development. This knowledge will also give you a solid foundation for deeper learning of related development platforms, tools and frameworks.

    Who this book is for
    The book is primarily aimed at developers familiar with Java and JVM and willing to get a firm understanding of Kotlin while having little to no experience in that language. Discussion of various language features will be accompanied, if deemed necessary, by comparisons with their Java’s analogs which should simplify Java-to-Kotlin transition. Most of the material, however, is rather Java-agnostic and should be beneficial even without prior Java knowledge. In general, experience in object-oriented or functional paradigm is a plus, but not required.

    Table of Contents
    10. Annotations and Reflection
    11. Domain-Specific Languages
    12. Java Interoperability
    13. Concurrency
    14. Testing with Kotlin
    15. Android Applications
    16. Web Development with Ktor
    17. Building Microservices

    About the Author
    Aleksei Sedunov has been working as a Java developer since 2008. After joining JetBrains in 2012 he’s been actively participating in the Kotlin language development focusing on IDE tooling for the IntelliJ platform. Currently, he’s working in a DataGrip team, a JetBrains Database IDE, carrying on with using Kotlin as the main development tool.

    His LinkedIn Profile: https://www.linkedin.com/in/alexey-sedunov-8554a530/

    "synopsis" may belong to another edition of this title.

    About the Author

    Aleksei Sedunov has been working as a Java developer since 2008. After joining JetBrains in 2012 he’s been actively participating in the Kotlin language development focusing on IDE tooling for the IntelliJ platform. Currently, he’s working in a DataGrip team, a JetBrains Database IDE, carrying on with using Kotlin as the main development tool.

    "About this title" may belong to another edition of this title.