Introduction to Kotlin Training in Norway

  • Learn via: Classroom / Virtual Classroom / Online
  • Duration: 4 Days
  • Price: Please contact for booking options
We can host this training at your preferred location. Contact us!

This is an intensive course for developers moving to Kotlin from Java, C# or similar languages. It is designed to be conducted over four days but can be tailored based on the requirements of the delegates. The delivery is workshop based with delegates spending the majority of their time solving problems and creating sample applications.

By the end of the delivery delegates will be able to program using all the features of Kotlin, refactor Kotlin codebases in IntelliJ, perform TDD using KotlinTest and generate mock objects using Mockito. Additionally they will be able to develop microservices via both Spring MVC and WebFlux and create basic Android applications.

Delegates must be confident Java developers, or else have equivalent experience in languages like Groovy and Clojure. Knowledge of Functional Programming concepts is very helpful but not essential. If the chapters on Spring Services and Mobile Development are being covered then delegates should have prior experience with those frameworks.


  • Program using both the functional and object-oriented features of Kotlin
  • Unit test and refactor Kotlin code via KotlinTest, Mockito and IntelliJ
  • Write RESTful services in Kotlin via Spring Boot, MVC and WebFlux
  • Create responsive mobile applications using Kotlin and Android Studio

Introducing Kotlin on the JVM

  • Four coding paradigms within Java 9
  • Limits imposed by backwards compatability
  • The new consenses in language design
  • A brief history of the Kotlin language
  • Comparing Kotlin to Scala and Clojure
  • Comparing Kotlin to Swift and TypeScript

First Steps with Kotlin

  • Declarations and type inference
  • The Kotlin type system and conversions
  • Packages, access levels and default imports
  • Nullable types and operators for null safety
  • Keywords for selection and iteration
  • Options for declaring basic functions
  • Overloading, infix functions and ranges

Object Orientation

  • Decompiling Kotlin classes using ‘javap’
  • Understanding properties and backing fields
  • A detailed explanation of primary constructors
  • Adding extra fields and secondary constructors
  • Extra features automatically added to data classes
  • Overriding, abstract classes and interfaces
  • Using object expressions as event handlers
  • Object declarations and companion objects

Agile Development

  • Review of core principles of Agile development
  • Refactoring Kotlin code within IntelliJ
  • Performing TDD in Kotlin using KotlinTest
  • Using Mockito to separate types from dependencies
  • Options for BDD and Property Based Testing

Generics and Type Parameters

  • Revision of covariance and contravariance
  • Common issues with bounded wildcards in Java
  • How declaration site variance simplifies generics
  • Support for use-site variance (aka type projection)
  • Declaring single and multiple constraints on types

Working with Collections Part 1

  • Introducing the Kotlin collections library
  • Working with mutable and immutable collections
  • Support for destructuring types and collections

Functional Programming

  • Working with function references and code blocks
  • Declaring functions as parameters and return types
  • Using higher order functions for internal iteration
  • Creating your own versions of ‘filter’, ‘map’ etc…
  • Using higher order functions to prevent duplication
  • Understanding partial invocation and currying
  • Choosing between code blocks and local functions
  • Common misunderstandings regarding enclosure

Working with Collections Part 2

  • Basic coding using ‘filter’, ‘map’ and ‘forEach’
  • Testing against a predicate using ‘all’, ‘any’ etc…
  • Why ‘flatMap’ is such as valuable operation in FP
  • Distinguishing between ‘fold’, ‘foldRight’ and ‘reduce’
  • Converting between collection types within FP

Interoperability Between Kotlin and Java

  • General guidelines for mixed language codebases
  • Considerations when calling Java libraries from Kotlin
  • Obtaining and using java.lang.Class objects in Kotlin
  • Tips and idioms for calling Kotlin libraries from Java code

Creating Spring Microservices in Kotlin

  • Revision of the Spring Framework and RESTful architecture
  • Creating Spring Boot projects in Kotlin via the Spring Initializr
  • Declaring Spring MVC based RESTful services using annotations
  • Injecting dependencies and configuring exception handling
  • Creating reactive microservices using Spring WebFlux
  • Taking advantage of the Kotlin specific routing DSL

Creating Mobile Applications in Kotlin

  • Revision of the Android platform and Dalvik VM
  • Installing Android Studio and configuring emulators
  • Introducing the sample project for tracking expenses
  • Reverse engineering the sample activities and layouts
  • Performing dependency injection on Android with Dagger 2
  • Persisting application state using the Realm database


Contact us for more detail about our trainings and for all other enquiries!

Upcoming Trainings

Join our public courses in our Norway facilities. Private class trainings will be organized at the location of your preference, according to your schedule.

Classroom / Virtual Classroom
09 juli 2024
Oslo, Bergen, Trondheim
4 Days
Classroom / Virtual Classroom
13 juli 2024
Oslo, Bergen, Trondheim
4 Days
Classroom / Virtual Classroom
19 juli 2024
Oslo, Bergen, Trondheim
4 Days
Classroom / Virtual Classroom
27 juli 2024
Oslo, Bergen, Trondheim
4 Days
Classroom / Virtual Classroom
09 august 2024
Oslo, Bergen, Trondheim
4 Days
Classroom / Virtual Classroom
14 august 2024
Oslo, Bergen, Trondheim
4 Days
Classroom / Virtual Classroom
21 august 2024
Oslo, Bergen, Trondheim
4 Days
Classroom / Virtual Classroom
14 september 2024
Oslo, Bergen, Trondheim
4 Days
Introduction to Kotlin Training Course in Norway

The Nordic country Norway, is in Northern Europe. Known for its stunning natural beauty, including fjords, mountains, and forests, Norway is also famous for its high standard of living and strong social welfare system. Norway's capital and largest city is Oslo. Tromsø, Bergen, Trondheim and Stavanger are the other tourist attracting cities of Norway.

Norway is a constitutional monarchy with King Harald V as the head of state. The country has a population of 5,425,270 as of January 2022. Norway is a relatively small country and has a relatively low population density, with much of its land area covered by forests, mountains, and fjords. Despite its small size, Norway is known for its rich cultural heritage, strong economy, and stunning natural beauty, which attracts millions of visitors every year. This Nordic country is also known for its winter sports, such as skiing and snowboarding, and is a popular destination for outdoor enthusiasts.

Norway has a long history of invention and is home to numerous more top-tier tech firms and research facilities, such as; Kongsberg Gruppen, Telenor, Atea, Evry and Gjensidige Forsikring.

Due to the country's high latitude, there are large seasonal variations in daylight. From late May to late July, the sun never completely descends beneath the horizon. Which attracts many tourists around the world to see the "Land of the Midnight Sun". Tourists mainly visit Sognefjord, Norway's Largest Fjord, Pulpit Rock, one of the most photographed sites in Norway and of course the capital; Oslo.

Oslo is considered the business center of Norway. It is the country's largest city and the capital of Norway. The city is home to many of Norway's largest and most important companies, as well as several international organizations and research institutions. Additionally, the city is a popular tourist destination, known for its scenic location on the Oslo Fjord, its many museums and cultural attractions, and its vibrant nightlife and dining scene. Some of the most popular museums in Oslo are The Norwegian Museum of Cultural History, The Nobel Peace Center, The National Museum of Art, Architecture, and Design, The Munch Museum and The Vigeland Museum.
By using this website you agree to let us use cookies. For further information about our use of cookies, check out our Cookie Policy.