「まだインストールしていない場合は、node.jsをインストールする必要があります...」このようなメッセージを読んだら、電源がオフになります。なんで?
NodeJSは、「独自に実行する」GoogleのV8です。これは、追加の低レベルAPI(ネットワーク、I / Oなど)を備えたJSエンジンです。NodeJSは、ブラウザーでの作業に限定されていたJS開発者に「欠けているプラットフォーム」を提供します。
なぜこのNode.jsとNPMへの依存?
Node.jsは、アプリ(サーバー、プロキシ、ボットなど)として使用するだけでなく、ツールのビルドや開発支援としても使用できます。たとえば、Makeに似たスクリプト可能な自動化ツールであるGruntを取り上げます。単なるJSでのスクリプト作成では、自動化を行うために別のツールや言語を学ぶ必要はありません。もう1つのツールは、フロントエンドのパッケージ管理ツールであるBowerです。あなたがする必要があるのはabower install jquery
であり、それはその単一のコマンドでjqueryをインストールします。手動でダウンロード、コピー、貼り付けする必要はありません。
一方、NPMはNode.jsのパッケージマネージャーです。これは、NodeJSで使用するモジュールを管理するプログラムです。モジュールを手動でリストする必要はなく、他の場所で開発するときにモジュールを覚えておく必要もありません。NPMが作成したパッケージリストがある限り、再インストールはの問題ですnpm install
。
なぜ私たちは物事を複雑にしているのですか?
そうではなかった。実際、開発者が簡単に利用できるようにしています。ワークフローを心配したり、ライブラリを管理したり、手動で作業したりする代わりに、これらのタスクをNPMに存在するいくつかのモジュールにオフロードできます。そうすれば、実際に行っていることに集中できます。
これに加えて、Node.jsを使用してこれらのライブラリ/フレームワークを使用しています...これにより、これらのライブラリの使用が新しいJS開発者にどのようにプッシュされますか?JSは簡単にするためのものでした!
上記のように、NodeJSは用途の広いプラットフォームです。サーバー(Connect、Express)、自動化ツール(Grunt)、パッケージ管理システム(NPM、Bowerなどを使用)、テストプラットフォーム(QUnit、Mocha)、プロキシ、ゲームサーバー、チャットボットとして使用できます。 。
そして、これらはJSでは不可能だったので、特にJS開発者にとっては有益です。
JSにはすでに多くの問題があります-選択するにはアクティブなJSライブラリ/フレームワークが多すぎます-JSライブラリの記録を見ると、ほとんどがすぐに非アクティブになります。依存関係の管理、ルーター、MVC、テンプレートなど、アプリ内に複数のフレームワークが生じることが多いため、探すべきことが多すぎます。
ええと、フレームワークのセットが豊富にあるのは良いことです。それらのいくつかを学んだ後、あなたの仕事は半分にカットされます。さまざまなスタイルのコーディングやさまざまな実装アプローチに対応するために、実装の多様性も優れています。一部のライブラリは異なるアプローチから生じますが、他のライブラリは他のライブラリの非互換性および/または不完全性から生じます。
開発者は、JSの癖を正規化することで他の開発者の生活を楽にするために一生懸命働いており(ブラウザベンダーは標準に従うという正しいことを行うことができないため)、それらのほとんどは無料のビールのように自発的に行われています-あなたは嬉しいです。その上、とにかく誰もあなたにそれを使うことを強制しません。