前提・実現したいこと
Swiftにおけるプロトコル指向設計の考え方
最近Swiftの勉強を始めました。
Java経験者です。
Swiftは色々な書き方があって何を勉強するか悩みましたが、
今後普及していくであろうことを見込んで最近発表されたSwiftUIを使ってみることにしました。
一通り基本構文を勉強し、さっそく一本アプリを作ってみようとしたところで、
オブジェクト指向の考え方との違いで躓いてしまいました。
例えば、次のような実装を行う場合、どのような設計にするべきなのでしょうか?
作りたい機能例
商品名 | 値段 | 個数 | 購入日 |
---|---|---|---|
みかん | 50 | 10 | 2019/10/18 |
りんご | 100 | 5 | 2019/10/18 |
こんな感じのテーブルに、複数画面に渡って情報を入力して登録を行いたいです。
画面1:商品名入力
画面2:値段入力
画面3:個数入力
画面4:購入情報の確認
各画面にあるTextFieldに購入情報を入れ、最後の画面で購入情報を出力し、
情報を確認して決定ボタンを押したらテーブルに登録される
購入情報のクラスを作り、インスタンス化して最初の画面にオブジェクトを渡す
→商品名の変数に格納し、次の画面にオブジェクトを渡す
・・・・
→最後の画面でオブジェクトの情報からテーブルに登録
上記の手順で考えていましたが、この実装はやはり設計思想的に好ましくないのでしょうか?
好ましくない場合、どのような実装にするべきなのでしょうか?
また、上記とは別の質問になってしまうのですが、
上記の画面1〜3が全て同じ構成(タイトル・テキストフィールド・次へボタンが入ったView)だとすると、
Viewに準拠してタイトル・テキストフィールド・次へボタンを定義したプロトコルを作成して、それに準拠させる形で実装するのかなと思っていたのですが、
この考え方は間違っているのでしょうか?
とういうのも、テキストビューやボタンを配置するのはbodyの中になると思うのですが、
bodyを実装すること自体はプロトコルで定義できても、その中身まで定義する手段が分からず、どうやって実装すればいいのか分かっていない状態です。。。
回答1件
あなたの回答
tips
プレビュー