ポールが提供した回答に完全に同意します。また、あなたの質問は本質的にあいまいであることを繰り返し述べたいと思います。
Jquery は高度に DOM 中心であり、DOM を操作するための優れた機能を提供します。スタイルの変更、ドキュメントの一部へのリモート コンテンツの読み込み、ブラウザー イベントへの応答など、(ほぼ) すべてにおいて、DOM に重点が置かれています。ドキュメント コンテンツを操作するこの種の機能では、プロトタイプの継承と、さらに重要なことに、DOM (JQueryUI の API を確認してください) を介してウィジェットにアクセスするスタイルがうまく機能します。ウィジェットを JavaScript オブジェクトとして識別する場合は、オブジェクトも追跡する必要があります...プログラミング スタイルの後に JQueryUI などが続く場合は、その必要はありません。 DOM 構造をナビゲートするか、単純にその id (基本的に要素のグローバル識別子として機能します) を介して DOM。
backbone.js はまったく別の目的のために構築されています。導入部には、データを DOM に結び付けることは悪いことであるという根本的な哲学に基づいて構築されていることが明確に述べられています。backbone.js の規則に従って構造化されたアプリケーションを構築する場合、本質的に常に javascript オブジェクトに集中します。DOM にリンクされています。サーバー データ ソースとインターフェイスするモデル、データ コンテンツが操作されたときにイベントをトリガーするモデル、大規模なデータ セットの管理に役立つコレクションなどを定義しています。とにかく、ドキュメント構造に組み込まれていない JavaScript オブジェクトを常に操作しています。 . このようなシナリオでは、従来のオブジェクト指向モデルの観点から考えるのがより一般的です。オブジェクトを取得すると、ワークフローは jQuery の使用に慣れているものと大差ありません。バックボーンも jQuery と同様にオブザーバー パターンを支持するからです。したがって、JQuery を使用してイベント ハンドラーを DOM 要素にバインドできるのと同じ方法で、モデルやコレクターなどによってディスパッチされるカスタム イベントにイベント ハンドラーをアタッチします。
他のフレームワークに関する限り、データバインディングやオブザーバブルなどを提供し、インスタンスを作成するために new キーワードを使用する必要がない Knockout をチェックアウトすることをお勧めします。味。KO には豊富なドキュメントとコード例があり、それらを調べて自分の好みに合っているかどうかを判断できます。KO についての知識が限られているため、これ以上コメントすることはできませんが、backbone.js に関する限り、いくつかの実装方法が気に入らないという理由だけでフレームワークを却下しないことを強くお勧めします。本来の機能をエレガントかつ堅牢に実行し、信じられないほど小さなフットプリントを維持します。