Android Development in Kotlin

5 Days

This Kotlin training class teaches Android development using Kotlin.

Goals
  1. Understand the Kotlin Language
  2. Use Google's Android Development Tools
  3. Build Android applications
  4. Combine Kotlin and Java code in Android apps
  5. Implement common Android patterns
  6. Design Android UIs
  7. est Android applications in an emulator
  8. Prepare Android Applications for production
Outline
  1. Basic Kotlin
    1. Characteristics of Kotlin
    2. Variables and Type
    3. Control Statements
    4. Null Safety
  2. Classes and Objects
    1. Construction and Initialization
    2. Inheritance, Interfaces and Delegation
    3. Nested Classes
    4. Companion Objects
  3. Functions and Lambdas
    1. Parameters
    2. Function Types
    3. Lambdas
    4. Higher Order Functions
  4. Generics and Collections
    1. Generics
    2. Lists
    3. Sets
    4. Maps
  5. Concurrency in Kotlin
    1. Coroutines and Threads
    2. Dispatch
    3. Channels
    4. Shared Mutable State
  6. Tools
    1. Android Studio
    2. Gradle
    3. Virtual devices and the Emulator
    4. Debugging
  7. Anatomy of an Application
    1. The Application
    2. Activities
    3. Views
    4. Lifecycle
  8. Building a UI
    1. Views
    2. Layout
    3. Graphical design
    4. XML Layout
  9. Notifications
    1. Toasts
    2. Status Bar Notification
    3. Progress Dialog
    4. Other notifications
  10. Complex Views
    1. Spinners
    2. View Pager
    3. Tabs
    4. View Flipper
  11. Intents
    1. Intents
    2. Intent Filters
    3. Starting Activities
    4. Implicit and explicit targeting
  12. Navigation
    1. Menus
    2. Action Bar
    3. The back button
    4. Gestures
  13. Services
    1. Running in the background
    2. Starting a service
    3. Communicating with a service
    4. Bound Services
  14. Content Providers
    1. URLS
    2. Creating a Content Provider
    3. Queries
    4. Inserts
  15. Broadcast Receivers
    1. Events
    2. Registering
    3. Intents
    4. Sticky Events
  16. Tasks
    1. Handlers
    2. Async Task
    3. Callbacks
    4. Updating the GUI
  17. Data
    1. Shared Preferences
    2. Internal Storage
    3. SQL Lite
    4. Resource Files
  18. Accessing RESTful Services
    1. HTTP
    2. Connections
    3. JSON
    4. Asynchronous requests/responses
  19. The WebView
    1. The WebView
    2. Navigation
    3. Local content
    4. JavaScript
  20. Fragments
    1. Screen sizes
    2. Responsive Layouts
    3. Alternate Resources
    4. Images
  21. Production
    1. Preparing an app for production
    2. Testing
    3. The Play Store
    4. MDM
Class Materials

Each student in our Live Online and our Onsite classes receives a comprehensive set of materials, including course notes and all the class examples.

Class Prerequisites

Experience in the following is required for this Kotlin class:

  • Proficiency in any programming language.