Swiftで遊ぼう! - 572 - プロトコール
- Swiftで遊ぼう!の前書き-> Life-LOG OtherSide
- Swift2.1 & Xcode7.1対応の日本語版アップルチュートリアル!
- 私の本業、オフィシャルなブログ-> Life-LOG
「詳解 Swift 改訂版」を超スローペースで進んでいます。
構造体のチャプターを読んでいるところですが、プロトコールの話題が入ります。
プロトコールの存在理由はデリゲーションと絡めて、ある程度自分の中でまとまっていました。
今回、萩原さんによる「プロトコール」の説明を読んで、「プロトコール」のみの存在理由をしっかり把握することにします。
Swiftでは整数や実数といった型もすべて、構造体の定義と同様にメソッド(演算子も含む)、プロパティなどを宣言しています。
この記述から、Int型、Double型、String型ってのは、構造体って事になるんです。しかし、メソッドやプロパティをそのまま保持しているのでは無く、こういう機能的なメソッドを分離してまとめて扱う方法としてプロトコールを用意することで、型が異なっても同じメソッドを使用できる便利さが生まれる訳です。
私の説明では、なかなか理解できないと思います。萩原さんの説明では、四則演算やシフト演算をさせるメソッドを例にして説明しているので原著を読むといいでしょう。
また少しだけですが、今日もこれだけ。
PS.やっとオリジナルアプリプロジェクトを開始します!