MVVM モードと MVC モードの違い
1. MVVM モードは MVC モードから派生したものです;
2 、 MVVM モードは双方向のデータ バインディングですが、MVC モードは一方向の通信です。
3. MVVM モードは一般にフロントエンド開発に使用され、MVC モードはサーバー側で多く使用されます。
MVC
MVC モデルはもともとサーバー側の Web 開発に根ざしており、後にクライアントサイド開発の能力が向上し、Web 開発の複雑さと豊富さに対応できるようになります。
MVC は Model-View-Controller の略称で、アプリケーションを 3 つの部分に分割します。
Model: モデル (アプリケーションとビジネスを論理的にカプセル化するために使用されます)関連データとデータ処理メソッド)
View: ビュー (レンダリングされたページ)
Controller: コントローラー (M と V の間のコネクタが使用されます)
MVC の特徴:
MVC パターン を分離しているのが特徴です。つまり、アプリケーション内のビジネス ロジックやプレゼンテーション ロジックからデータ モデルを切り離すことです。クライアント側 Web 開発では、コードがモデル (M データ、操作データ) とビュー (データを表示する V-HTML 要素) の間で分離され、疎結合されるため、クライアント アプリケーションの開発、保守、テストが容易になります。
1. ビューはコントローラーに指示を送信します;
2. コントローラーがビジネス ロジックを完了した後、モデルは状態を変更する必要があります;
3. モデルは新しいデータをビューに送信します. ユーザーはフィードバックを受け取ります。
MVC の利点:
#結合度が低く、ビュー層とビジネス層が分離されているため、再コンパイルせずにビュー層のコードを変更できます。モデルとコントローラーコード。
高い再利用性
低いライフサイクルコスト
MVC により、ユーザーの開発と保守が可能になりますインターフェイス 技術的な内容が削減されます
高い保守性、ビュー層とビジネスロジック層の分離により、WEB アプリケーションの保守と変更も容易になります
デプロイメントの迅速さ
MVC の欠点:
中小規模のアプリケーションには適していません。 MVC の適用に時間がかかる それほど大きくないアプリケーションは、通常、得られるものよりも失うものの方が多くなります。
ビューとコントローラーの接続が近すぎます。ビューとコントローラーは互いに分離されていますが、密接に関連するコンポーネントです。ビューにはコントローラーがなく、そのビューにはコントローラーがありません。アプリケーションは非常に限定されており、その逆も同様であるため、独立した再利用が妨げられます。
ビューはモデル データへのアクセスが非効率的です。モデル操作インターフェイスによっては、十分な表示データを取得するためにビューを複数回呼び出す必要がある場合があります。変更されていないデータへの不必要に頻繁なアクセスも、運用パフォーマンスに悪影響を及ぼします。
MVC アプリケーション:
Web アプリの普及が始まった当初、MVC は Java (struts2) と C# (ASP.NET) に適用されました。サーバー側アプリケーション、そしてその後クライアント側アプリケーションでも、MVC パターンに基づいて AngularJS が登場しました。
MVVM
MVVM は、Model-View-ViewModel の略です。 Microsoft の WPF (Windows Presentation Foundation - Microsoft が立ち上げた Windows ベースのユーザー インターフェイス フレームワーク) は、新しい技術エクスペリエンスをもたらし、ソフトウェア UI レイヤーをより詳細かつカスタマイズ可能にします。同時に、技術レベルでは、WPF にはバインディング、依存関係プロパティ、ルーテッド イベント、コマンド、DataTemplate、ControlTemplate などの新機能も導入されています。 MVVM パターンは、実際には、MV パターンと WPF を組み合わせたアプリケーション方法から進化した新しいアーキテクチャ パターンです。これは、オリジナルの MVP フレームワークに基づいており、ますます複雑になる顧客ニーズの変化に対応するために WPF の新機能が組み込まれています。
MVVM の利点:
MVVM モードは MVC モードと似ており、主な目的はビュー (View) とモデル (Model) を分離することです。いくつかの利点があります:
低結合、ビュー (View) はモデルとは独立して変更および修正できます。ViewModel は異なる「ビュー」にバインドできます。ビューが変更されると、モデルは変更されないままにすることができ、モデルが変更されてもビューも変更されないままにすることができます。
再利用性。ViewModel にビュー ロジックを配置すると、多くのビューでこのビュー ロジックを再利用できます。
独立した開発。開発者はビジネス ロジックとデータ開発 (ViewModel) に集中でき、デザイナーはページ デザインに集中できます。Expression Blend を使用すると、インターフェイスを簡単に設計して XML コードを生成できます。
テスト可能、インターフェイスのテストは常に困難でしたが、現在では ViewModel 用のテストを作成できます。
推奨チュートリアル: 「PHP チュートリアル 」
以上がMVVMパターンとMVCパターンの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。