Kotlin Programming Training
In this Kotlin programming course, student will quickly get started programming in Kotlin.
Public Classes: Delivered live online via WebEx and guaranteed to run . Join from anywhere!
Private Classes: Delivered at your offices , or any other location of your choice.
- Learn Kotlin basics.
- Build applications to run on the JVM and Android devices.
- Kotlin: What and Why
- Main Traits of Kotlin
- Kotlin Basics
- Basic Elements/Hello World!
- Classes and Properties
- Representing and Handling Choices: enums and "when"
- Iterating over Things: "while" and "for" Loops
- Defining and Calling Functions
- Creating Collections in Kotlin
- Making Functions Easier to Call
- Adding Methods
- Working with Collections: varargs, infix calls, and library support
- Working with Strings and Regular Expressions
- Classes, Objects, and Interfaces
- Defining Class Hierarchies
- Declaring a Class with Nontrivial Constructors or Properties
- Compiler-Generated Methods: Data Classes and Class Delegation
- Declaring a Class and Creating an Instance, Combined, with the Object Keyword
- Programming with Lambdas
- Lambda Expression and Member References
- Functional APIs for Collections
- Lazy Collection Operations: Sequences
- Using Java Functions Interfaces
- Lambdas with Receivers: with and apply
- The Kotlin Type System
- Primitive and Other Basic Types
- Collection and Arrays
- Operator Overloading and Other Conventions
- Overloading Arithmetic Operators
- Overloading Compound Assignment Operators
- Conventions Used for Collections and Ranges
- Destructuring Declarations and Component Functions
- Reusing Property Accessor Logic: Delegated Properties
- Higher-order Functions: Lambdas as Parameters and Return Values
- Declaring Higher-order Functions
- Inline Functions: Removing the Overhead of Lambdas
- Control Flow in Higher-order Functions
- Generic Type Parameters
- Generics at Runtime: Erased and Reified Type Parameters
- Variance: Generics and Subtyping
- Annotations and Reflection
- Declaring and Applying Annotations
- Reflection: Introspecting Kotlin Objects at Runtime
- DSL Construction
- From APIs to DSLs
- Building Structured APIs: Lambdas with Receiver in DSLs
- More Flexible Block Nesting with the invoke Convention
- Kotlin DSL in Practice
Each student in our Live Online and our Onsite classes receives a comprehensive set of materials, including course notes and all the class examples.
Experience in the following is required for this Kotlin class:
- A strong Java programming background is essential for this course