アラン Swift Concurrency for Swift 6 (Part-1)

Swift ConcurrencyをAからZまで網羅します。(Part 1)

難易度 初級

受講期間 24か月

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% 受講後に作成

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

5.0

Bana

63% 受講後に作成

内容が本当に本当に本当に素晴らしいです... アランさんがiOSの講義をもっと撮ってくれたらいいのに 重要な概念を明確に強調して何度も繰り返して説明してくれて、記憶にも確実に残るようです とても良い講義なので、私だけ聞きたいのですが、講義評価を残して帰ります😊😊

5.0

qowiedncz

43% 受講後に作成

本当に分かりやすく説明してくださって、とても助かります。私は業界に携わっていますが、本当に多くの助けになっています。心から本当に本当に感謝しています!

受講後に得られること

  • Swift Concurrency (Swift 並行処理プログラミング)

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

  • async/await 関連の新規 API

  • Continuation(コンティニュエーション)の使用法

  • Structured Concurrency (構造的同時実行 / 並列処理)

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

  • Cancellation (作業取消)

  • 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 Concurrency for Swift 6 (パート1) ✍🏻

副題:Swift 6へ進むためのSwiftコンカレンシー(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で主に扱う内容 (別講義)

  • 並列プログラミングをコンピューターサイエンスの観点から理解する(スレッド/メモリ構造の理解)

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

  • Task IsolationとShared Mutable State(共有データ)

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

  • Actor完全攻略 (1) 隔離/非隔離 (2) アトミック性 (3) 再突入 (4) アクターホッピング

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

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

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

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

  • ウェブソケットに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. 無期限の受講ではありません。 本講義は24ヶ月(2年)の受講制限期間があります。あらかじめご了承ください。(私の講義を共有される事例を何度も経験した結果、そして私が費やす時間と労力に対して大きな利益を得られるわけでもないため、私にできる最善の講義共有防止策に過ぎません。何卒ご理解いただけますと幸いです 🙏🏻). Xin vui lòng lưu ý. (Sau nhiều lần trải qua các trường hợp chia sẻ trái phép bài giảng của mình.. và vì tôi cũng không kiếm được số tiền quá lớn so với thời gian và công sức bỏ ra.. nên đây chỉ là biện pháp tốt nhất mà tôi có thể làm để ngăn chặn việc chia sẻ bài giảng, mong các bạn rộng lòng thông cảm 🙏🏻)

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

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

こんな方に
おすすめです

学習対象は
誰でしょう?

  • Swift Concurrencyプログラミングをしっかりと習得したい方

  • 並行プログラミングを理論的にしっかりと深く(deepに)学びたい方

  • WWDCの動画以上に、内容を完璧に自分のものにしたい方!!!!!!

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

  • Swift言語の基本

こんにちは
allenです。

7,620

受講生

757

受講レビュー

312

回答

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分)

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

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

受講レビュー

全体

65件

5.0

65件の受講レビュー

  • lghan000203650님의 프로필 이미지
    lghan000203650

    受講レビュー 6

    平均評価 5.0

    5

    100% 受講後に作成

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

    • tjdgml1502376517님의 프로필 이미지
      tjdgml1502376517

      受講レビュー 2

      平均評価 5.0

      修正済み

      5

      80% 受講後に作成

      最高の concurrency 講義です。

      • sjybext6573님의 프로필 이미지
        sjybext6573

        受講レビュー 4

        平均評価 5.0

        5

        100% 受講後に作成

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

        • shimstone5884님의 프로필 이미지
          shimstone5884

          受講レビュー 6

          平均評価 5.0

          5

          100% 受講後に作成

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

          • roel님의 프로필 이미지
            roel

            受講レビュー 16

            平均評価 5.0

            5

            100% 受講後に作成

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

            allenの他の講座

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

            似ている講座

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

            ¥12,598