web-dev-qa-db-ja.com

MVWとは何の戦略ですか?

これはAngularJSページのコンテンツの説明です。

AngularJSは、Webアプリケーションを構築するために設計されていれば、HTMLがどうなるかということです。純粋なクライアントサイドJavaScriptで実装された、データバインディング、MVW、MVVM、MVC、依存性注入、および優れたテスタビリティストーリーを備えた宣言型テンプレート!

それでMVWは何の略ですか? (MVC、MVVW、MVPなどの議論を考慮して、私は "whatever"、Model-View-Whatever = Pと推測します)

342
slacktracer

あなたのために働くものは何でも

MVC vs MVVM vs MVP。多くの開発者が何時間もかけて議論し議論することができる物議をかもす話題のトピック。

数年の間、+ AngularJSはMVC(またはそのクライアント側の1つ)に近づいていましたが、時間の経過とともに多くのリファクタリングとAPIの改良により、MVVMに近づいています。私達がコントローラーと呼ぶ機能によって装飾されている。

フレームワークを分類してMV *バケットの1つに入れることができることには、いくつかの利点があります。フレームワークを使用して構築されているアプリケーションを表すメンタルモデルを簡単に作成できるようにすることで、開発者がAPIに慣れるのを助けることができます。開発者が使用する用語を確立するのにも役立ちます。

とは言っても、私は開発者がMV *ナンセンスについて議論するのに時間を浪費するのではなく、うまく設計された問題の分離に従ったキックアスアプリケーションを開発することを望みます。そしてこの理由から、私はここでAngularJSをMVWフレームワークであると宣言します - Model-View-Whatever。 ここで、Whateverは「あなたのために働くものは何でも」を表します。

Angularを使用すると、プレゼンテーションロジックとビジネスロジックおよびプレゼンテーション状態とを適切に区別することができます。一日の終わりにそれほど問題にならないことについての熱い議論ではなく、あなたの生産性とアプリケーションの保守性を促進するためにそれを使ってください。

437
Christian.K

完全を期すために、ここで言及されている頭字語は次のとおりです。

MVC - Model-View-Controller

MVP - モデル - ビュー - プレゼンター

MVVM - Model-View-ViewModel

MVW/MV * - Model-View-Whatever

そしてもう少し:

HMVC - 階層モデル - ビュー - コントローラ

MMV - 多目的モデルビュー

MVA - Model-View-Adapter

138
Steve Chambers

とは言っても、私は開発者がMV *ナンセンスについて議論するのに時間を浪費するのではなく、うまく設計された問題の分離に従ったキックアスアプリケーションを開発することを望みます。そしてこの理由で、私はここでAngularJSをMVWフレームワーク - Model-View-Whateverであると宣言します。 「あなたのために働くものなら何でも」という意味で何でも

クレジット: AngularJS投稿 - Igor Minar

20
Adrian Enriquez
8
xgqfrms

私は、MWV(Model View Whatever)またはMV *がAngularjsの独自性のいくつかを説明するためのより柔軟な用語であると感じています。 MVC(Model View Controller)JavaScriptフレームワーク以上のものであることを理解するのに役立ちましたが、Model ViewとControllerを持っているので、まだMVCを使用しています。

MVP(Model View Presenter)パターンと見なすこともできます。私はPresenterをAngularjs for the Viewのユーザーインターフェースビジネスロジックと考えています。例えば、表示用にデータをフォーマット設定できるフィルターを使用することによって。これはビジネスロジックではなく表示ロジックであり、GWTで使用したMVPパターンを思い出させます。

さらに、それはまた、MVVM(モデルビュービューモデル)であってもよく、ビューモデル部分は両者間の双方向バインディングである。それはあなたが使用できるだけでなく@Steve Chambersによって言及されている他のパターンを持っているので、すべての最後にそれはMVWです。

この用語から概念を理解することがポイントであるため、これらの用語を理解することは有害である可能性があるという他の答えにも同意します。どこにそしてなぜ行きます。

1
James Drinkard