Modern Android App Development with Kotlin
This training provides a practice-oriented introduction to the programming language Kotlin and modern Android app development.

At a glance
General information
4 days practical training
Target group
Software developers
Application examples
Modern Android App development using Kotlin
Description
Kotlin is the state-of-the-art alternative to Java and can be used in a wide range of scenarios, even outside the Java Virtual Machine (JVM). You can, for example, use Kotlin to implement native Android apps, web backends or cross-platform libraries.
This training provides a practice-oriented introduction to the programming language Kotlin and modern Android app development. The trainer, Johannes Schamburger,brings extensive expertise from his projects and incorporates his experiences into the training.
The participants learn all the important tools to develop Android apps with Kotlin. The training is strongly based on the official Android development documentation. In the course, participants develop a small app (Github Client), which is expanded bit by bit. All mediated content is practiced directly in tasks.
This training focuses on the idea of learning together. There is always the opportunity to exchange ideas, ask questions and influence the content of the training.
Agenda
- Kotlin basics
- Kotlin concepts & language features
- Null safety – No longer generate unintentional null values
- Coroutines – Manage synchronous operations easily and effectively
- Delegates – Delegate functions and properties to other classes
- Sealed classes – Increased code security by creating data models with limited, predictable capabilities
- Extension functions – Adding new functionality to a class without editing it directly
- Higher-order functions – Make code more effective and readable
- Android app architecture
- Separation of concerns – Separation of UI und business logic
- Layered Architecture – Easy maintenance of code through clearly defined layers of the app
- Dependency Injection – Management of dependencies between different components of the app
- UI development with Jetpack Compose
- Concurrency and und network communication
- Data storage & persistence
- Testing
- Unit Tests
- UI Tests
Typical questions we answer:
- What language features distinguish Kotlin from other programming languages?
- How do concurrency concepts like coroutines and flows work?
- How do I build modern UIs with Jetpack Compose?
- How do I structure an Android app to keep the code understandable and maintainable?
- How do I retrieve data from backend APIs and store it locally in a database?
- How do I write UI and unit tests for Android apps?
- How can I cut the modules in my project and what are the technical possibilities to share the modules between projects?
Upcoming trainings
Training forms
Training forms according to your needs: Open trainings take place on fixed dates in mixed groups at an inovex location, inhouse trainings you book individually – configurable as desired.
Inhouse training
- Training agenda customizable to the group and the project
- Confidential atmosphere (trainers are under NDA)
- Configurable according to your needs: place, time, language, tooling
Open training
- optimal for individuals
- new impulses from other participants
- getting to know other people interested in tech
Trainers
Our trainers are field-tested experts in their areas of expertise. Through their work in projects, they expand their knowledge day by day and pass on this know-how in their trainings - application-oriented and practice-oriented.
