node.jsとはなんなのか
2024年11月30日
はじめに
今回は、JavaScriptの勉強をしているとよく目にするNode.jsについて調べたことをまとめます。
前提として
Node.jsについて勉強するために、前提としてJavaScriptについて知っておく必要があります。
JavaScriptを私たちはWebページに動きをつけるためのプログラミング言語として使っています。
動的なサイトを作るのに欠かせません。
JavaScriptと他の言語の違いはブラウザ上で動いているのか、OS上で動いているかの違いです。この2つには大きな違いがあります。
ブラウザ上で動く言語(JavaScript)はOSの機能にアクセスできません。それに対し、OS上で動作するプログラミング言語(PythonやRubyなど)はOS機能へアクセスすることができます。
OSの機能とは、主に入力、出力、記憶、制御、演算の5つがあります。この機能にブラウザからアクセスできてしまうと、セキュリティ的に問題があるのでJavaScriptはOSの機能にアクセスができないようになっています。
本題
では結局Node.jsはなんなのかというと、ブラウザ上という窮屈な環境でしか動作できないJavaScriptを、パソコン上で動かせるようにしてくれる実行環境です。
PCにPythonをインストールすると「python.exe」ができ、python.exeがPythonコードを実行するアプリケーションになります。
それと同じように、Node.jsをインストールすると「node.exe」ができ、node.exeはJavaScriptコードを実行するアプリケーションになります。
Node.jsではJavaScriptでOSの機能にアクセスするプログラムを組むことができるので、ブラウザ上で動作していたときは扱えなかったOSの機能を扱うことができるようになります。


サーバサイドのJavaScript実行環境
色々なサイトを見ているとNode.jsは「サーバサイドのJavaScript実行環境」と呼ばれることが多いみたいです。その背景には、Node.jsが作られた目的にあるようです。
Node.jsは大量の同時接続をさばけるネットワークアプリケーションの構築を目的に設計されJavaScriptの環境なので、「JavaScriptでWebアプリケーション(Webサーバ)が作れる」という特徴からサーバサイドであると言われています。
なんで使っている人が多いのか
以上の通り、Node.jsを活用するとJavaScriptは活躍の場を広げることができます。
サーバーサイドの開発も可能になるので、Webやスマホのアプリ開発、IoT関連の開発、Webサーバーの構築など、様々な用途があるからだと思いました。
最後に
今回はよく見聞きするNode.jsについてまとめてみました。
PHPの勉強をする前に片付けておきたかった疑問について調べることができたのでよかったです。
