Get in Touch

Course Outline

Introduction

Kotlin Basics Refresher

Utilizing Advanced Functions in Kotlin

  • Employing Nested Functions to Reuse Functionality in Kotlin
  • Applying Infix Notation for Function Calls in Kotlin
  • Declaring Anonymous Functions in Kotlin
  • Leveraging the Inline Modifier for Efficiency in Kotlin
  • Implementing Returns and Local Returns with Advanced Functions in Kotlin
  • Applying Tail Recursion for Optimization in Kotlin
  • Utilizing Operator Overloading in Kotlin
  • Using Lambdas with Receivers to Impose Constraints on DSLs in Kotlin
  • Invoking Instances in Kotlin
  • Applying Functional Constructs in Kotlin
    • Function Composition
    • Currying
    • Other Constructs
  • Overview of Advanced Functional Aspects of Kotlin

Exploring Class Scenarios in Kotlin

  • Implementing Fields in Kotlin
  • Using the "lateinit" Modifier in Kotlin
  • Understanding Nested and Inner Classes in Kotlin
  • Defining "Static Methods" in Kotlin via Companion Objects
  • Hiding Class Constructors in Kotlin
  • Marking Classes as Sealed in Kotlin
  • Using Type Aliases in Kotlin
  • Overview of Advanced Features of Kotlin for Classes

Implementing Delegation in Kotlin

  • Understanding Member Delegation in Kotlin
  • Delegating Member Functions to Another Class in Kotlin
  • Delegating Properties in Kotlin for Efficient Code Reuse
  • Utilizing Built-in Delegated Properties in Kotlin
  • Delegating Local Properties in Kotlin for Code Reuse
  • Implementing Extension Properties in Classes in Kotlin
  • Overview of the Different Aspects of Delegation in Kotlin

Gaining an In-Depth Understanding of Generics in Kotlin

  • Understanding Generic Constraints
  • Understanding Variance and Invariance in Generics
  • Using the "out" Modifier to Express Covariance in Generics in Kotlin
  • Expressing Contravariance in Kotlin
  • Exploring Type Projections and Star Projections in Kotlin
  • Overview of Advanced Generics in Kotlin

Metaprogramming in Kotlin

  • Reflection Overview
  • Using Java Reflection with Kotlin via the Reflection API
  • Using Kotlin's Reflection API
  • Handling Type Erasure in Kotlin
  • Using Reified Generics in Kotlin
  • Defining Custom Annotations in Kotlin
  • Overview of Metaprogramming and Introspection Techniques in Kotlin

Performing Asynchronous Programming in Kotlin

  • Understanding the Challenges of Asynchronous Programming
  • Implementing Asynchronous Programming and Coroutines in Kotlin
  • Implementing Async and Await in Kotlin Using Coroutines
  • Implementing Yield in Kotlin
  • Understanding the Advantages of Coroutines Over Reactive Extensions
  • Overview of Coroutines in Kotlin

Summary and Conclusion

Requirements

  • Foundational knowledge of Kotlin

Target Audience

  • Developers seeking to deepen their expertise in Kotlin programming
 21 Hours

Number of participants


Price per participant

Testimonials (7)

Upcoming Courses

Related Categories