Logo ČVUT
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2024/2025

Programing in Kotlin

Login to KOS for course enrollment Display time-table
Code Completion Credits Range Language
BI-KOT Z,ZK 4 2P+2C Czech
Course guarantor:
Jiří Daněček
Lecturer:
Jiří Daněček
Tutor:
Jiří Daněček
Supervisor:
Department of Software Engineering
Synopsis:

Kotlin is a modern, statically-styled object-functional language that exploits the extensive Java language ecosystem while delivering a number of advanced language constructions. The language is fully Java compliant and allows for mixed projects that preserve existing parts written in Java, and continue with the development of a modern, object-functional way with minimum of boiler-plate code. Last but not least, Kotlin is suitable for designing of DSLs (Domain-Specific Languages).

Requirements:
Syllabus of lectures:

1. Basics of functional programming, overview of the Kotlin language.

2. Structure of applications, control structures, language conventions, keywords, operators.

3. Classes, data classes, enum classes, objects, fields and properties, modifiers.

4. Declaration of functions, implicit and name parameters, procedures, simple functions, variable number of parameters.

5. Infix calls, local functions, generic functions, inline functions, extension functions, lambda expressions, HOF.

6. Destructive Declaration, nullability.

7. Standard types and conversions.

8. Overloading operators, delegations.

9. Generics, subtyping.

10. Collections and sequences, common operations.

11. Annotation and reflection.

12. Standard library.

13. Design of domain-specific languages.

Syllabus of tutorials:

1. Basic construction

2. Classes and Objects

3. Function

4. Lambda expressions and HOF

5. Generics

6. Collection

7. Standard library

8. Design of DSL example

9. KotlinTest - test framework

10.TornadoFX - adapter for JavaFX

11. KotlinPrimavera - adapter for Spring

Study Objective:
Study materials:

Dmitry Jemerov and Svetlana Isakova: Kotlin in Action, Kotlin Tutorial and Kotlin Specification on www.kotlinlang.org.

Note:
Further information:
https://courses.fit.cvut.cz/BI-KOT/
Time-table for winter semester 2024/2025:
Time-table is not available yet
Time-table for summer semester 2024/2025:
Time-table is not available yet
The course is a part of the following study plans:
Data valid to 2024-12-09
For updated information see http://bilakniha.cvut.cz/en/predmet5712106.html