参考サイト: 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)するために
以上、ありがとうございました。