ども木村です。この記事ではSwiftUIにおけるプロトコル(Protocol)の使い方について解説します。
本記事のサンプルスクリプトはPlaygroundで実行しながら見ていただくことを推奨しています。Playgroundの導入/使い方についてはこちらを参考ください。
実行環境
本記事の実行環境は以下になっています。
- Xcode Version 12.3
- Playgrounds Version 3.4.1
- macOS Version 11.4
プロトコル(Protocol)の使い方
プロトコルとは、具体的な処理内容については定義せず準拠すべきプロパティや、メソッドを定義します。
プロトコルを適応したクラスや構造体は必ずプロトコルで定義された内容に準拠した上で実装しなければいけません。
このように実装すると、決められたプロパティや、メソッドを元に開発するため意図しなかった処理の実装を防ぐことがきます。
例えば以下のようなNumberプロトコルを定義します。
protocol Number {
var number: Int { get set }
}
Numberプロトコルを構造体Testに適応します。
struct Test: Number {
var number: Int
}
プロトコルの継承
定義したプロトコルを別のプロトコルへ継承することが可能です。クラスと違い、複数のプロトコルを一つのプロトコルで継承することができます。
プロトコルを継承する際は以下のように行います。以下の例では、プロトコルNumberA,NumberB,NumberCをプロトコルTestで継承します。
protocol NumberA {
var numberA: Int { get set }
}
protocol NumberB {
var numberB: Int { get set }
}
protocol NumberC {
var numberC: Int { get set }
}
protocol Test: NumberA,NumberB,NumberC { }
最新のSwift勉強方法まとめ
勉強方法を知る
書籍で勉強する
Udemyで勉強する
スポンサーリンク