メニュー

一冊でマスター!Swift Concurrency入門

発売日: 2022/7/29 想定ページ数: 128ページ ISBN: 9784295601289 全文検索: 対応
★★★★★ ★★★★★ 0件
Swift 5.5からSwiftは並行処理を言語機能としてサポートするようになりました。それがSwift Concurrencyです。本書はその機能を解説しています。 async/awaitにより、非同期処理をクロージャーよりも完結に記述できます。データ競合を防ぐ新しい型としてActorやデータ競合が発生しない型を表すSendableが登場しました。並行処理の実行単位であるTaskもあります。Swift ConcurrencyはWWDC 2021の目玉機能といっても過言ではありません。
Swift Concurrencyの概要が一冊で日本語で理解できるのが本書の特徴です。Swift Concurrencyには覚えなければいけない概念が数多くあります。
async、await、Actor、MainActor、Task, TaskGroup、AsyncSequence、Sendableなどなど。本書は一冊でSwift Concurrencyの概要をほぼ全て網羅しています。各章にそれぞれサンプルコードが付属しているので、どんな動作をするのかを試して理解を深められます。

【目次】
第1章 async/await
第2章 Actor/データ競合を守る新しい型
第3章 AsyncSequence
第4章 Task
第5章 Sendable
第6章 既存のプロジェクトにSwift Concurrencyを導入
目次プレビュー
  • はじめに
  • 第1章 async/await
  • 第2章 Actor/データ競合を守る新しい型
  • 本書の構成
  • 対象読者
  • 動作環境
  • サンプルコード
  • 表記関係について
  • 1.1 クロージャーのコールバックによる非同期処理の問題点
  • 1.2 async/awaitで解決する
  • 1.3 プログラムの待機可能性とは?
  • 1.4 async/awaitの文法
  • 1.5 順列実行と並列実行
  • 1.6 クロージャー形式のメソッドを非同期関数にラップする
  • 1.7 withCheckedContinuation
  • 1.8 withCheckedThrowingContinuation
  • 1.9 resumeメソッドは必ず1回実行する
  • 1.10 まとめ
  • 2.1 シリアルキューでデータ競合を解決
  • 2.2 Actorでデータ競合を守る
  • 2.3 Actorの文法
  • 2.4 nonisolatedでActor隔離を解除する
  • 2.5 再入可能性と競合状態
  • 2.6 MainActor
  • 2.7 まとめ
  • 3.1 iOS 15のAPIを利用する
  • 3.2 カスタム定義
  • 3.3 AsyncStream/既存コードに適応
  • 3.4 まとめ
  • 4.1 Structured Concurrency
  • 4.2 タスクツリー
  • 4.3 タスクグループ
  • 4.4 エラーが発生しないタスクグループ
  • 4.5 エラーが発生するタスクグループ
  • 4.6 協調的なキャンセル
  • 4.7 async letバインディング
  • 4.8 Unstructured Concurrency
  • 4.9 下位階層にStructured Concurrencyがある場合
  • 4.10 各タスクの特徴比較
  • 4.11 まとめ
  • 5.1 Sendableプロトコル
  • 5.2 @Sendable属性
  • 5.3 Swift 6への準備
  • 5.4 @preconcurrency
  • 5.5 Xcode 13.4の変更
  • 5.6 まとめ
  • 6.1 XcodeバージョンとSwift Concurrencyの対応状況
  • 6.2 既存アプリ:GitHubリポジトリー検索アプリ
  • 6.3 Swift Concurrencyを導入
  • 6.4 iOS 15にむけて
  • 6.5 まとめ
  • 著者紹介/佐藤剛士 @hatakenokakashi
  • 感想、フィードバック
  • 謝辞
  • 参考文献
  • 英訳対応表

まだレビューが投稿されていません