Kotlin for iOS Developers Training Course


Kotlin is a modern, functional and object-oriented programming language based on Java.

In this instructor-led, live training, participants will learn Kotlin programming as they step through the creation of an Android app based on an existing iOS app.

By the end of this training, participants will be able to:

  • Understand the fundamental concepts of Kotlin programming by leveraging Swift and iOS knowledge.
  • Construct an Android UI using Kotlin.


  • iOS and Swift Developers interested in moving their apps to Android using Kotlin

Format of the course

  • Part lecture, part discussion, exercises and heavy hands-on practice


  • Experience with Swift programming

Course Outline


Setting Up the Tools for Kotlin

  • Using the Command Line Tools
  • Installing the JDK for Kotlin
  • Installing and Setting Up the IDE: IntelliJ
  • Installing the Plugins

Setting Up the Tools for Android Development

  • Installing Android Studio
  • Starting a New Project
  • Setting Up the Emulator
  • Setting Up the Library

Setting Up Kotlin in Android

Getting Started with Kotlin and the Kotlin Syntax

  • Overview of Kotlin
  • Learning the Kotlin Architecture
  • Learning the Kotlin Syntax
  • Using Key Features of Kotlin

Comparing Similarities and Differences of Kotlin and Swift

  • Basics
  • Arrays
  • Dictionaries

Digging Deep into Programming with Kotlin vs. Swift

  • Learning the Types of Classes
  • Creating a Class
  • Adding Methods to Classes
  • Defining Basic Constructors
  • Using Named Parameters and Default Values
  • Using Open Classes to Allow Inheritance
  • Creating, Declaring, and Using Functions in Kotlin
  • Using Parameters and Returning a Value
  • Creating and Using Interfaces
  • Using Enumerations
  • Understanding Generics
  • Implementing a Generic Stack
  • Using Generic Functions
  • Using Extension Functions

Working with Java from Kotlin and Vice Versa

Working with the Data Layer

  • Overview of the Network Layer
  • Using Entities and Endpoints
  • Implementing Network Interactors
    • GET Articles
    • POST Articles
    • Finalize
  • Setting Up Room for SQLite Database
  • Working with Realm Database
  • Implementing Common Tasks on the Data Layer

Understanding the Application Life Cycle of Android vs. iOS

  • Simple
  • Complex
  • Threading

Using XML UI Layout

  • Overview of Common UI Components Between Apple and Android
  • Adding UI Events
  • Creating an Activity
  • Using the RecyclerView


Summary and Conclusion

Leave a Reply

Your email address will not be published. Required fields are marked *