Skip to content

smartherd/KotlinTutorial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Kotlin Programming Tutorial for Beginners

Learn Kotlin Programming, its basics and Fundamentals from scratch.

Topics to be covered

  1. Overview
    • Course introduction, prequisites and software required
  2. Installation
    • Install required softwares for Windows, MAC and Linux ( Ubuntu )
  3. Getting Started with Kotlin Programming
    • Run your first app in Kotlin
  4. Exploring Data Types and Variables
    • Data Types and Variables
    • String, Literals and String Interpolation
    • Comments
  5. Constants, Variables and Data Types
  6. Control Flow Statements
    • IF ELSE
    • IF Expressions
    • WHEN Expressions
  7. Loop Control Statements
    • What are Iterators?
    • FOR Loop and how it works
    • WHILE Loop
    • DO WHILE Loop
    • BREAK statements
    • CONTINUE keyword
    • Labelled FOR Loop
  8. Functions and Interoperability
    • Declaring functions
    • Interoperability with Java code
    • Function as Expressions
    • Extension Functions
    • Infix Functions
    • Default Parameters
    • Named Parameters
    • Tailrec Functions
  9. Object Oriented Programming in Kotlin
    • Defining Class and creating Objects
    • INIT block
    • Primary and Secondary Constructors
    • Properties ( Field variables )
    • Inheritance
    • Method and Property Overriding
    • Polymorphism
    • Abstract Class, Property and Method
    • Interface
    • Data Class
    • Object Declaration
    • Enum class
    • Sealed class
    • Companion Object
  10. Functional Programming in Koltin
    • Lambdas
    • Higher-Order Functions
    • Closures
    • 'it' keyword
    • 'with' function
    • 'apply' function
  11. Collections in Kotlin
    • Arrays
    • List
    • Map and HashMap
    • Set and HashSet
  12. Sorting and Filtering
    • "filter" function
    • "map" function
    • Predicates: all, any, find, count.
  13. Kotlin NULL Safety
    • Safe call
    • with Let
    • Elvis
    • Lateinit keyword
    • Lazy delegation and 'lateinit' vs. 'lazy'
  14. Scope Functions
    • with
    • apply
    • let
    • also
    • run
  15. Coroutines
    • What are Coroutines? How are they related to Threads?
    • launch, async, runBlocking, withContext, withTimeoutOrNull,
    • Suspending function
    • Cancellation and Timeouts
    • Cooperative suspending functions and isActive flag
    • Exception Handling in Coroutines
    • Sequential execution of suspending function in Coroutines
    • Concurrency within Coroutine
    • lazy 'async'
    • CoroutineScope and CoroutineContext
    • Dispacthers: Confined dispatcher, Default Dispatcher, and Unconfined Displatcher
  16. Conclusion

Authors

  • Sriyank Siddhartha