61

CanJS

CanJS
vs

CanJSレビュー:52 つの事実と注目点

CanJS

CanJSが平均よりも優れている理由は何ですか?

  • 依存関係を含まない縮小ファイルサイズ
    ?

    69KBvs75.64KB

一番人気の比較対象は?

一般情報

追加のコードを書かずにスコープ変数(たとえば、検索する時に)に基づくビューをフィルタリングするためのメカニズムを持っています。
テンプレートエンジンは簡単で柔軟なUIの構築を可能にします。
オブジェクトのプロパティを計算するためにプロパティとして関数の使用することができます。
JSXはテンプレートエンジンで開発者は彼らのコードにマークアップを直接に書き込むことができます。その後にプレインJavaScriptへプリコンパイルされます。これでビューのマークアップとコードの間の分離がなくなります。そして文字列に基づくテンプレート言語の速度の改善を提供しています。
別のテンプレート言語からオーバーヘッドをなくすためにある人々はこれは便利だと思っています。
MITライセンスはとても伝播性のないライセンスで保証なしで誰でも(業務用を含む)使用することができます。
残りの機能を削除しないで他のフレームワークの一部を置き換えるために使用することができます。
テンプレート内でネスティングビューテンプレートをトップレベルのビューに許されます。
推奨されるファイル構造を提示する公式な、それともよく知られているボイラープレートプロジェクトを持っています。これで開発者がより早く開始することができます。

プラグイン

アニメーションを簡単に作成と表示するための能力が含まれるプラグインを持っています。
公式のプラグインのソースからです。プラグインは機能を拡張したり、他のサービスと統合するための簡単な方法を提供しています。プラグインの数が多いだと互換性のある、柔軟なフレームワークの意味です。
これでフレームワークは生きているエコシステム、大規模なコミュニティのサポートを持っていて開発の柔軟性と速度を向上することがわかります。
プラグインは処理される前に、それともサーバーへ送信されるまえにクライアントのインプットの検証を支援します。これはサーバーサイドの検証の置き換えではないですが、ユーザー・エクスペリエンスを大幅に改善します。
jQuery boilerplate ajax callsを書かずにサーバーサイドの表現とモデルを一同調させておくためのユーティリティが含まれています。
boiler plate ajaxcallsを書かずにサーバーサイドの表現とモデルを一同調させておくためのプラグインを持っています。
アニメーションを簡単に作成と表示するための能力が含まれています。
HTML5のlocalStorageでモデルをシンクロナイズするするための簡単な機能性を提供するプラグインを持っています。

ライブラリ&パッケージ

DOMを操作するために特定のライブラリ(jQuery, ZeptoやMooToolsなど)の使用を必要ではありません、それとも使用を真剣に奨励しません。そして開発者の好きなライブラリと一緒に使用することができます。
非同期モジュール定義ライブラリで簡単なモジュラークリーンプログラミングが可能になります。フレームワークがそのようなライブラリとうまく動作しない場合にはコンポーネントをモジュール方式にする、そして依存関係を解決するために別の方法があるかもしれません(依存性注入など)。
バウアーは、フロントエンドアプリケーション用の使いやすい、NPM-のようなパッケージマネージャです。
フロントエンド·スクリプトを管理するためにノード パッケージ マネージャーを使用することができます。
DOM操作が必要ならば jQuery Liteエレメントを使用しています。これで開発者がライブラリ全体含まないでjQueryの快適なヘルパー関数を得ることができます。多くの場合、これはjQueryへのプロジェクトの依存をなくします。
依存関係として人気のユーティリティライブラリunderscore.jsを持っています。Underscoreは、リスト操作と関数型プログラミングのためのヘルパー関数が含まれています。

データ・バインディング

モデルとビューは、互いに更新するように結び付けることができます。
observableオブジェクトが交換される時にビューを必ず自動的にアップデートさせることができます。
これでアプリケーションとREST-サービスやLocalStorageの間のデータ転送が簡単になります。また、ゲッターとセッター関数の複雑さを軽減します。
ミックスインは、オブジェクト指向の継承なしで、異なるオブジェクトが共通の動作を共有することを可能にするプログラミング手法です。
モデルとビューのお互いの更新をサポートするために拡張することができます。これは、より多くのファイルサイズが追加しますが、柔軟性の向上を可能にします。
モデルが変化について観察されます。これはよく知られているパターンです。いくつかのケースでは汚れたチェックよりもパフォーマンスすることができます。
対応のフィールドの変更とアップデートをチェックする。場合によってはオブザーバーよりも効率がいいです。

性能

ファイルのサイズが小さいだとロード時間が速いです。
ルーティングでブラウザのURLとの相互作用ができます。1ページのアプリを作成する場合には良いユーザーエクスペリエンスが得られます。
romises/A+の仕様のインターナル実装法を持っています。promiseはサーバーからの応答に対処するときにコールバックするための人気の代替です。
サーバー上でプリーをレンダーリングすることができるテンプレートエンジンをサポートします。特に低い演算能力のデバイス上のページスピードを改善する可能性もあります。
検索エンジンクローラビリティを大幅に改善します。特に低い演算能力のデバイス上のページスピードを改善する可能性もあります。
これはテスタビリティとモジュール性を改善します。
少ない依存関係だと追加のスクリプトが少なくなります。普段は結果として開発費が下がり、ロード時間が速くなります。
モデルの変更はすぐにビューの更新にはにつながらないが、キューに入れられ、グループとして派遣されます。これは、インスタントビューアップデートより高い性能を持っている可能性があります。
promiseをサポートするためにjQueryのようなライブラリを使用することを可能にします。promiseはサーバーからの応答に対処するときにコールバックするための人気の代替です。

ベストマッチのMV*フレームワーク は?

すべて表示する
This page is currently only available in English.