Node.jsとは


参考サイト: Qiita: Node.jsとはなにか?なぜみんな使っているのか?

Node.jsとは、「サーバーサイドのJavaScript実行環境」のこと

Node.jsとは、「サーバーサイドのJavaScript実行環境」のことです。
WindowsにPythonをインストールすると「python.exe」ができるように、Node.jsをインストールすると「node.exe」ができます。
node.exeはJavaScriptコードを実行するアプリケーション(つまりJavaScript実行環境)です。

Node.jsを使う3つの理由

あらゆる場面で最新のjacascriptで開発ができます。

理由1. 最新のjavascriptを古いブラウザでも動かせる

node.jsは、Babelというコンパイラを動かすための、環境を提供します。
Babelは、「最新のjavascript(ES6)」を「旧仕様のjavascript(ES5)」に変換できます。
コンパイルすることで、古いブラウザでも動くようになります。

理由2. javascriptだけでwebアプリを作れる

javascriptだけでwebアプリを作ることができます。
元々Node.jsは大量の同時接続をさばけるようなネットワークアプリケーションを構築することを目的として設計されています。
実際にはNode.jsのみだとWebサーバとしては少し機能が物足りないので、その前段にApacheやnginxをリバースプロキシとして置く構成が多いようです。

理由3. モバイル/デスクトップ用のアプリも作れる

Node.jsではモバイルアプリもデスクトップアプリも開発できます。
javascriptのUI系が洗練されたライブラリやフレームワークで、モバイルでもデスクトップでも開発を行えます。
モバイルアプリであればReact Nativeが、デスクトップアプリであればElectronが使われることが多いです。

Electronでは同じコードでWindows/Mac/Linuxのアプリが作成(クロスプラットフォーム開発)できます。
Visual Studio Code, Slack, Discord, Twitch, SkypeといったデスクトップアプリがこのElectronでできています。

その他) まだまだnode.jsはいろんな場面で使われる

・ウェブサイトのアセットをバンドル(webpack)するために

・SassをCSSに変換(node-sass)するために

・テストツール(Jest)やコード検証ツール(ESLint)を使うために

・開発用の簡易Webサーバ(webpack-dev-server)をローカルで立てるために

・静的サイトをビルド(Gatsby)するために

以上、ありがとうございました。