Providing Technology Training and Mentoring For Modern Technology Adoption
Web Age Aniversary Logo
US Inquiries / 1.877.517.6540
Canadian Inquiries / 1.877.812.8887
Course #:TP2910

Introduction to Kotlin Training

In response to Google’s Kotlin-first policy for Android, every team doing Android development needs to consider Kotlin. This three-day course is an in-depth introduction to the Kotlin language. This course is appropriate for developers who already know Java and Android or those wishing to learn the Kotlin Language. This course does not teach Android development fundamentals focusing rather on the Kotlin Language.

Objectives

After completing this course, students will be able to:

  • Understand Kotlin language fundamentals
  • Create Kotlin Classes and Objects
  • Use Kotlin Generics
  • Implement Concurrency with Coroutines
  • Add Kotlin code to existing Android applications
  • Use Kotlin APIs in Android
  • Build an Android application entirely in Kotlin

Duration

Four days

Outline of Introduction to Kotlin Training

Chapter 1. Kotlin Overview

  • History of Kotlin
  • Why Kotlin?
  • Characteristics of Kotlin
  • Tools

Chapter2. Variables and Data Types

  • Mutable and Immutable Variables
  • Types and Type Inference
  • Arrays
  • Type Conversion

Chapter 3. Operators and Control Flow

  • Operators
  • Conditionals
  • Loops
  • Break and Continue

Chapter 4. Null Safety

  • The Problem with Java
  • Safe Call Operator
  • Elvis Operator
  • Not Null Assertion

Chapter 5. Object Orientation

  • Classes and Objects
  • Construction and Initialization
  • Getters and Setters
  • Operator Overloading

Chapter 6. Advanced Object Orientation

  • Companion Objects
  • Property References
  • Function References
  • Java-style Reflection

Chapter 7. Extensions

  • Extension Functions
  • Nullable Receiver
  • Extension Properties
  • Scope

Chapter 8. Mixing Kotlin and Java

  • Call Kotlin from Java
  • Call Java from Kotlin
  • Convert Java to Kotlin
  • Null Safety and Java

Chapter 9. Functions and Lambdas

  • Higher Order Functions
  • Function Types
  • Lambdas
  • Closures

Chapter 10. Generics

  • Variance and Covariance
  • Type Projections
  • Generic Functions
  • Type Erasure

Chapter 11. Collections

  • Lists
  • Sets
  • Maps
  • Sequences

Chapter 12. More Collections

  • Extension Functions
  • Sequences
  • Transformations
  • Operators

Chapter 13. I/O

  • Streaming I/o
  • Reading Files
  • Writing Files
  • Sockets

Chapter 14. Concurrency

  • Coroutines and Threads
  • Dispatch
  • Channels
  • Shared Mutable State

Chapter 15. Kotlin Web Services

  • RESTful Web Services
  • Kotlin and Spring Boot
  • Build a Simple Web Service

Chapter 16. Other Platforms

  • Overview
  • Platforms
  • Hello Native World!
  • Applications

Chapter 17. Database Access

  • Exposed (library)
  • Supported RDBMS
  • Data Sources
  • Examples

Chapter 18. Kotlin for Production

  • Unit Testing
  • ktlint
  • Debugging

Chapter 19. Kotlin Android

  • Add Kotlin to an Existing Android App
  • Create an app in Kotlin
  • Debug and Run a Kotlin App
  • Add Java to a Kotlin App

Chapter 20. Other Platforms

  • Native
  • JavaScript
  • Swift/Objective C



We regularly offer classes in these and other cities. Atlanta, Austin, Baltimore, Calgary, Chicago, Cleveland, Dallas, Denver, Detroit, Houston, Jacksonville, Miami, Montreal, New York City, Orlando, Ottawa, Philadelphia, Phoenix, Pittsburgh, Seattle, Toronto, Vancouver, Washington DC.
US Inquiries / 1.877.517.6540
Canadian Inquiries / 1.877.812.8887