0

私は通常、バックエンド開発に取り組んでおり、モデルはデータベース クエリ操作または内部の初期化済みデータ フィールドのメモリ内表現として定義されます。コントローラーまたはサービス メソッドによって処理され、ユーザーのビューに渡されます。

jQuery にも精通していますが、コールバック地獄とイベント バインディングの管理に苦労しています。これにより、いくつかの主要なコードの肥大化やその他の問題が発生しました。

プロジェクトで Backbone を使用して jQuery の問題を解決しようとしています。しかし、フロント エンドの Web 開発のコンテキストでは、モデルとは正確には何でしょうか?

4

2 に答える 2

1

モデルは何でもかまいませんが、それらはすべて、JS アプリケーションの存続期間中、メモリに保存されます (ユーザーがタブ/ブラウザーを閉じるか、再読み込みすると終了します)。

ただし、モデルにはさまざまな種類があります。バックエンドのデータ エンティティを表すものと、フロントエンドのみのデータ エンティティを表すもの

たとえば、バックエンドにUserモデルがあり、フロントエンドにもUserモデルがあり、API (たとえば REST) を介してバックエンドにマップする必要があります。次に、フロントエンドにUser、現在のセッションのユーザー設定など、リンクできるがデータベースに保存すべきではないものがあります(データベースに保存できますが、データベースに保存することをお勧めしますローカル ストレージまたは Cookie を含むクライアント側ストレージの他の手段を使用するクライアント

要約するとModel、フロントエンドのコンセプトはバックエンドのコンセプトとかなり似ています。フロントエンドでもデザインパターンとさまざまなテクニックを適用できます。

于 2014-01-27T14:00:11.717 に答える
0

フロントエンドのモデルは、データにバインドされる html 要素のグループです。例: アルバム コンテナーは、アクセスした友人のプロフィールに基づいたモデルと見なすことができます。要素のリストは、html 要素の動作を変更するための明示的な呼び出しを行わなくても、双方向 (モデルからデータへ、データからモデルへ) にバインドできます。JavaScript フレームワークを使用すると、これらの明示的な呼び出しを回避できます。例: html 要素 (写真とビデオのセクションがある div など) が、選択したユーザー プロファイルに依存する場合。次に、これらすべての写真とビデオのセクションをユーザー名にバインドする単一のモデルとしてモデル化し、それに応じてそれらをコンテナーにロードできます。

于 2014-01-27T14:00:04.387 に答える