Kotlin Programming

  1. Kotlin Multiplatform
    1. Multiplatform Project Structure
      1. Common Code
        1. Platform-Specific Code
          1. Source Sets
            1. `expect` and `actual` Declarations
            2. Kotlin/JVM
              1. JVM Targeting
                1. Java Interoperability
                  1. Calling Java from Kotlin
                    1. Calling Kotlin from Java
                      1. Java Annotations in Kotlin
                      2. Using Java Libraries in Kotlin
                        1. Build Configuration with Gradle
                          1. JVM-Specific Features
                          2. Kotlin for Android
                            1. Android Project Structure
                              1. Official Language Status
                                1. Android KTX (Kotlin Extensions)
                                  1. Jetpack Compose Overview
                                    1. View Binding
                                      1. Data Binding
                                        1. Interacting with Android APIs
                                          1. Android-Specific Coroutines
                                            1. Lifecycle-Aware Components
                                            2. Kotlin/JS
                                              1. Compiling Kotlin to JavaScript
                                                1. Project Setup for Kotlin/JS
                                                  1. IR Compiler
                                                    1. DOM Manipulation
                                                      1. Interoperability with JavaScript
                                                        1. Interoperability with TypeScript
                                                          1. Using NPM Dependencies
                                                            1. Webpack Integration
                                                              1. Browser vs. Node.js Targets
                                                              2. Kotlin/Native
                                                                1. Compiling to Native Binaries
                                                                  1. Supported Platforms
                                                                    1. Memory Management
                                                                      1. Platform-Specific APIs
                                                                        1. Interoperability with C
                                                                          1. Interoperability with Objective-C/Swift
                                                                            1. Native Libraries
                                                                              1. Performance Considerations
                                                                              2. Kotlin Multiplatform Mobile (KMM)
                                                                                1. Sharing Code Between iOS and Android
                                                                                  1. KMM Project Setup
                                                                                    1. Structuring a KMM Project
                                                                                      1. Common Code vs. Platform-Specific Code
                                                                                        1. Gradle Configuration for KMM
                                                                                          1. Dependency Management
                                                                                            1. Platform-Specific Dependencies