Course Outline


  • Why Kotlin is a Better Java

Setting Up the Tools

  • Using the Command Line Tools
  • Installing the JDK for Kotlin
  • Installing and Setting Up the IDE: IntelliJ
  • Installing the Plugins

Getting Started with Basic Kotlin Programming

  • Learning the Kotlin Architecture
  • Creating Variables in Kotlin
  • Understanding the Different Data Types in Kotlin
  • Using Strings in Kotlin
  • Understanding Immutability in Kotlin
  • Implementing Expressions, Statements, and Assignments
  • Using Nullable Variables in Kotlin for Null Safety
  • Handling Conditional Program Flow with "if" Statements
  • Handling Options Using "when" Statements
  • Exploring Kotlin's Advanced Capabilities for Conditional Statements
  • Using Arrays and Lists in Kotlin
  • Implementing Looping Constructs in Kotlin
  • Creating, Declaring, and Using Functions in Kotlin
  • Using Parameters and Returning a Value
  • Using Extension Functions
  • Using Inline Functions
  • Using Higher-order Functions

Object-Oriented Programming with Kotlin

  • Overview of Progamming with Objects
  • Creating a Class
  • Adding Methods to Classes
  • Defining Basic Constructors
  • Using Named Parameters and Default Values
  • Using Open Classes to Allow Inheritance
  • Using Abstract Classes
  • Creating and Using Interfaces
  • Handling Overriding
  • Creating Data Classes
  • Using Singletons and Companion Objects
  • Using Enumerations
  • Grouping Classes into Packages
  • Using Imports
  • Implementing Information Hiding
  • Using Getters and Setters
  • Implementing Visibility Modifiers
  • Understanding Generics
  • Implementing a Generic Stack
  • Using Generic Functions

Exploring Kotlin's Interoparibility with Java

  • Using Java from Kotlin
  • Using Kotlin from Java

Exploring Kotlin's Advanced Features

  • Understanding Operator Overloading
  • Using Annotations
  • Using Reflection
  • Implementing DSL Construction
  • Implementing Destructuring

Using Kotlin for Functional Programming

Hands-on: Converting an Android App from Java to Kotlin

  • Using Android Studio
  • Starting a New Project with Kotlin
  • Converting Existing Java Code to Kotlin
  • Using Android APIs with Kotlin


Summary and Conclusion


  • Experience in Java programming
  • Basic experience or familiarity with Android development


  • Android developers interested in Kotlin
  • Java programmers interested in Kotlin
  21 Hours


Related Courses

Java Advanced

  28 hours

Java Fundamentals for Android

  14 hours

Java fundamentals with Maven

  28 hours

Java Persistence with Hibernate

  14 hours

Introduction to Programming

  35 hours

Clean Code

  14 hours

Linux Network Programming

  14 hours

Advanced Kotlin Programming

  21 hours

Programming with Kotlin

  21 hours

Kotlin for Beginners

  21 hours

Kotlin for Java Developers

  21 hours

Kotlin for iOS and Android Development

  35 hours

Kotlin Native

  7 hours

Unit Testing with JUnit

  21 hours

Kotlin for iOS Developers

  21 hours