강의

멘토링

커뮤니티

BEST
Programming

/

Mobile Application Development

앨런 Swift Concurrency for Swift 6 (Part-1)

Swift Concurrencyを AからZまで 扱います。(Part 1)

  • allen
이론 실습 모두
swift6
iOS
Swift
concurrent
async-await
concurrency

学習した受講者のレビュー

受講後に得られること

  • Swift Concurrency (スイフト並行プログラミング)

  • Task / async / await (非同期処理)

  • async/await関連新規API

  • Continuation (コンティニュエーション) 使い方

  • Structured Concurrency (構造化並行処理 / 並列処理)

  • async let / TaskGroup (並列処理技法)

  • キャンセル (作業取消)

  • Task-Local (タスクローカル変数) の使い方

  • (作業取り消し) プロジェクト 適用事例

本講義は教材(電子書籍PDF)を別途購入していただく必要があります。

(本講義は教材を制作するのに1年以上の時間を要しました。それほど学習のための最適・最上の内容と地球上のどのSwift Concurrency関連内容よりも詳細な学習内容を扱っているため、講義クオリティ維持のために.. 別途教材を販売していることをご了承ください。教材購入は選択事項です。講義のみ購入していただいても全く問題ありません。


Swift Concurrency for Swift 6 by Allen (Part -1 / Part -2 統合教材)

販売先リンク: https://smartstore.naver.com/allenschool/products/11528874881
(30,000円)

本講義を直接受講されない場合でも、教材のみの購入も可能です。(ただし、講義目的のために最適化された資料のため、教材のみ購入時には理解できない内容がある可能性があります。この点にご同意いただける場合は、講義を購入せずに教材のみ購入することも可能です。)

Swift 6のためのSwift Concurrency(パート1)✍🏻

副題: Swift 6に向けたSwift Concurrencyプログラミングをしっかりと学ぶ


🌿🌿🌿

CSに基づいた確固たる基礎力と
細かなディテールの差が
実力の差を生み出すと思います。

🌿🌿🌿



Swiftは5.5バージョンで新しい並行プログラミング(Swift Concurrency)が導入された後、段階的な準備を経てついに6バージョンにアップデートされました。そしてSwift 6バージョンの核心的な目標の一つが、まさにコードの潜在的なデータ競合(Race Condition/Data-Races)の可能性を除去し、コンパイル段階からThread-Safe(スレッドセーフ)なコードを実装できるようにして安全性を保証することです。

(私たちは段階的なSwift 6導入のための転換点に直面しています。)


したがって、本講義は段階的にSwift 6に向かうため、Swift Concurrencyに関連するすべての内容、つまりAからZまでを学習することを目標として設計されました。本コースの主要内容は下記をご参照いただき、最初の講義紹介動画でコースについて詳しく説明しておりますので、こちらもご参照ください。

(Part-2まで学習されると、Swift 6の導入のための理論的な土台が完成されることでしょう。)


いつも私の講義の個人的な目標ですが、地球上のどのSwift Concurrency関連講義よりも詳細で深い内容を扱っています。執着のような細かいディテールの差が実力の差を作ると思うので、いつも様々なコード例と整理された資料を提供しようと思います。)

コースで扱う内容 🕵🏻‍♂️👨🏻‍🎓

(1) Part - 1で主に扱う内容 (本講義)

  • Task / async / await の正しい理解


  • 非同期(async)関数の動作方式

  • URLSession関連の新規非同期API紹介

  • Continuationの使用 (1) コールバック関数 / (2) デリゲート方式を非同期方式に転換

  • 位置アプリ(CoreLocation)のデリゲート方式をasync/awaitに転換するプロジェクト例

  • 構造的並行性の理論的内容

  • 並列処理 - (1) async let (2) TaskGroup

  • 作業のキャンセル動作方式の理解(作業キャンセル関連プロジェクト例示)

  • 協力的キャンセルモデルの理解

  • 構造化並行性とタスクキャンセルの応用

  • TaskGroupの応用(同時スレッド数の指定 - カスタム設定)

  • Task-Local変数の活用


(2) (今後) Part - 2で主に扱う予定の内容 (別途講義)

  • 並行プログラミングをComputer Science観点から理解する(スレッド/メモリ構造の理解)

  • Data Isolation / Task Isolation / Actor Isolation(隔離概念の理解)

  • Task Isolationと共有可変状態(共有データ)

  • Sendable型(スレッド間で共有しても安全なデータ型)

  • Actor完全攻略 (1) 分離/非分離 (2) 原子性 (3) 再入可能性 (4) アクターホッピング

  • (5) メインアクター ブロッキング (6) アクター競合の解決

  • グローバルアクターとメインアクター

  • アクターでキャッシュ(cache)実装プロジェクト例

  • AsyncSequence(非同期シーケンス)とAsyncStream(非同期ストリーム)

  • WebSocketにAsyncStreamを適用するプロジェクト例

  • Non-Sendable タイプの送信 (sending)

  • 関数(クロージャ)の分離に関する問題 - isolated (Actor)? = #isolation / @isolated(any)

  • Custom実行者(Executor)の実装 / Task実行者(Executor)の優先度

  • (参考)consume / consuming キーワード

  • アクターの文法規則深化 - コンストラクタ / デストラクタ / プロトコル / 継承 / 拡張

  • Swift5からSwift6への移行

  • Instrumentsを使ってプロジェクト分析する



    Part-2 講義リンク: https://inf.run/TyZcJ


この講義の特徴

📌 Swift Concurrency プログラミングをAから~Zまで扱うことを目標としています。

📌 (Swift 6の目標である)コンパイル時からマルチスレッド間で安全なコードを書くための基盤となります。

📌 現存するすべてのWWDC - Swift Concurrency関連動画を参考にして作成した講義です。

📌 数多くのConcurrency関連の海外書籍、講義などを分析し、可能な限りすべての内容を漏れなく扱います。

📌 様々なサンプルプロジェクト

📌 だから地球上のどのSwift Concurrency講義よりも詳しく!!!!

📌 (私の講義はいつもそうでしたが)最大限直感的な理解と整理のために別途学習資料を提供します。

学習のための最高の資料が提供されます。

別途教材(戦車本PDF)購入可能

最大限直感的な説明のために、別途300ページ分量の教材で説明いたします。
(教材は別途購入していただく必要があります。)

公式ドキュメント翻訳版など様々な翻訳資料を提供

学習時間を最大限効率的に活用するため、Swift 6 (Concurrency) 公式ドキュメント、API Collection 公式ドキュメントなどの翻訳版を提供いたします。

様々なプロジェクト例示コード資料提供

理論的な内容だけでなく、学習内容をプロジェクトに直接適用しながら深化学習を行います。

理論学習コード資料提供

最高の理論学習のための様々な例示のプレイグラウンドコード資料が提供されます。

受講前の参考事項

教材別売り(3万円)

1. 学習資料の提供

  • コード資料提供 /

    プロジェクト例の提供

  • 多数の翻訳版を提供 (Swift 6 - Concurrency / API Collection / Migrating to Swift 6)

2. 前提知識および注意事項

  • Swift文法の基本的な事項 - 関数、クロージャなどを自由自在に扱えるレベル

  • 既存の非同期コールバック関数、DispatchQueueなどを扱った基本的な知識

  • SwiftでネットワークAPI呼び出し(URLSessionなど)を扱った経験

  • 基礎レベルのUIKit、SwiftUIの知識

3. 実習環境

  • macOS Sequoia / Xcode 16(理論学習はXcode 15.3 ~ 15.4 プレイグラウンドで可能)


💌講義内容ライセンス関連


本講義の内容は、私が少しでも図などを参考にした場合にPDFに関連URLが残されています。そのような場合を除いたすべての資料は私が作成した資料であるため、本講義の内容をブログに掲載することと講義資料として使用される電子書籍教材PDFファイルの共有はいかなる場合も禁止されます。

(本ライセンス関連内容に違反した場合、法的責任を負うことになる可能性がありますので、必ずご注意ください。)

Q. 講義は生涯受講できますか?

A. 永続受講ではありません。本講義は12ヶ月の講義受講に対する制限期間があります。ご注意ください。(私の講義を共有される事例を何度も経験した結果...そして私が費やす時間と労力に比べて大きなお金を稼げるわけでもないので...私ができる最善の講義共有防止対策に過ぎませんので、寛大なご理解をお願いいたします🙏🏻)

文法ブートキャンプを受講したことがありますか...?🙋🏻‍♂️🙋🏻‍♀️

私のSwiftマスタースクール(2ヶ月コース)を受講されたことがある方は、Slackでご連絡いただければ..本Part-1講義無料受講券を提供させていただきます。(ブートキャンプSlack全体お知らせをご確認ください。)

こんな方に
おすすめです

学習対象は
誰でしょう?

  • Swift Concurrencyプログラミングをしっかり学びたい方

  • 並行プログラミングを理論的に深く習得したい方

  • WWDC動画以上に噛み砕いて理解したい方!!!!!!

前提知識、
必要でしょうか?

  • Swift言語の基本

こんにちは
です。

7,492

受講生

733

受講レビュー

303

回答

5.0

講座評価

7

講座

iOS개발자 앨런입니다.
https://www.youtube.com/@allen_ios

"정확하게 아는 지식은, 쉽게 자신의 말로 설명할 수 있어야 한다."가 제 모토입니다.

그렇기에 제가 공부하면서 겪었던 시행착오를 쉽게 풀어내어
누구든 이해할 수 있는 언어로 지식을 공유할 수있는 개발자가 되고싶습니다.

저는 쉬운 주제로 빠른 시간 안에 겉핥기 식으로 쉽게만 가르치는 강의를 만드는 것에는 관심이 없습니다.
그런 강의는 얼마든지 빠르게 찍어내듯 만들 수 있겠지만, 결국 "좋은 개발자로 성장"하는 것은 그만큼 이론적인 기반의 밑거름이 탄탄해야 한다고 믿고 있기 때문입니다.

쉬운 강의보다는, 좋은 개발자(끊임없이 성장할 수 있는 개발자)가 되기 위해
반드시 알아야 하는 어려운 내용까지를 최대한 쉽게, 그리고 직관적으로 알려드리는 것.
그래서 제가 아닌 여러분 스스로 WHY(왜)를 고민/생각할 수 있는 밑거름을 만들어 드리는 것을 저의 강의 목표로 삼고 있습니다.

저 스스로도 내일은 더 좋은 개발자가 되자고 노력하는 만큼
제가 고민 했던 내용들을 깊이있게 전달 드리고 싶습니다.

 

면접에서 자꾸 떨어지거나, 쉬운 내용도 자신의 언어로 잘 표현하지 못하겠다는 것은 정확하게 알고 있지 않다는 의미라고도 생각합니다. 오히려 기본적인 내용, CS에 대해 "탄탄한 기본기"가 있어야, 빠르게 성장 가능하다고 믿습니다.


👇🏻문의는 아래의 이메일로 주시면 됩니다. 

we.love.code.allen@gmail.com


언어: Swift(스위프트), Python, Java, C#

カリキュラム

全体

50件 ∙ (11時間 38分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

52件

4.9

52件の受講レビュー

  • lghan000203650님의 프로필 이미지
    lghan000203650

    受講レビュー 4

    平均評価 5.0

    5

    100% 受講後に作成

    Swift Concurrencyを学習するために必ず受講すべき講義だと思います。 既存のGCDとSwift Concurrencyを比較してくださったおかげで、過去と現在の非同期プログラミング観点がどのように変わったのか明確に理解することができ、構造的並行性についての説明が大変役に立ちました。 今後も良い講義をたくさんお願いします!

    • tjdgml1502376517님의 프로필 이미지
      tjdgml1502376517

      受講レビュー 2

      平均評価 5.0

      修正済み

      5

      80% 受講後に作成

      最高の concurrency 講義です。

      • shimstone5884님의 프로필 이미지
        shimstone5884

        受講レビュー 6

        平均評価 5.0

        5

        100% 受講後に作成

        Concurrency関連のコードを漠然と使っていましたが、原理を簡単に理解できました!

        • roel님의 프로필 이미지
          roel

          受講レビュー 16

          平均評価 5.0

          5

          100% 受講後に作成

          講師の方が本当に細かく丁寧に説明してくださったおかげで、これまで曖昧にしか理解していなかった概念を完全に理解することができました。 特に今回の講義で最も印象深かった点は、実際のプロジェクトにどのように適用されるのかを示す例が非常に素晴らしかったことです。 単なる理論の伝達ではなく、実務中心の例を通して理解がはるかに容易になり、実際の業務にすぐに活用できそうだという自信も生まれました。

          • sjybext6573님의 프로필 이미지
            sjybext6573

            受講レビュー 4

            平均評価 5.0

            5

            100% 受講後に作成

            Part-2の講義がとても楽しみです… とても難しい内容ですが、分かりやすく説明してくださり本当にありがとうございます! Swift Concurrencyに自信が持てます!

            ¥12,351

            allenの他の講座

            知識共有者の他の講座を見てみましょう!

            似ている講座

            同じ分野の他の講座を見てみましょう!