Javascript

Node.jsとは

こんにちは!ともです(@_tomo_engineer)!

今回はNode.jsとは何なのかについて書きます。

Node.jsとはサーバーサイドで動くJavaScriptである。

って呪文の様に覚えてたんですが、もう少し詳しくなりたいと思って調べて見ました。

目次

  • Node.jsとは
  • Node.jsの登場による変化
  • JavaScriptの開発環境

Node.jsとは

Node.jsを調べるにあたり、Node.js超入門第2版を読みました。

Node.jsというのはJavaScript言語のランタイム環境(プログラムを実行するための環境)です。このNode.jsを使うことで、それまでWebブラウザの中だけでしか使われなかったJavaScriptが、軍と広い範囲で使われる様になったのです。

引用元:Node.js 超入門第2版

つまりNode.jsとはJavaScriptが動作する事ができる環境を提供してくれます。それまではWebブラウザの中で少し動きを付けたりするだけの役割出会ったJavaScriptがWebブラウザの外で動作する事が出来る様になったのです。

また引用の説明にあるランタイム環境とは何を指すのでしょうか。

ランタイムとは、開発したコンピュータプログラムを実行する時のこと。「実行時」と訳語を用いることも多い。対義語は「開発時」あるいは「コンパイル時」(compile-time/コンパイルが必要なプログラミング言語の場合)。

引用元:IT用語辞典 ランタイム

つまり、ランタイム環境とは実行環境という事です。Node.jsとはJavaScriptを動作させる実行環境であるという事ですね。

Node.jsの登場による変化

Node.jsの登場でWebブラウザ外でもJavaScriptは活躍できる様になりました。

つまり、クライアント・サーバ、どちらもJavaScriptは動作可能になりました。

これまでは、クライアントサイドでJavaScript、サーバサイドの言語でPHPやRuby、という構成が一般的でしたが、

これからは

クライアント・サーバどちらもJavaScriptで作ってしまおう!

という事が可能となりました。

サーバサイドのJavaScriptがNode.jsである

という説明を良く目にしました。

サーバーサイドでJavaScriptを動かす環境を作ろうとするとNode.jsを導入する必要があるという訳です。

しかし、Node.jsは実行環境と考えると少し雑な説明の様な気もしてきます。

JavaScriptでの開発環境

JavaScriptを利用する開発環境を整える場合、Node.jsは必須となります。

Node.jsのパッケージ管理ツールにnpmがあります。npmによりJavaScript関係のパッケージを管理する事が出来ます。

npm自身もJavaScriptで記述されています。よってnpmを導入するにはNode.jsが必要となります。

つまり、JavaScriptでの開発環境を整えようと考えるとパッケージの管理が必要でありnpmが必要となります。そしてnpmの導入にはNode.jsを導入する必要があります。

これにより、JavaScriptで開発するとなると

とりあえずNode.js入れておこう!

という事になり、Node.jsはJavaScriptの標準な開発環境となりつつあります。

まとめ

今回はNode.jsの概念的な理解について書きました。

Node.jsはJavaScriptの実行環境であり、これによりクライアント・サーバのどちらもJavaScriptという構成が可能となった訳ですね。

またJavaScriptでの開発環境を整える際はNode.jsが必要となるという事が分かりました。

今後はNode.jsを導入しサーバーサイドもJavaScriptで書いて記事にします。