Kotlin Development

Kotlin er et objektorienteret programmeringssprog, der kører på en virtuel maskine i Java. Kotlin er også et funktionelt sprog, der kombinerer funktionerne og fordelene ved OO og funktionel programmering. Dette kursus giver dig en tempofyldt introduktion til sproget og går derefter i dybden med anvendelse af Kotlin i praksis. Undervisningen foregår på engelsk.


This course is for experienced developers using Java or a similar contemporary object-oriented language (e.g C# or C++).


  • Writing and running Kotlin programs
  • Object orientation in Kotlin
  • Functional programming in Kotlin
  • Implementing Domain-Specific Languages
  • Using concurrency
  • Best practices and advanced techniques


Introduction to Kotlin
  • Overview of Kotlin
  • Kotlin tools
  • Writing a simple Kotlin program
  • Using the interactive shell
  • Using the online playground
Core Kotlin Syntax
  • Types and variables
  • Literals; Decision making and looping
  • Exceptions; Enumerations
  • Regular expressions
  • Class-level and top-level functions
  • Local functions
  • Extension functions and properties
  • Variable-argument functions
Object-Oriented Programming in Kotlin
  • Classes and objects
  • Properties, getters and setters
  • Open, final, and abstract modifiers
  • Construction techniques
  • Data classes
  • Class delegation and the “by” keyword; Singleton objects
A Closer Look at Kotlin Types
  • Nullability
  • Primitive types
  • Nullable primitives
  • Collections
  • Arrays
Kotlin Techniques
  • Loops and iterators
  • Destructuring
  • Delegated properties
  • Operator overloading
Functional Programming
  • Overview of functional programming
  • Lambdas and member references
  • Functional APIs and collections
  • Lazy collection operations
Going Further with Functional Programming
  • Higher-order functions
  • Inlining; Control flow
Domain-Specific Languages
  • Overview of DSLs
  • Using lambdas and receivers in DSLs
  • Best practices
The Kotlin Type System: Generics
  • Constraints
  • Covariance and contravariance
  • Defining and using annotations
  • Reflection
  • Creating and synchronizing threads
  • Callbacks
  • Futures
  • Coroutines and channels


Andy Olsen
Andy is a freelance instructor and consultant based in the UK, with more than 30 years experience in the industry across a wide range of technologies and platforms. Andy began his professional career in C and migrated through C++, Java, .NET and other languages and toolsets as the years passed by. Andy is currently actively involved in contemporary systems development techniques including microservice architecture, cloud-based systems, and containerisation.

Har du faglige spørgsmål, så kontakt:
Andre kigger også på