강의

멘토링

커뮤니티

BEST
Programming

/

Mobile Application Development

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

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

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

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

受講後に得られること

  • CSで理解する Swift Concurrency

  • 既存スレッドプールの概念と協調的スレッドプールとメモリ構造

  • タスク分離 / 送信可能

  • Actorの基本概念 - 隔離 / 非隔離

  • Actorの活用 - 原子性/再入/hopping/最適化

  • Actor - コンストラクタ/デストラクタ/プロトコル/継承/拡張 ルール

  • 全域アクター / MainActor

  • AsyncSequence / AsyncStream

  • Custom 実行者(Executor)の実装と選好概念

  • Non-Sendableタイプの転送と関数隔離問題

[[SPAN_1]]⛔[[/SPAN_2]] 本講義は教材(電子書籍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 (パート - 2) ✍🏻

副題: 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-1 / 2の内容をすべて学習されると、Swift 6の導入のための理論的な基盤が完成されることでしょう。)


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

(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を使用してプロジェクト分析する

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

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


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

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

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

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

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

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

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

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

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

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

  • Task-Local変数の活用

Part-1 講義リンク: https://inf.run/jXpfH

この講義の特徴

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

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

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

📌現存するすべてのSwift Evolution文書(github)を参考にして作成した講義です。

📌 数多くの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.2以上

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


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

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

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

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

こんな方に
おすすめです

学習対象は
誰でしょう?

  • Swift Concurrency を 深化学習したい方

  • CSの内容までしっかり勉強する方

  • 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#

カリキュラム

全体

71件 ∙ (16時間 2分)

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

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

受講レビュー

全体

21件

5.0

21件の受講レビュー

  • rnjsdydqkr0550님의 프로필 이미지
    rnjsdydqkr0550

    受講レビュー 5

    平均評価 5.0

    5

    61% 受講後に作成

    • jspark5626님의 프로필 이미지
      jspark5626

      受講レビュー 1

      平均評価 5.0

      5

      31% 受講後に作成

      • bsbs76055666님의 프로필 이미지
        bsbs76055666

        受講レビュー 1

        平均評価 5.0

        5

        100% 受講後に作成

        • rlatlwhd4561075님의 프로필 이미지
          rlatlwhd4561075

          受講レビュー 4

          平均評価 5.0

          5

          39% 受講後に作成

          Swift Concurrencyについて、とても詳しく理解できる講義資料のようですね、ありがとうございます

          • leekt5128님의 프로필 이미지
            leekt5128

            受講レビュー 1

            平均評価 5.0

            5

            100% 受講後に作成

            ¥29,996

            allenの他の講座

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

            似ている講座

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