Course Outline
Introduction
Review of Kotlin Fundamentals
Applying Advanced Functions in Kotlin
- Utilizing Nested Functions to Enhance Reusability in Kotlin
- Employing Infix Notation for Function Invocation in Kotlin
- Declaring Anonymous Functions within Kotlin
- Enhancing Performance with the Inline Modifier in Kotlin
- Managing Returns and Local Returns in Advanced Function Scenarios
- Optimizing Code with Tail Recursion in Kotlin
- Applying Operator Overloading Techniques in Kotlin
- Using Lambdas with Receivers to Define DSL Restrictions in Kotlin
- Managing Instance Invocation in Kotlin
- Leveraging Functional Constructs in Kotlin
- Function Composition
- Currying
- Additional Functional Constructs
- Overview of Advanced Functional Capabilities in Kotlin
Investigating Class Patterns in Kotlin
- Configuring Fields in Kotlin
- Implementing the "lateinit" Modifier in Kotlin
- Distinguishing Between Nested and Inner Classes in Kotlin
- Creating "Static Methods" via Companion Objects in Kotlin
- Encapsulating Class Constructors in Kotlin
- Defining Sealed Classes in Kotlin
- Applying Type Aliases in Kotlin
- Recap of Advanced Class Features in Kotlin
Applying Delegation Strategies in Kotlin
- Comprehending Member Delegation Concepts in Kotlin
- Redirecting Member Functions to External Classes in Kotlin
- Improving Code Reuse through Property Delegation in Kotlin
- Leveraging Built-in Delegated Properties in Kotlin
- Delegating Local Properties to Enhance Reusability in Kotlin
- Creating Extension Properties for Classes in Kotlin
- Summary of Diverse Delegation Aspects in Kotlin
Mastering Generics in Kotlin
- Interpreting Generic Constraints
- Understanding Variance and Invariance within Generics
- Expressing Covariance using the "out" Modifier in Kotlin
- Implementing Contravariance in Kotlin
- Exploring Type Projections and Star Projections in Kotlin
- Recap of Advanced Generic Usage in Kotlin
Metaprogramming with Kotlin
- Overview of Reflection Mechanisms
- Integrating Java Reflection via the Kotlin Reflection API
- Utilizing the Native Kotlin Reflection API
- Addressing Type Erasure Challenges in Kotlin
- Applying Reified Generics in Kotlin
- Designing Custom Annotations in Kotlin
- Recap of Metaprogramming and Introspection Strategies in Kotlin
Executing Asynchronous Programming in Kotlin
- Identifying Challenges in Asynchronous Programming
- Implementing Coroutines for Asynchronous Tasks in Kotlin
- Implementing Async and Await Patterns Using Coroutines
- Utilizing Yield Operations in Kotlin
- Evaluating the Benefits of Coroutines over Reactive Extensions
- Recap of Coroutine Implementation in Kotlin
Conclusion and Final Review
Requirements
- Familiarity with the fundamental concepts of Kotlin.
Target Audience
- Developers seeking to deepen their expertise in Kotlin programming.
Testimonials (7)
As a Senior Java Engineer and Kotlin novice, I feel the course has given me the tools to start using Kotlin properly for future development projects.
Stewart Coates - DLA PIPER
Course - Advanced Kotlin Programming
Intensity of a course, coverage of topics. Complicated topics are explained on a good level, so even though there are some white spots left in of them (like DSL) -- it won't be hard to go on by myself as I already have a common understanding of basis and at least know how to form my questions to Google.
Alexey Baryshnev - C.T.Co SIA
Course - Advanced Kotlin Programming
A format - lot of new info, but it felt pretty understandable and comfortable to learn, most of it I managed to remember and use when necessary at the next topics.
Alina Karpovich - C.T.Co SIA
Course - Advanced Kotlin Programming
Trainer competence, wide subject knowledge. I have learned a lot new stuff, received valuable comments and answers to my questions.
Ilya Ginter - C.T.Co SIA
Course - Advanced Kotlin Programming
live communication and good answers to questions
Alexander Semyonov - C.T.Co SIA
Course - Advanced Kotlin Programming
Execute exercises in mode online, it is cool. Fast answer about additional questions
Oleg Sushik - C.T.Co SIA
Course - Advanced Kotlin Programming
Positive approach