Node.js の役割について

概要

以前から
jQuery とか聞いたことあるけど、Node.js と何が違うの?」
「Node.js とか Next.js の名前が似ているけど違いは?」
とずっと疑問に思っていたので、調査して自分なりにまとめてみました。

対象

  • jQuery、Node.js、Next.js の3種類の違いが分からない人

本題

jQuery

jQueryJavaScript のライブラリで概要に書かれている Node.js 、Next.js より歴史が長いです。
jQuery の特徴は

  1. DOM(Document Object Model)の操作の平易化

  2. クロスブラウザ互換を実現

jQuery が流行った背景として

  • 多機能なWebページを作成するために高度なDOMの操作が必要

  • ChromeFireFox などのブラウザごとの機能などの違いを考慮した開発

が必要になってきましたので、jQuery の特徴とマッチしていることが分かります。

現在でも使われていますが、大きな欠点としてグローバル汚染があるために廃れていきました。
余談ですが、jQuery でグローバル汚染を防ぐために下記の2点が考えられているそうです。

  • 変数の前にvarを付ける

  • 関数はなるべく即時関数を利用

kenju.gitbooks.io

baapuro.com

Node.js

Node.js はサーバサイドで JavaScript を実行できる環境です。
それまでの一般的なWeb開発ではフロントサイドは JavaScript 、サーバサイドは JavaPHP などのプログラム言語が採用されてきましたが、 Node.js によりサーバサイドでも採用されるようになりました。
大きな特徴としてnpm(Node Package Manager)によるパッケージシステムでパッケージの管理ができます。
パッケージの例として

  • Vue.js

  • Next.js

などがあります。

Next.js

先ほど少し出てきましたが、Next.js は React にサーバサイドの機能を持たせたフレームワークであり、Node.js でインストールできるパッケージの1つです。

まとめ