Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/smartherd/kotlintutorial

Learn Kotlin programming from scratch
https://github.com/smartherd/kotlintutorial

android functional-programming kotlin kotlin-android kotlin-coroutines kotlin-language kotlin-library kotlin-native object-oriented-programming

Last synced: 4 days ago
JSON representation

Learn Kotlin programming from scratch

Awesome Lists containing this project

README

        

# Kotlin Programming Tutorial for Beginners
Learn Kotlin Programming, its basics and Fundamentals from scratch.

## Topics to be covered
0. Overview
- Course introduction, prequisites and software required
1. Installation
- Install required softwares for Windows, MAC and Linux ( Ubuntu )
2. Getting Started with Kotlin Programming
- Run your first app in Kotlin
3. Exploring Data Types and Variables
- Data Types and Variables
- String, Literals and String Interpolation
- Comments
4. Constants, Variables and Data Types
5. Control Flow Statements
- IF ELSE
- IF Expressions
- WHEN Expressions
6. Loop Control Statements
- What are Iterators?
- FOR Loop and how it works
- WHILE Loop
- DO WHILE Loop
- BREAK statements
- CONTINUE keyword
- Labelled FOR Loop
7. Functions and Interoperability
- Declaring functions
- Interoperability with Java code
- Function as Expressions
- Extension Functions
- Infix Functions
- Default Parameters
- Named Parameters
- Tailrec Functions
8. 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
9. Functional Programming in Koltin
- Lambdas
- Higher-Order Functions
- Closures
- 'it' keyword
- 'with' function
- 'apply' function
10. Collections in Kotlin
- Arrays
- List
- Map and HashMap
- Set and HashSet
11. Sorting and Filtering
- "filter" function
- "map" function
- Predicates: all, any, find, count.
12. Kotlin NULL Safety
- Safe call
- with Let
- Elvis
- Lateinit keyword
- Lazy delegation and 'lateinit' vs. 'lazy'
13. Scope Functions
- with
- apply
- let
- also
- run
14. 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
15. Conclusion

## Authors

* **Sriyank Siddhartha**