ホームページ >ウェブフロントエンド >jsチュートリアル >2019年に使用する最高のJavaScriptフレームワーク、ライブラリ、ツール
JavaScriptフレームワーク、ライブラリ、ツールの数は、開発者の数を超えているようです。 2018年の終わりに、GitHubでの簡単な検索で230万のJavaScriptプロジェクトが示されました。 NPMは世界最大のモジュールシステムとなり、NPMJS.comで700,000のソフトウェアパッケージがあり、1か月あたり数十億のダウンロードがあります。
2018年12月6日:この記事は、JavaScriptエコシステムの現在の状況を反映するために更新されました。今年のアップデートはSenchaが後援しています。 SitePointを可能にしたパートナーをサポートしてくれてありがとう!
この記事は、最も人気のあるクライアント側のJavaScriptフレームワーク、ライブラリ、ツールの基本と基本的な違いを説明することを目的としています。彼らがあなたに適しているかどうかは別の質問です。 1つを選択して、しばらくそれに固執します。選択したものは何でも、お気に入りのオプションはより良いものに置き換えられることに注意してください!
ライブラリ
ライブラリは通常、より高いレベルの抽象化を提供するため、実装の詳細と矛盾を簡素化します。たとえば、xmlhttprequest APIを使用してAJAXを実装できますが、これにはいくつかのコードが必要であり、ブラウザー間にわずかな違いがあります。ライブラリはよりシンプルなAJAX()関数を提供できるため、より高いレベルのビジネスロジックに集中できます。
ライブラリは、詳細を心配する必要がないため、開発時間を20%短縮できます。短所:
ライブラリ内の
エラーを見つけるのが難しい場合がありますフレームワークは通常、ライブラリよりも高いレベルの抽象化を提供し、プロジェクトの最初の80%を迅速に構築するのに役立ちます。短所:
ラベルを付けないでください!
ライブラリ、フレームワーク、およびツールの違いはめったに明確ではありません。フレームワークにはライブラリが含まれる場合があります。ライブラリは、フレームワークのような方法を実装できます。ツールは両方にとって重要です。各アイテムをマークしようとしましたが、スコープは異なる場合があります。
javaScriptフレームワークとライブラリ
おおよその順序で配置されたアイテム/人気/誇大広告...
長所:
配布サイズ
小さく、効率的で、速く、柔軟性があります
新しい概念と文法を学ぶ必要があります
長所:
いくつかの大企業によって採用されている一般的なフレームワーク
Angular 2はV1とはまったく異なります。どちらも互換性がありません - たぶん、Googleはプロジェクトに別の名前を与えるべきでしょうか? !
長所:
長所:
迅速な採用と人気の増加
広く利用可能なコンポーネント
今のところ、ReactおよびAngular以外のフレームワークとの統合は非現実的である可能性があります。
深いカスタムUIの変更は難しい場合があります学習しやすい、良いドキュメント
ほとんどのライブラリとフレームワークと互換性があります組み込みオブジェクトを拡張しないでください
タイプフレームワークWebサイトbackbonejs.orgリポジトリgithub.com/jashkenas/backbone/ github Stars 37,000 Currentバージョン1.3.3開発者Jeremy Ashkenasリリース2010年10月典型的なサイズ8kb Min典型的な使用単一ページアプリケーション低使用法バックボーン。 MVC構造のクライアントオプション。その唯一の依存関係は、同じ開発者によって作成されたUnderscore.jsです。
backbone.jsは、他のプロジェクトと統合できるため、ライブラリであると主張しています。ほとんどの開発者はそれがフレームワークだと思っているのではないかと思いますが、他の開発者ほどarbitrary意的ではありません。
短所:
タイプフレームワークのウェブサイトemberjs.comリポジトリgithub.com/emberjs/ember.js github Stars 20,000 Currentバージョン3.6.0開発者Emberチームリリース日モデル(MVVM)モデルのより大きな任意のフレームワーク。テンプレート、データバインディング、およびライブラリを1つのパッケージに実装します。 Ruby on Railsの経験がある人にとっては、構成に関する慣習の概念はすぐに馴染みがあります。
を使用しました
knockout.js
IE6
にトレイカ可能な優れたブラウザサポート 優れたドキュメント 短所:もっと学びたいですか?次の項目はあまり人気がありませんが、検討する価値があります:
webpack
複数のJavaScriptファイルの管理は面倒になる可能性があります。比較的新しいES6モジュールインポート構文をネイティブに採用できない限り、ブラウザのJavaScript依存関係を適切な順序でロードまたは接続する必要があります。古いブラウザ(2018年以前にリリースされたブラウザ)をサポートする必要がある場合は、モジュールバンドラーを使用できますが、これらのツールの需要は時間とともに減少します。
>
ツール:コードスタイルのチェックコードスタイルのチェック
説明
口ひげ、ハンドルバー、パグ(ja)、EJSなど、JavaScript駆動型のHTMLテンプレートエンジンがたくさんあります。 EJやDOTなどのJavaScriptの構文を保持する軽量オプションが好きです。
最後に、自動化できるのに、なぜ独自のドキュメントを書くのですか? ES2015互換性のあるドキュメントジェネレーターには、ESDOC、JSDOC、YUIDOC、documentation.js、および転写が含まれます。
概要と提案
モノグラフフレームワークはもはや人気がありませんが、大規模なプロジェクトに厳格な構造を提供する必要がある場合、Angularjsは依然として人気のある選択肢です。ほとんどの開発者はバージョン1.0に固執していますが、これは必須であり、選択ではない場合があります。バージョン2は長期的にはより安全なオプションかもしれませんが、TypeScriptを学ぶ必要があります。
SenchaのExt JSは、フレームワークと事前に構築された統合コンポーネントとツール(商業サポートへのアクセスを含む)の両方を持ちたい企業(中小企業から企業へ)にとって素晴らしい選択肢です。 Ext JSは、強力なコンポーネントライブラリをReactとAngularと簡単に統合します。これは、自分で構築する代わりに事前に構築されたコンポーネントを実装したい開発者に最適です。
jQueryを無視しないでください。それはスタイリッシュではなく、Tech Newsでめったに言及されていませんが、積極的な開発中であり、ウェブサイトやアプリケーションには十分すぎるものです。 JQueryの学習曲線は滑らかで、世界中の多くの開発者が理解しています。
SvelteやRawactなどの新しい翻訳者オプションは、リスクを取る場合は、フレームワークコードをネイティブJavaScriptに変換します。フレームワークの依存関係は削除され、コードは小さく、より速く実行されます。ツールの選択はそれほど重要ではなく、プロジェクトによって異なる場合があります。ほとんどのWebpack、Gulp、またはNPMスクリプト。テストには、EslintとJestを使用できますが、試してみる他の多くの選択肢があります。
つまり、各プロジェクト、チーム、およびスキルセットは異なります。あなたは評価する時間が限られているので、あなたが知っていることを使うのは魅力的です。この投稿にはコメントが表示されます。
frameworkxを推奨しますが、ハンマーを持っていると、すべてが爪のように見えます。
最後に、ライブラリ、フレームワーク、ツールがオプションであることを忘れないでください!JavaScriptの開発は、過去10年間で革命を起こしました。複雑さを高めるというtrapに陥ったり、数か月ごとに最新の人気のあるフレームワークに切り替えるのは簡単です。特に小規模および個人的なプロジェクトでは、常にネイティブのJavaScriptを検討してください。あなたが得る知識は時代遅れではなく、他のプロジェクトのフレームワークを評価するときに非常に貴重になります。 お気に入りのJavaScriptライブラリ、フレームワーク、ツールの利点を称賛することができませんでしたか?もちろん、私はそれをしました!コメントへようこそ...
上位のJavaScriptフレームワーク、ライブラリ、ツールに関するよくある質問角度と反応の主な違いは何ですか?
正しいJavaScriptフレームワークを選択すると、いくつかの要因に依存します。プロジェクトの規模と複雑さ、フレームワークの学習曲線、コミュニティのサイズと利用可能なリソース、およびアプリケーションのパフォーマンスとスケーラビリティの要件を考慮する必要があります。また、将来サポートおよび更新され続けるフレームワークを選択したいため、フレームワークの長期的な実行可能性を考慮することも重要です。
vue.jsは、その単純さと使いやすさで知られています。穏やかな学習曲線があり、初心者には良い選択肢になります。また、軽量のライブラリのような設定または完全に機能するフレームワーク設定を選択できる柔軟なアーキテクチャがあります。 Vue.jsは仮想DOMも使用し、高速パフォーマンスのために効率的な再レンダリングとコンポーネントレベルのキャッシュを提供します。
node.jsは、サーバー側でJavaScriptを実行できるランタイム環境です。これは、JavaScriptを使用してアプリケーションのフロントエンドとバックエンドを構築できることを意味します。これにより、開発効率が向上し、コードメンテナンスが簡素化されます。 Node.jsには、ライブラリとツールの巨大なエコシステムもあり、その高性能とスケーラビリティで知られています。
TypeScriptは、言語に静的タイプを追加するJavaScriptのスーパーセットです。 JavaScriptフレームワークを使用するためのTypeScriptの学習は必要ありませんが、有益かもしれません。 TypeScriptは、実行時間ではなくコンパイル時にエラーをキャッチするのに役立ち、より堅牢なコードになります。大規模なコードベースとチームを扱うときに特に便利です。
Lodashは、JavaScriptの配列、オブジェクト、その他のデータ型を操作する便利な方法を提供するユーティリティライブラリです。コードをより簡潔で、読みやすく、より効率的にするのに役立ちます。 Lodashメソッドもパフォーマンスに最適化されているため、場合によってはネイティブJavaScriptメソッドよりも速くなる場合があります。
ember.jsは、ルーターやデータレイヤーなどの多くの組み込み機能を提供する完全に機能的なフレームワークです。これにより、建物の複雑なアプリケーションが容易になりますが、より多くのコンテンツを学習する必要があることも意味します。 Ember.jsは、開発をスピードアップできる構成に関する規則の原則に従いますが、他のフレームワークほど柔軟ではない場合があります。
Polymerは、Webコンポーネントを構築するためにGoogleが開発したライブラリです。カスタムHTML要素を作成し、これらの要素にCSSとJavaScriptをカプセル化し、データバインディングとイベント処理を使用するための一連の機能を提供します。ポリマーはまた、一方向および双方向のデータ結合をサポートします。
jQueryは、HTMLドキュメントトラバーサル、イベント処理、およびアニメーションを簡素化するライブラリです。ネイティブJavaScriptの改善と最新のフレームワークの台頭によるものであったほど必要ではありませんが、JQueryはまだ広く使用されており、より単純なプロジェクトやレガシーコードの維持に適しています。
いくつかの新たなJavaScriptフレームワークとライブラリには、Svelteが、よりシンプルで高速な開発エクスペリエンスを提供するために設計されたコンパイラベースのフレームワークと、Reactアプリケーションのサーバー側のレンダリングのフレームワークが含まれています反応について。これらのツールはより人気が高まっており、将来的にはより重要になる可能性があります。
以上が2019年に使用する最高のJavaScriptフレームワーク、ライブラリ、ツールの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。