次のプロジェクトで BackboneJS/CanJS を使用する 2 つの選択肢の間で混乱しています。誰がどちらが良いか提案できますか?
1 に答える
5
それらには多くの類似点と相違点があります。
類似点
- どちらも観察できるモデルを持っており、属性を設定するために同様のパターンを使用しています
- CanJS には、バックボーンのビューと非常によく似たコントロールがあり、両方で同様の方法でイベントをリッスンします。
- どちらも小さく、非常に柔軟です
- ルーティングは両方で非常に似ています。Backbone には特別な Router オブジェクトがありますが、CanJS では Control クラス内でルーティングを行いますが、それらは非常に似ています。
- Backbone で実行するパターンの多くが CanJS に翻訳可能であることがわかりました。
違い:
- Backbone には巨大なコミュニティがあり、何でもできるプラグインがたくさんあります
- Backbone を使用すると、より多くのドキュメントとヘルプが見つかる可能性があります。
- バックボーンには、ビューのレンダリングなど、規定された方法がありません。したがって、これは見方によって、良いことにも悪いことにもなり得ます。多くの場合、Backbone を使用すると、多くのプロジェクトでまったく異なることが行われます。
- バックボーンはビュー レンダリングや双方向バインディングを実装していません。何らかの形で実装するのはあなた次第です。
- CanJS には EJS または Mustache を使用したリアクティブ ビューがあるため、これを行う定義済みの方法があり、双方向のバインディングもあります。
- CanJSにはコンポーネントがあります
- CanJS は、特定のパターンに従うと、メモリ リークを回避するのに非常に優れています。たとえば、コントロール内のウィンドウ サイズ変更イベントをリッスンしている場合、DOM からコントロールを削除すると、CanJS はリスナーも自動的に削除します。より多くの手作業を行う
于 2014-02-14T23:30:05.740 に答える