本リポジトリは書籍「Swift 5.9からのデータ監視 Observationフレームワーク入門」のサンプルコードを提供するリポジトリです。
Observation
フレームワークはSwift 5.9
から導入された新しいフレームワークです。
Observation
フレームワークが登場した経緯、使い方、特にSwiftUI
との連携方法や従来のデータバインディングで用いられたObservableObject
プロトコルとの比較を解説します。
Observation
フレームワークが登場した背景や仕組みを解説します。
Swift
マクロがコードをどのように変換しているかを深掘りします。
Observable
マクロの登場で、格納プロパティが初期化メソッド内で初期化できなくなりました。
SE-0400
のプロポーザルはそれを解消します。
Observation
フレームワークの関連プロポーザルとしてSE-0400
がどのような変更なのかをみていきます。
Observation
フレームワークの特徴や従来のObservableObject
プロトコルと何が異なるのかを探ります。
Observation
フレームワークのメリットがよく分かる章です。
SwiftUI
との連携を中心に解説します。
@State
や@Environment
、@Bindable
といったデータを扱うProperty Wrapper
の利用方法を解説します。
本サンプルコードはMITで配布しています。 詳細はこちらをご覧ください。
サンプルコード自体の疑問や改善点があれば、ぜひPull Requestやissueの作成をお願いします。 ただし、書籍上、解説のためにわざとワーニングを出している箇所があるので予めご了承ください。
書籍本文自体の疑問があれば下記メールアドレスにまでご連絡ください。
原稿の修正履歴をこちらのページのリリースページで公開します。 詳しくはこちらのページをご覧ください。
https://github.com/SatoTakeshiX/Swift-Observation-HandsOn/releases