0

次のプロジェクトで BackboneJS/CanJS を使用する 2 つの選択肢の間で混乱しています。誰がどちらが良いか提案できますか?

4

1 に答える 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 に答える