Starting with what coroutines are and ending with building high level Android projects. All with MVVM Architecture
In this course we are going to start with what coroutines are, will look at all basic concepts like suspend, async / await structure , jobs, dispatchers. Then we are going to continue with advanced topics like flows and channels. Finally we are going to finish the course with building two Android applications matching industrial standards.
Also in each lecture, we’re going to implement some code on what we have just learned to solidify our knowledge.
My aim in this course is to give you a quick start on Kotlin coroutines in the beginning and finish at a master level. I will not only try to explain how these concepts work, i will also make sure that i am explaining when to use each one of these coroutine concepts.
As Kotlin is gaining more and more popularity each passing day and Google also revealed Kotlin as their preferred language, i think that learning Kotlin is now essential especially for Android developers. On the other hand, concurrent programming is being more and more essential as the applications get more complex. Coroutines is the best way to handle Concurrency and knowing how to use it probably will give you a couple steps of advantage. I hope i can help along the way.
Definition of Coroutines and Coroutines Basic Concepts
What are coroutines and why you should choose it over RxJava
Async / Await
Flows Basics and Use Cases
What is a channel and how it works!
Receive Channels and Produce
Coroutines On Industrial Level with an Example Android Application
Start with suspend functions in your model!
The Viewmodel with StateFlow and Kotlin Result Type
The Activity with lifecycleScope and launchWhenStarted
Get the app
Building An App Using Flows and Coroutines
Project Architecture and building the repository
Implementing the viewmodel with a use case! And the Flow!
Implementing The Activity and Testing the Application
Get the app and Adios !