Programming in Kotlin - Course Syllabus
Programming in Kotlin - Course Syllabus
Syllabus
Prerequisites
Basic programming knowledge
Duration
1 semester
Description
In this course students will learn about the Kotlin programming language – a modern,
powerful, and expressive language that is used for various purposes, from Android
development all the way through to web development and data science. Students will learn
how to apply Kotlin to solve practical software development problems and will learn about
data types, variables and control flow, functions, object-oriented programming, exception
handling, collections and generics, lambdas, and higher-order functions. They will also learn
about various key features of Kotlin such as null safety, extension functions, and coroutines.
At the end of the course students will study build systems, using Gradle as an example, as
well as explore compilation techniques and how the Kotlin K2 compiler works.
Contents
1. Introduction in Kotlin
2. Object-oriented programming
3. Generics
4. Collections and co.
5. Functional programming
6. Build systems
7. Parallel and concurrent Programming
8. Asynchronous programming
9. Java Virtual Machine and the Kotlin compiler (advanced topic)
10. Exceptions (optional topic)
11. Testing (optional topic)
Goals
● Provide students with a solid foundation in the Kotlin programming language.
● Teach students how to apply Kotlin to solve practical problems in software
development.
● Enable students to write efficient, readable, and maintainable Kotlin code.
● Familiarize students with key features of Kotlin, such as null safety, extension
functions, and coroutines.
● Give students a deeper understanding of the fundamental concepts of computer
science, such as concurrent computations and how they can be applied to software
development in Kotlin.
● Use the unique features of Kotlin to write readable, maintainable, and expressive
code.
● Use Kotlin to solve practical problems in software development.
● Write efficient and optimized Kotlin code.
● Use the Gradle build system.
● Understand how the Kotlin compiler works.
Recommended materials
— Roman Elizarov, Svetlana Isakova, Sebastian Aigner, and Dmitry Jemerov: Kotlin in
Action, Second Edition, Manning Publications, 2022.
— Kotlin Documentation
— Kotlin Onboarding: Introduction
— Kotlin Onboarding: Object-Oriented programming