Kotlin is a powerful language that has already revolutionized Android and backend development, but it also has powerful support for functional programming. Its amazing features, like functional collection processing, DSL builders, scope functions, or context receivers, help developers achieve intuitive and expressive functional syntax. Additionally, Kotlins extensibility allows libraries like Arrow to promote an even more functional style, all while keeping proper type safety, stability, and performance. Thanks to all this, Kotlin has become the promised land for many developers who are passionate about functional programming in real-life applications.
This book is about Kotlins functional programming features. It covers the essentials first and then builds on them. It presents important and practical topics like collection processing, function references, scope functions, DSL usage and creation, and context receivers.
WHO IS THIS BOOK FOR?
This book is perfect for developers who know the basics of Kotlin and want to learn more advanced features. Math knowledge is NOT required to understand and benefit from this book. It is a natural continuation of Kotlin Essentials.
WHAT IS COVERED?
This book focuses on Kotlins functional features, including:
Generic variance modifiers
Covariant Nothing Object pattern
Generic variance modifier limitations
Interface delegation
Implementing custom property delegate
Property delegates from Kotlin stdlib
Kotlin Contracts
Kotlin and Java type mapping
Annotations for Kotlin and Java interoperability
Multiplatform development structure, concepts and possibilities
Implementing multiplatform library
Implementing Android and iOS applications with shared module
Essentials of Kotlin/JS
Reflecting Kotlin elements
Reflecting Kotlin types
Implementing custom Annotation Processor
Implementing custom Kotlin Symbol Processor
KSP incremental compilation and multiple round processing
Defining Compiler Plugin
Core Static Analysis concepts
Overview of Kotlin static analyzers
Defining custom Detekt rule
This book is full of example projects, including:
Type-safe task update class using Covariant Nothing Object pattern (Generic variance modifiers chapter)
Logging property delegate (Property delegation chapter)
Object serializer (Reflection chapter)
Random value generator for generic types (Reflection chapter)
Annotation Processor generating interface for a class (Annotation Processing chapter).
Kolin Symbol Processor generating interface for a class (Kotlin Symbol Processing chapter).
Detekt rule finding System.out.println usage.
Informacja dotycząca wprowadzenia produktu do obrotu:
Ten produkt został wprowadzony na rynek przed 13 grudnia 2024 r. zgodnie z obowiązującymi wówczas przepisami (Dyrektywą o ogólnym bezpieczeństwie produktów). W związku z tym może on być nadal sprzedawany bez konieczności dostosowania do nowych wymogów wynikających z Rozporządzenia o Ogólnym Bezpieczeństwie Produktów (GPSR). Produkt zachowuje pełną legalność w obrocie, a jego jakość i bezpieczeństwo pozostają zgodne z obowiązującymi wcześniej standardami.
Information regarding product placement on the market:
This product was placed on the market before December 13, 2024, in accordance with the applicable regulations at the time (the General Product Safety Directive). As a result, it can continue to be sold without needing to meet the new requirements introduced by the General Product Safety Regulation (GPSR). The product remains fully compliant with all previously valid legal standards, ensuring its continued quality and safety.