Serviceを読んで理解し、同意したものとみなします。スタック・オーバーフローはプログラマーとプログラミングに熱心な人のためのQ&Aサイトです。1,003件00FuelPHPを利用しているのですが、Presenterの使いどころがいまいちわかりません。FuelPHPではPresenterをViewModelと命名されていたためAngularJSで使っていたMVVMを考えてみました。Angularでは画面(View)から処理の塊(ViewModel)を呼び出し、Modelのデータを加工し、ViewModelが双方向データバインディングでViewに通知すると言う設計をしていました。一部分だけViewに通知すると言う使い方になると思うのですが、PHPには双方向のデータバインディングは存在しません。Presenterの使いどころをご存知の方がいらっしゃいましたら、教えてください。票2表示整形用の処理を置いて表現(デザイン)とロジックを分離するために使います。FuelPHPのPresenter/ViewModelはMVPのPでもMVVMのVMでもなく、MVCでいえばVです。FuelのViewはSmartyやTwig、生PHPなどの、テンプレートエンジン用のテンプレートファイルを置くための場所となっています。Webアプリケーションの開発ではHTML出力に関わるテンプレートを書く部分と、ビジネスロジックを書く部分を分離して作るのがよくあるやり方です。超ざっくり分けると、なんかクラスとかメソッドとか使ってゴチャゴチャ処理する奴はMやC、Vのテンプレートでは変数の出力や単純なループ/分岐くらいで済ます、という感じになります。デザイン修正で処理を壊したり、処理の修正でデザインが崩れるといった問題を避けやすくなり、またデザインや処理単独での修正時に関係のない部分を思考から排除できるため、作業がしやすくなります。このような分け方をしますと、表示上でのみ必要な整形処理(たとえばDBから取得したデータをHTMLのテーブルに出力しやすい形の配列へ加工する処理など)をどこに置くか、という問題が出ます。Vに密接な処理となるので、本来Mに置くのもCに置くのも釈然としません。いってVのテンプレートファイルに複雑な処理を置こうとすると、複数画面での処理共通化やマークアップエンジニアとの共同作業など、色々面倒な部分が増えます。MVCのVをテンプレートエンジン用のテンプレートファイル表示整形処理を置くPresenter/ViewModelの2階建てとして、表示整形処理のおさまり場所を作るとともに、クラスとして作るので継承やtraitなどで処理の共通化も可能となる、というのがFuelPHPのPresenter/ViewModelです。利用は任意で、必要を感じなければ使わなくとも問題ありません。|回答スタック・オーバーフローに参加してくれて、ありがとうございます!質問の回答を共有してください。回答を説明し、自分の検討結果も共有してください。意見を述べること(意見を述べるなら、参照リソース、自分の経験で意見をサポートしてください)さらにサポートが必要な場合このヘルプを参考してください。“回答を投稿”をクリックすることで利用規約、プライバシーポリシー、及びクッキーポリシーに同意したものとみなされます。タグが付いた他の質問を参照するか、自分で質問をする。会を開催します🎉サイトの未翻訳箇所を見つけて、もくもく会で直しましょう関連する質問0【fuelphp】findでリレーションが勝手にされる1fuelphpでテスト実行時のモデル経由でのDBアクセス2DOMのsetAttribute()メソッドに属性を2つ加えたい!3FuelPHPでログイン状態のチェック1wordpressの最大アップロードサイズ変更について質問です。0FuelPHPのModelの階層化について0FuelPHPのORMの中間テーブルに別テーブルを結合してその別テーブルの値を取得したい。質問のフィードこのRSSフィードを購読するには、このURLをコピーしてRSSリーダーに貼り付けてください。