Introduction to Kotlin

Level: Foundation

Learn Kotlin to increase developer efficiency and the creation of powerful full-stack applications on a wide range of platforms. Kotlin is one of the fastest growing programming languages due to its streamlined syntax, powerful type safe constructs and being able to target multiple runtime platforms. Kotlin allows developers to mix object and function oriented programming styles to deliver efficient, clear, readable code. Gain experience building Kotlin functions and classes and efficient, safe asynchronous code using coroutines.

Key Features of this Introduction to Kotlin Course:

  • After-course instructor coaching benefit
  • After-course computing sandbox included
  • Learning Tree end-of-course exam included

You Will Learn How To:

  • Rapidly develop feature-rich applications using Kotlins elegant features
  • Optimally structure code by combining OO and functional techniques
  • Access features in Java and cross-platform libraries
  • Produce robust cross-platform non-blocking applications with coroutines
  • Eliminate null pointer exceptions with Kotlin's robust null type system
  • Efficiently manipulate type-safe data with mutable and immutable collections

Choose the Training Solution That Best Fits Your Individual Needs or Organisational Goals


In Class & Live, Online Training

  • 3-day instructor-led training course
  • One-on-one after-course instructor coaching
  • Pay later by invoice -OR- at the time of checkout by credit card
View Course Details & Schedule

Standard £1695




Team Training

  • Bring this or any training to your organisation
  • Full - scale program development
  • Delivered when, where, and how you want it
  • Blended learning models
  • Tailored content
  • Expert team coaching

Customize Your Team Training Experience


Save More on Training with Learning Tree Training Vouchers!

Our flexible, easy-to-redeem training vouchers are available to any employee within your organisation. For details, please call 0800 282 353 or chat live.

In Class & Live, Online Training

Note: This course runs for 3 Days *

*Events with the Partial Day Event clock icon run longer than normal but provide the convenience of half-day sessions.

  • 4 - 6 Nov 9:00 AM - 4:30 PM GMT London / Online (AnyWare) London / Online (AnyWare) Reserve Your Seat

  • 10 - 12 Feb 9:00 AM - 4:30 PM GMT London / Online (AnyWare) London / Online (AnyWare) Reserve Your Seat

  • 12 - 14 May 9:00 AM - 4:30 PM BST London / Online (AnyWare) London / Online (AnyWare) Reserve Your Seat

  • 19 - 21 Aug 2:00 PM - 9:30 PM BST Online (AnyWare) Online (AnyWare) Reserve Your Seat

  • 14 - 16 Oct 2:00 PM - 9:30 PM BST New York / Online (AnyWare) New York / Online (AnyWare) Reserve Your Seat

  • 18 - 20 Nov 2:00 PM - 9:30 PM GMT Herndon, VA / Online (AnyWare) Herndon, VA / Online (AnyWare) Reserve Your Seat

  • 13 - 15 Jan 2:00 PM - 9:30 PM GMT New York / Online (AnyWare) New York / Online (AnyWare) Reserve Your Seat

  • 17 - 19 Feb 2:00 PM - 9:30 PM GMT Herndon, VA / Online (AnyWare) Herndon, VA / Online (AnyWare) Reserve Your Seat

Guaranteed to Run

When you see the "Guaranteed to Run" icon next to a course event, you can rest assured that your course event — date, time — will run. Guaranteed.

Partial Day Event

Learning Tree offers a flexible schedule program. If you cannot attend full day sessions, this option consists of four-hour sessions per day instead of the full-day session.

Important Introduction to Kotlin Course Information

  • Recommended Experience

    Knowledge of one of Java, JavaScript, C, C++ or C#

  • Who Should Attend This Course

    People with Previous programming experience

Introduction to Kotlin Course Outline

  • Introduction to Kotlin Programming

    • The benefits of Kotlin
    • Kotlin’s relationship with Java
    • Multi-platform development
    • Configuring an environment
  • Kotlin Basics

    • Language syntax
      • Declaring and initialising variables and constants
      • The Kotlin type system
    • Null Protection
      • Nullable and non-nullable variables
      • Preventing accidental null pointer access with the Elvis operator
      • Converting types with not null assertions
    • String Handling
      • Building string templates
      • Eliminating escaping with raw strings
      • Declaring and invoking functions
      • Operator overloading
    • Flow control
      • Generating repeating and conditional content
      • Handling exceptions with try and catch
      • Verifying when a value is in a range
    • Organising Code
      • Invoking functions
      • Creating objects
      • Destructuring declarations
  • Kotlin Functions

    • Functional programming techniques
      • Packages and Modules
      • Styles of function declaration
      • Default parameters
      • In-line functions
    • Higher-Order Functions
      • Lambda expressions
      • The ‘it’ parameter
      • Inline functions
  • Classes and Inheritance

    • Defining classes
      • Properties and Fields
      • Visibility Modifiers
      • Constructors and Initialization
    • Inheritance and Interfaces
      • Abstract classes and Interfaces
      • Extending classes
      • Extension Functions
      • Sealed and Data classes
    • Object interaction
      • Sharing data with companion objects
      • Property delegation
      • Type casting and conversion
      • Smart casts
  • Collections

    • Type-safe data manipulation
      • Collection types List, Set and Map
      • Generics
      • Pairs and Triples
    • Manipulating data with Kotlin collections
      • Mutable and immutable collections
      • Filtering and grouping data
  • Coroutines

    • Asynchronicity in modern code
      • Evaluating the benefits of coroutines
      • Concurrency vs Parallelism
      • Defining suspending functions
      • Dispatching coroutines with launch and async
    • Resolving synchronization challenges
      • Waiting for coroutine completion
      • Sharing data via channels
      • Dispatching parallel coroutines

Team Training

Introduction to Kotlin FAQs

  • What’s so good about Kotlin?

    Kotlin is a professional programming language which has been designed to improve code quality and developer efficiency. Through coroutines, it provides an innovative and reliable solution to the challenges of asynchronous execution.

  • What is a coroutine?

    Modern code makes extensive use of asynchronous event driven code. There have been may attempts through constructs such as threads, Promises and Observables to improve the handling of these events. Coroutines provide a simple and elegant solution to the challenges of asynchronous code that work on any platform without the risks associated with techniques such as threading.

  • Can I take this Kotlin training online?

    Yes! We know your busy work schedule may prevent you from getting to one of our classrooms which is why we offer convenient online training to meet your needs wherever you want, including online training.

London / Online (AnyWare)
London / Online (AnyWare)
London / Online (AnyWare)
Online (AnyWare)
New York / Online (AnyWare)
Herndon, VA / Online (AnyWare)
New York / Online (AnyWare)
Herndon, VA / Online (AnyWare)
Preferred method of contact:

Please Choose a Language

Canada - English

Canada - Français