Q. AngularJSとjQueryの違いは何でしょうか?

私が知っているJavaScriptライブラリといえばjQueryです。
しかし、新規プロジェクトのデフォルトのライブラリとして、プログラマ仲間がAngularJSを導入しました。

私はAngularJSについての知識が全くありません。jQueryと何が違うのでしょうか。
jQueryのタスクとして実行された関数群は、AngularJSでも使用できますか?

asked by user825904

Answer(s)

  • jQueryはDOMのエレメントを操作・管理するための優れたツールです。WebアプリケーションのようなデータのCRUDがなく、DOMのエレメント操作についてのみ言えば、jQueryは最高のツールの一つです(AngularJSでも同様の操作が可能です)。

    AngularJSは以下の特徴を持つフレームワークです。

    1. 双方向データバインディング
    2. MVWパターン(MVCの派生パターン)
    3. テンプレートとしてのHTML
    4. カスタムディレクティブ(再利用可能なコンポーネントと独自のマークアップ)
    5. REST志向
    6. ディープリンク(動的ページにリンクを設定)
    7. フォームバリデーション
    8. サーバとの連携
    9. ローカライゼーション
    10. 依存性注入(DI)
    11. 充実したテスト環境(ユニットテスト、e2eテスト)

    このプレゼンテーション資料や、よくできた入門サイトもチェックしてみてください。
    公式の開発者ガイドを一読することもお忘れなく。
    または、こういったすばらしいチュートリアル映像などで学習してください。
    jQueryはAngularJSと問題なく併用することができます。
    jQueryは優れたツールであると言いましたが、AngularJS は内部にjQuery liteを組み込んでいます。

    FAQより

    > Q. AngularJSでjQueryライブラリを使用できますか?
    >
    > A. はい。AngularJS起動時にjQueryがアプリケーション内にあれば利用可能です。
    > jQueryがスクリプトのパスに無い場合、AngularはjQLiteと呼ばれるAngularJS組み込みであるjQueryのサブセットへ委譲します。

    ただし、jQueryによってDOMを変更する場合は、AngularJSのコントローラ内ではなく、ディレクティブ内で行ってください。

    Answerer : maxisam