考慮
- 事業の背景
- コミュニティサポート
- 利用可能な拡張機能
- デフォルトの機能セット
- 使いやすさ
- と信頼性
なぜあなたは他のものを好むのですか
考慮
なぜあなたは他のものを好むのですか
回答:
情報を追加してみます。
私が理解しているように、Google Closureは別のJSライブラリであるだけでなく、JSコードを最適化できるようにするツールのセットでもあります。jQueryを使用すると、優れたツールと軽量のライブラリが得られますが、独自のコードを縮小することはできません。閉鎖コンパイラの意志。閉鎖検査官は時々縮小さコードは、元のものとは異なる挙動を有し、そしてデバッグする疼痛であるとしても、有用であり得ます。これはFirebugと統合され、ユニットテストをサポートします。これは、現在両方の開発者の親友です。
新しいライブラリVSは確立されたライブラリと同じように、jQueryが持っている大量の拡張機能とチュートリアルを利用できないと思います。ただし、Googleにプッシュされることで、サポートと信頼性の両方がかなり良いものになるはずです。現在のドキュメントとチュートリアルもどちらもとても良いようです。
ただし、クロージャーの機能はまともであり、そのモジュール式アーキテクチャーも有望です。Googleはこれを長い間内部で使用していたと思います。つまり、すべての基本機能(およびその他)が、おそらく非常に最適化されたスケーラブルな方法で実装されることを期待できます。彼らはそれをJavaScriptのSTLとして提示しようとしているので、洗練されているはずです。
機能を詳しく見てみると、これは、jQueryのような既存のライブラリーと比較して、Webアプリケーション開発にとって一歩前進であると思われます。Googleの内部開発にメリットがあると思われますが、オンライン状態の検出(goog.events.OnlineHandlerを参照)、AJAXリクエストとJSアクションのブラウザー履歴への簡単な統合(goog.Historyを参照)、または優れたウィジェットのレギオンなどそれらが提供するもの(goog.uiパッケージを参照)は、私たち全員がさらに素晴らしいWebアプリケーションを構築するのに役立ちます;)!
Javaと統合するテンプレート機能(GWTはだれが言ったのか)が付属しているため、これはクロージャーにとってもプラスになるかもしれません。
最後に、使用方法は非常にシンプルに見えます。構文は短い$ jQuery関数より少し冗長かもしれませんが、IDEとオートコンプリートでは、それは実際の問題ではありません。さらに、Googleが提供するEclipseなどのIDEとの良好な統合が期待できると思います。
編集:要求に応じて、GWTリファレンスについて少し説明させてください。Google Web Toolkitは、AJAX対応のWebインターフェースを作成し、必要なJavaScriptコードを生成(および最適化)するJavaライブラリです。Google Closureではクライアント側とサーバー側の両方(JavaScriptとJavaを使用)で使用できるテンプレートを作成できるため、それらを一緒に使用できるようになると思います(まだそうでない場合)。
APIをざっと見てみると、jQueryとClosureの違いが際立っています。
jQueryは基本的に、クロスブラウザーの方法で多くの頻繁な操作を行うための単純化された方法です。
クロージャは非常に新しいフレームワークであり<canvas>
、たとえば、ブラウザ間でタグを使用する方法を提供し、新しいイベントを追加しています。
したがって、これは、JavaScriptで通常行うことを追加するものであり、人々がやりたい多くの操作を実行し、それらをAPIに入れています。
たとえば、オンラインの状態が変化したかどうかを通知するイベントがあります。したがって、システムがオンラインかどうかを確認できます。
それらには、Google Gearsなどのツールを使用するJavaScript関数があり、Javascriptで実行できることを拡張しているという事実が続いています。
すべての変更を要約するには数日かかりますが、これは開発可能なWebアプリケーションに大きな影響を与える可能性があることがわかります。
Closure Libraryの最大の利点は、Closure Compiler用に設計されていることです。これにより、JavaScript開発のまったく新しい可能性が開かれます...
コンパイラーにはいくつかの優れた機能があります。
詳細については、http://blog.klokantech.com/2010/12/closure-compiler-for-openlayers-3x.htmlをご覧ください。
編集:このYouTubeビデオをご覧ください。GoogleClosureに関するいくつかの質問に答える可能性があります。
おそらく、Googleの閉鎖に関する最高の情報源は、プロジェクトディスカッショングループ、Wiki、ドキュメントページ、デモ、そして現在はサファリブックサイトから入手可能なMichael Bolinによる未完成の本です。
私がすぐに言えることの1つは、closure
vsの学習曲線がより急jQuery
であることですが、ライブラリの広大さ、明確な構成、およびコンパイラとテンプレートツールと一緒に使用することの利点により、価値があるかもしれません。
closure
Michael Bolin氏によると、その点でライブラリはに似てdojo
おりjQuery
、一部の概念はから借用したものdojo
です。
googleクロージャコンパイラは、JSDoc
同時に(プログラマによって正しく作成された場合)ドキュメントを提供し、コンパイル時に多くのエラーをキャッチできるドキュメントシステムを使用します。
関数名はのものより冗長ですがjQuery
、コンパイラーは(さまざまな最適化手法を使用して)コードを縮小し、型チェックはコードのデバッグにかなりの時間を節約するため、長い名前を入力する時間はおそらく問題にはなりません。同時に、名前が長いほど読みやすくなります。
ライブラリは、quirksモードで実行されているブラウザをサポートしているため、「風変わりな」htmlを使用して他のサイトがスクリプトを埋め込むことができます
ライブラリは、soy
ドキュメントへのコンテンツの入力を簡略化する、呼び出されたjavascriptテンプレートシステムで動作します(ただし依存しません)。
like jQuery
google closure
は、ライブラリの専用コンポーネントを使用して文字列ベースのクエリでdom構造をトラバースできるようにします。
closure
ライブラリは、ドット区切りの名前空間に依存しているJava
-非常に強力な組織機能。
このような名前空間を使用すると、コンパイルされていないコードでオーバーヘッドが発生しますが、コンパイルされたコードでは、これらは短い変数名に置き換えられます。
like jQuery google closure allows traversing dom structure with the string-based queries using a dedicated component of the library.
役に立ちます。関連するドキュメントにリンクしてください。
goog.dom.DomHelper
が、個人的にはjQueryに相当するクエリ関数を見ていません。@Evgeny:詳細を教えてください。
私はこの質問に答えるGoogle Closureに関するかなり徹底的な記事をInsideRIAに投稿しました。
...閉鎖ルール!^ _ ^
多分私はjQueryを取得していないかもしれませんが、実際のUIウィジェットのコレクションを見たことはありません(プラグインはありますが、十分にテストされているかどうかはわかりません。ドキュメンテーション)。
クロージャーには、とりわけ、Gmailで使用される画像のないボタンなどのウィジェットコレクション([デモ]タブを参照)があります。
より一般的には、リリースの一部として実装される機能が増えています。それは大したことではないかもしれませんが、ajax履歴モジュールやオートコンプリートのような単純なものを探しているとき、jQueryプラグインの海にイライラします。
全体的に見て、それは巨大なライブラリ+ツールのセットであり、何が利用可能かを知るためだけに知り合いになります。
オープンソースコミュニティへのGoogleの貢献のほとんどに感謝し、それがいくつかのクールなものを持っていると確信していますが、全体として、クロージャーはかさばり、過労であり、エレガントではありません。すべてをJavaに変換する必要がある場合、それは実にスパイシーだと思います。
編集:
けっこうだ。私は実際には比較しませんでした。クロージャーは巨大な倉庫のようなもので、どこにでも配置したいツールがすべてあります。一種の.NETまたは大規模なJavaライブラリ。必要なものが見つかったら、非常に具体的な仕事を行う非常に具体的なものを見つけることができます。そして、生産のためにあなたはすべての残骸を取り除くことができます。
一方、JQueryは、簡単に変更できるソニックドライバーです。
Google Closure Libraryを使用すると、JavaScriptをコンパイルして最適化できます。jQueryのようなライブラリではありません。jQueryは、独自のJavaScriptをより高速に記述できる関数を提供するものです。
Google Closureを使用すると、独自のJavaScriptコードを最小限に抑えて、インターネット経由での配信を高速化できます。
要するに、Googleクロージャーはツールであり、jQueryはプロトタイプに似たライブラリです。