Concept reminder
- Inheritance
- Variable visibility
- Interface and abstract classes
- Data Class, Enum Class, Sealed Class
- Nested Class / Inner Class
- Companion Object
- Null safety
- Annotation
- Reflection
- Type safe builder
- Dynamic type
- Covariance/contravariance
Kotlin functions
- High order function
- Inline functions
- Lambdas / Invocation
- Extension function
Exceptions handling
- Exceptions
- Préconditions
- Différences avec Java
Concurrency
- Threads, Blocking, CPU-bound versus I/O-bound
- Deadlocks & livelocks
- Executors
- Race conditions : Monitors,Locks , concurrent collections, Atomic variables,CountDownLatch,Cyclic Barrier,non-blocking I/O & asynchronous programming
Build / Packaging
- Kotlin-jvm
- Kotlin-native
- Kotlin-js
Tests
- Mockito Kotlin / MockK
- Expecting exceptions
- Matchers
- Test Data
- Inspectors
- Test configurations
- Property testing
Module Spring boot (2h)
- Gestion des properties
- Configuration des beans
- Spring data/jpa
- Spring rest
- Tests d'intégration spring boot