Open yuzuco15 opened 8 years ago
なぜMVPではなくMVCを取ったのか。MVCの場合、Model層へロジックが寄りやすいが、どのように回避したか。
- もともとCakePHPをメインに書いていて、MVPを知りませんでした。実際に回避できているかわからないのですが、こまめにModelに関数を作りController側でロジックを組めるような意識をしていました。
データを結構こねこねしているが、Presenterの採用は考えなかったか
- FuelPHPを余り書いたことがなく、プレゼンターを知らなかったです。
なぜ時刻系がmysql_timestampじゃないのか
- FuelPHPのデフォルトがおそらくmysql_timestampで、そのまま使用していました。使いづらかったので、変更します。 各モデルで意味するinitとはなにか。saveとは何が違うのか。なぜ用意したのか。
- 複数モデルの保存を一括で行う場合にControllerではなくModelに書こうと思い別にしていたのですが、最終的にははControllerでやってしまいました。 Validation ObserverではなくValidation Factoryを選択した理由
- Modelの引数が$factoryになっているだけで、FuelPHPのもともとのValidationを使用しています。Validation ObsererとFactoryは知らなかったです。 Food modelについて、category?が3つとtagが5つという設定が決め打ちになっているが、なぜか。
- 将来的にはcategoriesやtagsのようなテーブルを作成しユーザが自由に登録できるような形を考えています。今回は時間の関係上決め打ちしました。
基本的にresponseは(少なくともキーは)殆ど入っているものとして扱ってるように見えるが、Validationを置くならどうするか ・こちらに関してですが、時間の都合で確実なValidationを書いてなかったです。 ・今後の展開として、リクエストタイプ(3つ)それぞれに対するValidationを置くことを考えています。 1. "初期"リクエストが不正の場合、再びリクエストを送るように要求します。 2. "次の写真"リクエストが不正の場合、無視して前回リクエストをもとにレスポンス返します。サーバ側では、同じレスポンスを2回送信することはないので、二番目の候補が送信されます。 3. "終了"リクエストが不正の場合、コネクションを切断せず、リクエストを無視します。
質問
全体
Contoller層
Model層