inflearn logo
inflearn logo

# Alan Swift Concurrency for Swift 6 (Part-1)

# Covering Swift Concurrency from A to Z (Part 1)

(5.0) 수강평 61개

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

난이도 초급

수강기한 12개월

iOS
iOS
Swift
Swift
concurrent
concurrent
async-await
async-await
concurrency
concurrency
iOS
iOS
Swift
Swift
concurrent
concurrent
async-await
async-await
concurrency
concurrency

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

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

5.0

5.0

김동현

100% 수강 후 작성

I think this is a must-take course for learning Swift Concurrency. By comparing existing GCD with Swift Concurrency, I was able to clearly understand how the perspective on asynchronous programming has changed from the past to the present, and the explanation of structured concurrency was greatly helpful. Please continue to provide many great courses in the future!

5.0

Bana

63% 수강 후 작성

The content is so good.... I hope Alan will film more iOS lectures He clearly emphasizes important concepts and explains them repeatedly, so I think it's easy to remember It's such a good lecture that I want to listen to it alone, but I'll leave a review 😊😊

5.0

qowiedncz

43% 수강 후 작성

I think you explain things so well and in a way that is easy to understand. I am a professional in the field and I am getting a lot of help. I am truly, truly grateful!

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

  • Swift Concurrency (Swift Concurrent Programming)

  • # Task / async / await (Asynchronous Processing)

  • New APIs Related to async/await

  • # How to Use Continuation

  • Structured Concurrency (Structured Concurrency / Parallel Processing)

  • async let / TaskGroup (Parallel Processing Techniques)

  • Cancellation

  • # How to Use Task-Local Variables

  • (Undo) Project Implementation Cases

For this course, you must purchase the textbook (e-book PDF) separately.

(This course took over a year to produce the textbook. Because it covers the most optimal/best content for learning and more detailed learning material than any other Swift Concurrency content on Earth, we ask for your understanding that we are selling the textbook separately to maintain the quality of the course. Purchasing the textbook is optional. It is perfectly fine to purchase only the course.)


Swift Concurrency for Swift 6 by Allen (Part -1 / Part -2 Integrated Textbook)

StoreLink: https://smartstore.naver.com/allenschool/products/11528874881
(30,000 KRW)

Even if you don't directly take this course, you can purchase the textbook separately. (However, since the materials are optimized for the course, there may be content that is difficult to understand if you only purchase the textbook. If you agree to this, you can purchase only the textbook without buying the course.)

Swift Concurrency for Swift 6 (Part - 1) ✍🏻

Subtitle: Properly Learning Swift Concurrency Programming to Move Forward with Swift 6


🌿🌿🌿

A solid foundation based on CS and
attention to detailed nuances
make the difference in skill level.

🌿🌿🌿



Swift introduced new concurrency programming (Swift Concurrency) in version 5.5, and after going through step-by-step preparations, it has finally been updated to version 6. And one of the core goals of Swift 6 is to eliminate potential data races (Race Condition/Data-Races) and ensure safety by enabling the implementation of Thread-Safe code from the compilation stage.

(We are at a turning point for the gradual adoption of Swift 6.)


Therefore, this course is designed to gradually move toward Swift 6, with the goal of learning everything from A to Z related to Swift Concurrency. Please refer to the main content of this course below, and the first introductory video provides a detailed explanation of the course, so please check that as well.

(By completing your studies through Part-2, you will have established the theoretical foundation necessary for adopting Swift 6.)


It's always a personal goal for my lectures, but I cover more detailed and in-depth content than any other Swift Concurrency-related lecture on Earth. (I believe that obsessive attention to detail and subtle differences make the difference in skill level, so I always strive to provide various code examples and well-organized materials.)

What You'll Learn in This Course 🕵🏻‍♂️👨🏻‍🎓

(1) Content mainly covered in Part - 1 (this course)

  • # Proper Understanding of Task / async / await


  • How asynchronous (async) functions work

  • Introduction to New Asynchronous APIs Related to URLSession

  • Using Continuation (1) Callback Functions / (2) Converting Delegate Pattern to Asynchronous Approach

  • # Example Project: Converting CoreLocation Delegate Pattern to async/await This example demonstrates how to convert CoreLocation's delegate-based API to a modern async/await pattern, making location handling code more readable and maintainable. ## Traditional Delegate Pattern ```swift import CoreLocation class LocationManager: NSObject, CLLocationManagerDelegate { private let manager = CLLocationManager() private var locationHandler: ((CLLocation) -> Void)? override init() { super.init() manager.delegate = self } func requestLocation(completion: @escaping (CLLocation) -> Void) { locationHandler = completion manager.requestLocation() } func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) { guard let location

  • The theoretical content of structured concurrency

  • Parallel Processing - (1) async let (2) TaskGroup

  • Understanding How Task Cancellation Works (Project Examples Related to Task Cancellation)

  • Understanding the Cooperative Cancellation Model

  • # Applications of Structured Concurrency and Task Cancellation

  • Application of TaskGroup (Specifying the Number of Concurrent Threads - Custom Settings)

  • # Utilizing Task-Local Variables


(2) (Future) Content to be mainly covered in Part - 2 (Separate lecture)

  • Concurrent Programming: Understanding from a Computer Science Perspective (Understanding Threads/Memory Structure)

  • Data Isolation / Task Isolation / Actor Isolation (Understanding Isolation Concepts)

  • # Task Isolation and Shared Mutable State

  • Sendable Type (Data Types Safe to Share Between Threads)

  • Actor Complete Guide (1) Isolation/Non-isolation (2) Atomicity (3) Reentrancy (4) Actor Hopping

  • (5) Main Actor Blocking (6) Resolving Actor Conflicts

  • Global Actor and MainActor

  • Implementing Cache with Actors: Project Example

  • AsyncSequence (Asynchronous Sequence) and AsyncStream (Asynchronous Stream)

  • # Applying AsyncStream to WebSocket Project Example 199981

  • # Sending Non-Sendable Types

  • Function (Closure) Isolation Issues - isolated (Actor)? = #isolation / @isolated(any)

  • # Implementing Custom Executors / Task Executor Preferences

  • # Reference: consume / consuming keywords --- **Note**: This appears to be a reference note or heading about the keywords "consume" and "consuming". Without additional context or content to translate, I've provided the direct English translation of the heading structure. If you have specific content related to these keywords that needs translation, please provide the full text and I'll translate it

  • Actor Grammar Rules Deep Dive - Initializers / Deinitializers / Protocols / Inheritance / Extensions

  • Transitioning from Swift 5 to Swift 6

  • Analyzing Projects Using Instruments



    Part-2 Course Link: https://inf.run/TyZcJ


The characteristics of this course

📌 The goal is to cover Swift Concurrency programming from A to Z.

📌 This serves as the foundation for writing thread-safe code at compile time (which is Swift 6's goal).

📌 This course is created by thoroughly analyzing all existing WWDC videos related to Swift Concurrency.

📌 We analyze numerous overseas books, lectures, and other materials related to Concurrency to cover all content as comprehensively as possible without omission.

📌 Various Example Projects

📌 So more detailed than any other Swift Concurrency course on Earth!!!!

📌 (As always with my courses) I provide separate learning materials for the most intuitive understanding and organization.

The best materials for learning are provided.

Separate textbook (full-color PDF) available for purchase

For the most intuitive explanation possible, we provide a separate 300-page textbook.
(The textbook must be purchased separately.)

Providing various translation materials including official documentation translations

We provide translations of official documentation such as Swift 6 (Concurrency) and API Collection to help you use your learning time as efficiently as possible.

Providing various project example code materials

Not only theoretical content, but also in-depth learning by directly applying what you've learned to projects.

Theoretical learning code materials provided

Playground code materials with various examples are provided for optimal theoretical learning.

Notes Before Enrollment

Textbook sold separately (30,000 won)

1. Providing Learning Materials

  • Code materials provided /

    Project Examples Provided

  • Multiple Translations Provided (Swift 6 - Concurrency / API Collection / Migrating to Swift 6)

2. Prerequisites and Important Notes

  • Basic aspects of Swift syntax - able to freely handle functions, closures, etc.

  • Basic knowledge of handling asynchronous callback functions, DispatchQueue, etc.

  • Experience handling network call APIs (URLSession, etc.) in Swift

  • Basic knowledge of UIKit and SwiftUI

3. Practice Environment (Can be taken in environments meeting or exceeding the following specifications)

  • macOS Sequoia / Xcode 16 (Playground theory learning is also possible in Xcode 15.3 ~ 15.4)


💌 Regarding Course Content License


The content of this course includes PDF files with related URL addresses in cases where I referenced any images or other materials. Except for those cases, all materials are created by me, so sharing the course content on blogs or distributing the e-book textbook PDF files used as course materials is prohibited under any circumstances.

(If you violate the terms of this license, you may be held legally liable, so please be sure to take note.)

Q. Is the course available for lifetime access?

A. This is not lifetime access. This course has a 12-month access period limitation. Please be aware of this. (After experiencing multiple cases of my courses being shared... and since this isn't something that generates significant income compared to the time and effort I invest... this is simply the best course-sharing prevention measure I can implement, so I ask for your generous understanding 🙏🏻)

Have you taken the Grammar Bootcamp before..? 🙋🏻‍♂️🙋🏻‍♀️

If you have previously taken my Swift Master School (2-month program), please contact me via Slack.. and I will provide you with a free enrollment for this Part-1 course. (Please check the general announcements on the bootcamp Slack.)

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

학습 대상은 누구일까요?

  • Anyone who wants to properly learn Swift Concurrency programming

  • Those who want to learn concurrency programming deeply and thoroughly from a theoretical perspective

  • For those who want to dive even deeper than WWDC videos!!!!!!

선수 지식, 필요할까요?

  • The Basics of the Swift Language

강의소개.지공자소개

7,578

수강생

751

수강평

310

답변

5.0

강의 평점

7

강의_other

I'm Allen, an iOS Developer.
https://www.youtube.com/@allen_ios

"Knowledge that is accurately understood must be easily explainable in one's own words." is my motto.

Therefore, I want to be a developer who can share knowledge in a language anyone can understand by simplifying the trial and error I experienced while studying.


I am not interested in creating courses that only teach easy topics superficially in a short amount of time.
While such courses can be churned out quickly, I believe that ultimately, "growing into a good developer" requires a solid foundation of theoretical knowledge.

Rather than just an easy course, my goal is to teach even the difficult concepts that one
must know to become a good developer (a developer who can grow continuously) as easily and intuitively as possible.
Thus, my objective is to build a foundation that allows you, not me, to contemplate and think about the "WHY" yourself.

Just as I strive to become a better developer tomorrow,
I want to convey the things I have pondered in great depth.

 

I believe that repeatedly failing interviews or being unable to express even simple concepts in your own words means you do not have a precise understanding of them. On the contrary, I believe that one can grow rapidly only when they have a "solid foundation" in basic concepts and CS.


👇🏻For inquiries, please contact me at the email address below.

we.love.code.allen@gmail.com


Language: Swift, Python, Java, C#

더보기

커리큘럼

전체

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

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

수강평

전체

61개

5.0

61개의 수강평

  • tjdgml1502376517님의 프로필 이미지
    tjdgml1502376517

    수강평 2

    평균 평점 5.0

    수정됨

    5

    80% 수강 후 작성

    The best concurrency lecture.

    • lghan000203650님의 프로필 이미지
      lghan000203650

      수강평 6

      평균 평점 5.0

      5

      100% 수강 후 작성

      I think this is a must-take course for learning Swift Concurrency. By comparing existing GCD with Swift Concurrency, I was able to clearly understand how the perspective on asynchronous programming has changed from the past to the present, and the explanation of structured concurrency was greatly helpful. Please continue to provide many great courses in the future!

      • sjybext6573님의 프로필 이미지
        sjybext6573

        수강평 4

        평균 평점 5.0

        5

        100% 수강 후 작성

        I'm really looking forward to Part 2 of the lecture... Thank you so much for explaining the very difficult content in an easy-to-understand way! I'm gaining confidence in Swift Concurrency!

        • shimstone5884님의 프로필 이미지
          shimstone5884

          수강평 6

          평균 평점 5.0

          5

          100% 수강 후 작성

          I've been using concurrency-related code without a clear understanding, but this helped me easily grasp the principles!

          • roel님의 프로필 이미지
            roel

            수강평 16

            평균 평점 5.0

            5

            100% 수강 후 작성

            The instructor explained everything so meticulously and in such detail that I was able to fully understand concepts that I only had a vague understanding of before. In particular, what impressed me most about this lecture was the excellent examples of how it is applied to real projects. It wasn't just a simple delivery of theory, but the practical examples made it much easier to understand, and I also gained confidence that I could apply it directly to my actual work.

            allen님의 다른 강의

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

            비슷한 강의

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

            강의상세.할인문구

            $53.90

            30%

            $77.00