inflearn logo
inflearn logo

Coroutine that finishes in 2 hours

Coroutine, the essential library for asynchronous programming! Learn the concept, usage, and internal principles of coroutines all at once!

(4.9) 수강평 73개

강의소개.상단개요.수강생.short

난이도 초급

수강기한 무제한

Kotlin
Kotlin
coroutine
coroutine
Kotlin
Kotlin
coroutine
coroutine

먼저 경험한 수강생들의 후기

먼저 경험한 수강생들의 후기

4.9

5.0

보키

100% 수강 후 작성

This is a lecture that can teach you what a coroutine is in a short period of time in a simple but clear way. I actually liked how to implement CPS (Contiuation Passing Style) similarly!! Thank you.

5.0

이경석

100% 수강 후 작성

Thank you for the great lecture.

5.0

ep

100% 수강 후 작성

It helped a lot :)

강의상세_배울수있는것_타이틀

  • You can see how coroutines differ from routines and how they differ from threads!

  • You can understand how to create and use coroutines and how coroutines work!

Kotlin Asynchronous Programming Essentials!
Coroutines, from concept to practice in 2 hours ⏰

Kotlin is a language used in Android development and has recently gained significant traction in backend development. This course delves into the various language features of Kotlin, providing an easy-to-understand approach through numerous examples and hands-on exercises.

Everything You Need to Know About Kotlin Coroutines in 2 Hours

The 2-Hour Coroutine Course, a continuation of the Kotlin Introduction for Java Developers course, will teach you the essentials of coroutines, an essential library for asynchronous programming in Kotlin, in an easy-to-understand manner. Beyond simply explaining how to use coroutines, this course delves into the fundamental concepts of coroutines, their internal structure, and their operating principles, comparing routines with coroutines, and threads with coroutines.


The curriculum
Check it out 📚

Lecture 1. Routines and Coroutines

  • Let's write our first coroutine.
  • Understand the difference between routines and coroutines.

Lecture 2: Threads and Coroutines

  • Understand the difference between processes and threads, and threads and coroutines.
  • Learn how coroutines and threads work together.

Lesson 3: Coroutine Builder and Jobs

  • Understand what a coroutine builder is and learn the characteristics of the three types of coroutine builders.
  • Let's look at the main features of the Job object representing a coroutine.

Lesson 4. Cancellation of Coroutines

  • We'll look at how to cancel a coroutine and how coroutines cooperate with cancellation.
  • Understand how coroutines handle cancellation.

Lesson 5: Coroutine Exception Handling and Job State Changes

  • Learn how to handle exceptions raised in coroutines and the difference between exception handling and cancellation.
  • Understand the state changes of a Job object.

Lesson 6: Structured Concurrency

  • Understand Structured Concurrency, which supports large-scale coroutines.
  • Let's look at how parent-child coroutines collaborate.

Lesson 7. CoroutineScope and CoroutineContest

  • Understand the concepts of CoroutineScope and CoroutineContext.
  • We will learn about manipulating CoroutineContext and its main context, CoroutineDispatcher.

Quarterfinals. Suspending function

  • Understand the effects of the suspend directive and see how you can leverage the suspend function.
  • Let's learn about the suspend functions provided by the coroutine library: coroutineScope, withContext, withTimeout, and withTimeoutOrNull.

Lesson 9: Coroutines and Continuations

  • Understand Continuation, the internal principle of how coroutines work, by coding it yourself.
  • Understand Continuation Passing Style and examine decompiled code.

Lesson 10: Using Coroutines and Conclusion

  • We'll conclude this lecture by briefly examining the areas in which the learned coroutines can be utilized.

Completely organized lecture content
47-page handbook + 186-page PPT!

Focus on your class instead of complicated and cumbersome note-taking!
We provide students with learning materials that thoroughly organize the lecture content so that they can fully understand and review the content.


Preview of course reviews 👀

The course review below is a review of a previous Kotlin lecture by a knowledge sharer.
• Java to Kotlin Starter Guide for Java Developers
• Real-World! Developing a Library Management Application with Kotlin and Spring Boot (Refactoring a Java Project)

★★★★★

The lectures were incredibly informative. The instructor provided tips throughout the lecture on his style and skills, so I gradually gained insights. The explanations were varied, so any questions I might have had were quickly answered. Why? → The explanations, the pros and cons, and the numerous examples... It was the best. I gained more than I paid for, and I could tell a lot of effort went into the PPT presentation! Thank you. (Wo***)

★★★★★

The instructor's overly (perhaps?) humble nature and the lecture content, which oozes depth, are impressive. It was great to be able to cover all the essential development knowledge in one lecture . While it might be challenging as a lecturer, I've been hoping for a series that explores the concept of developing hypothetical requirements that are both practical and essential. Thank you. (Jeong***)

★★★★★

From the content to the pace , this course was perfect for me! Thank you :) (Je***)

★★★★★

I think this is a great course because it saves a lot of time organizing things myself thanks to the examples and well-organized lectures. (go***)

★★★★★

I discovered the joy of Kotlin thanks to meeting you! Even though this is just a review, I'm so grateful. It felt like I met the instructor of my life ! I don't know what your next lecture is, but I definitely plan to take it! (Won***)

★★★★★

As other reviews have said, the lectures are easy to understand. But the best part is how sincerely and thoroughly the instructors answer questions. For example, even simple questions like this ... I'm so touched! (Ah***)


Q&A 💬

Q. What is the lecture practice environment like?

This course uses IntelliJ IDEA for hands-on exercises. Even if you don't use IntelliJ, you should be able to follow the exercises without any issues as long as you have an environment that supports Kotlin and coroutines! 👍

Q. What build tools do you use?

This lecture uses Gradle. While we'll use Gradle to configure the dependencies required for coroutines, you can follow along without any issues using Maven or another build tool.

Q. I'm an Android (or backend) developer. Can I take the course?

Yes! Of course! This course covers the basic usage and principles of coroutines, so if you're familiar with basic Kotlin grammar, you'll be able to follow along without difficulty. Although examples from specific areas are occasionally included, they're used solely to illustrate coroutines.

A great lecture to watch together 📺

강의소개.콘텐츠.추천문구

학습 대상은 누구일까요?

  • Anyone who has been interested in coroutines

  • Anyone who needs to do asynchronous programming using Kotlin

선수 지식, 필요할까요?

  • You need to understand basic Kotlin grammar!

강의소개.지공자소개

10,943

수강생

843

수강평

800

답변

4.9

강의 평점

6

강의_other

Hello 😊

I am Taehyun Choi, a developer who explains what I know in an easy and fun way, helping you feel the joy of growth.

(Current) Catch Table [WAD] Software Engineer (Former) Startup Software Engineer Lead (Former) Baedal Minjok [Woowa Bros] Software Engineer (Educational Activities)

  • (Current) Catch Table [WAD] Software Engineer

  • (Former) Startup Software Engineer Lead

  • (Former) Woowa Brothers [Baedal Minjok] Software Engineer

  • (Educational Activities) Participated as a Next Step reviewer multiple times, Instructor and mentor for public institution & startup competitions, Sparta Coding Club mentor

  • Graduate of Korea Advanced Institute of Science and Technology (KAIST)

Software Engineer (Educational Activities) Participated as a reviewer for Next Step, Instructor and mentor for public institution & startup competitions, Mentor at Sparta Coding Club, Graduated from Korea Advanced Institute of Science and Technology (KAIST)

더보기

커리큘럼

전체

12개 ∙ (강의상세_런타임_시간 강의상세_런타임_분)

해당 강의에서 제공: [object Object]
강의 게시일: 
마지막 업데이트일: 

수강평

전체

73개

4.9

73개의 수강평

  • meant0415님의 프로필 이미지
    meant0415

    수강평 29

    평균 평점 5.0

    5

    100% 수강 후 작성

    Thank you for the great lecture.

    • kjuioqq83987님의 프로필 이미지
      kjuioqq83987

      수강평 2

      평균 평점 5.0

      5

      100% 수강 후 작성

      It helped a lot :)

      • lannstark
        지식공유자

        Thank you for listening, ep! 😊 I'm so glad it was helpful! I'll continue to create content that will be helpful in the future. Thank you! 🙏

    • sungjik68750766님의 프로필 이미지
      sungjik68750766

      수강평 17

      평균 평점 4.9

      5

      67% 수강 후 작성

      I found it extremely useful how you explained only the key points quickly, easily, and concisely.

      • boki님의 프로필 이미지
        boki

        수강평 60

        평균 평점 5.0

        5

        100% 수강 후 작성

        This is a lecture that can teach you what a coroutine is in a short period of time in a simple but clear way. I actually liked how to implement CPS (Contiuation Passing Style) similarly!! Thank you.

        • djawnstj님의 프로필 이미지
          djawnstj

          수강평 14

          평균 평점 5.0

          5

          100% 수강 후 작성

          I've been waiting for a long time for the coroutine lecture, thank you for making such a great lecture! The lecture time is short, but it seems to be a really informative lecture. Lecture 9 is very difficult, but I'll have to watch it several times to understand it.ㅎㅎ Thank you for the great lecture!

          • lannstark
            지식공유자

            Hello Junseo~~ Wow, my first class review!!! Thank you so much! 😊 Yes, that's right! I focused on quickly understanding and using the difficult and unfamiliar concept of "coroutine." For something like Lesson 9, if you just understand the feeling of using Continuation, you will be able to use coroutines with a much higher level of understanding! 👍 Thank you for listening so hard~~ Have a happy day today! 🙏

        lannstark님의 다른 강의

        지식공유자님의 다른 강의를 만나보세요!

        비슷한 강의

        같은 분야의 다른 강의를 만나보세요!

        강의상세.할인문구

        $11,550.00

        30%

        $13.20