Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA CompTIA Security+ Amazon AWS AWS Certified Developer - Associate
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Mindfulness Personal Development Personal Transformation Life Purpose Meditation Emotional Intelligence CBT
Web Development JavaScript React CSS Angular PHP WordPress Node.Js Python
Google Flutter Android Development iOS Development Swift React Native Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Google Analytics
SQL Microsoft Power BI Tableau Business Analysis Business Intelligence MySQL Data Modeling Data Analysis Big Data
Business Fundamentals Entrepreneurship Fundamentals Online Business Business Strategy Business Plan Startup Freelancing Blogging Tax Preparation
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee
Development Mobile Development Android Development

Complete Kotlin Coroutines development course

Foundational and advanced Kotlin Coroutines concepts, Android app applications, Retrofit, Room, MVVM
Rating: 4.6 out of 54.6 (469 ratings)
2,340 students
Created by Catalin Stefan
Last updated 9/2020
English
English [Auto]
30-Day Money-Back Guarantee

What you'll learn

  • Kotlin Coroutines
  • Asynchronous programming
  • Coroutines + Retrofit + MVVM
  • Coroutines + Room + MVVM
  • Coroutines background processing
  • Coroutines flow in an Android app
  • Android background processing
  • Advanced Coroutines topics
Curated for the Udemy for Business collection

Course content

10 sections • 70 lectures • 5h 3m total length

  • Preview03:11
  • Preview02:01
  • Preview00:03
  • How to get the Coroutines project code
    00:09

  • Preview01:38
  • Coroutines
    07:01
  • Preview06:35
  • Coroutines are lightweight
    02:56
  • Scope
    06:37
  • Context
    04:54
  • Suspending functions
    05:57
  • Jobs
    07:55
  • Dispatchers
    10:03
  • async
    06:20
  • withContext
    03:12
  • Exception handling
    08:48

  • Preview01:57
  • Setting up the project
    02:56
  • Gradle dependencies
    00:03
  • Downloading an image
    06:40
  • Challenge
    00:40
  • Applying the filter
    04:24

  • Preview02:06
  • Setting up the project
    07:20
  • Gradle dependencies
    00:03
  • Setting up Retrofit
    05:45
  • Creating the coroutines
    06:09

  • Preview02:38
  • Project setup
    07:28
  • Room gradle dependencies
    00:03
  • Database file
    00:13
  • Setting up Room
    11:08
  • SignupFragment
    05:21
  • Coroutines gradle dependencies
    00:03
  • SignupViewModel - first coroutine with Room
    09:20
  • MainFragment
    05:20
  • MainViewModel
    06:22
  • Challenge
    00:49
  • LoginFragment
    04:17
  • LoginViewModel
    04:10

  • Section intro
    01:22
  • Asynchronous flow
    06:29
  • Creating flows
    03:51
  • Flow properties: cold, cancellation, builders
    06:21
  • Operators part 1
    07:44
  • Operators part 2
    07:22
  • Buffering
    06:51
  • Composing flows
    07:24
  • Exception handling
    06:53

  • Preview01:38
  • Project setup
    03:26
  • Gradle dependencies
    00:04
  • Setup Retrofit
    06:49
  • Using the flow
    04:46

  • Section intro
    02:02
  • Channels
    05:15
  • Channel producer
    04:00
  • Pipelines
    05:31
  • Fan-out
    06:27
  • Fan-in
    04:25
  • Buffered channels
    04:37
  • Ticker channels
    04:15

  • Section intro
    01:43
  • Shared state problem
    07:03
  • Atomic variables
    03:45
  • Thread confinement
    05:41
  • Mutual exclusion locks (mutex)
    03:18

  • Conclusion
    01:08
  • Preview00:02
  • Thank you
    00:10

Requirements

  • Android development knowledge
  • Kotlin
  • Retrofit
  • MVVM
  • Room database

Description

This is the most complete resource online for learning about Kotlin coroutines.

This course will take you step by step, through each concept related to coroutines, discuss it in detail, then apply it in a practical project in Kotlin.

We will cover topics such as:

  • Scope

  • Context

  • Suspending functions

  • Jobs

  • Dispatchers

  • async

  • withContext

  • Exception handling

  • Asynchronous flow

  • Properties

  • Flow cancellation

  • Operators

  • Buffering

  • Composing flows

  • Channels

  • Producer

  • Pipelines

  • Fan-in and fan-out

  • Buffered channels

  • Ticker channels

In addition, we will also be working on several Android apps to apply the knowledge we learned.

  • A background image processing app

  • A network communications app using Coroutines, Retrofit and MVVM

  • A Room database using coroutines

  • A news ticker app using Asynchronous Flows, Retrofit and MVVM

This course is great if you want to take your multithreading and parallel processing skills to the next level.

Sign up today and let's start learning about Kotlin Coroutines.

Who this course is for:

  • Android developers
  • Students looking to improve their parallel processing knowledge

Instructor

Catalin Stefan
Software Development Teacher
Catalin Stefan
  • 4.4 Instructor Rating
  • 4,593 Reviews
  • 22,715 Students
  • 31 Courses

I am an avid learner and teaching enthusiast. I love creating content and courses that enrich people's lives and help them have a better experience, both personally and professionally. 

I am an expert mobile application developer with over 10 years development experience. I enjoy making courses related to software development and mobile apps, and want to share the knowledge I have acquired.

I create courses based on my professional experience. I hope to teach people skills that help them in their careers, allow them to acquire new skills and improve their personal relationships.

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.