【フロントエンド初心者向け】Node.jsとExpressでサーバを起動してみよう - 紹介編

こんにちは、ユアサです。
今回からNode.jsとそのフレームワークのExpressを使って、ローカル環境で表示確認しながらコーディングしやすくなる簡易的なWebサーバを作成・起動してみようと思います。フロントエンドなら作業前にぜひ準備しておきたいですね。
今回の記事は、使用する環境の概要についてまとめます。

そもそもNode.jsとExpressについて

サーバが作れるのは分かったけどいきなり知らない名前出されても・・・・と思う方もいると思うので、まずはNode.js関連のものを紹介します。
Node.jsの公式ページでは、以下のように説明されています。

Node.js はスケーラブルなネットワークアプリケーションを構築するために設計された非同期型のイベント駆動のJavaScript 環境です。

少し難しい表現ですが要はJavaScriptを実行できるアプリケーションで、ブラウザ上でしか機能できなかったJavaScriptが権限の範囲内でOS上でも機能できるようになります。
また、元々は大量同時接続を可能にするネットワークアプリケーションの構築を目的としたJavaScript環境で、その特徴からサーバサイドのJavaScript実行環境と言われています。
ExpressはNode.jsのフレームワークで、Webアプリケーション向けの一連の機能を提供してくれます。公式ページでも書かれていますが、ユーザーが使い慣れている Node.js の機能をわかりやすくし、基礎的なWebアプリケーション機能をシンプルな階層で提供します。簡易的なWebサーバを作成する際は基本的にこれら二つをセットで準備することが多いです。(Node.js自体はWebサーバ専用という訳ではないですが、その役割として使われることがメインのようです)

パッケージ管理ツール『npm』について

Node.jsを触れる前に知っておきたいのがnpmです。これについては知っている方も多いかと思いますが、npmとはNode Package managerの略称で、Node.jsなどJavaScript系のパッケージを管理するツールです。必要とするパッケージをインストールする際に依存関係にあるパッケージも一緒にインストールしてくれるという優れもので、およそ40万ものパッケージが登録されています。
またnpmの同じ機能を持つものにYarnというものもあります。YarnはMeta社(旧Facebook社)が公開したパッケージ管理ツールで、npmの欠点を補うように作成されたものなのでよりインストールが早く厳密にモジュールのバージョン固定ができる点が評価されていましたが、npmも改善されてきた関係でどちらを使用するにしてもあまり大差は無いそうです。次回の記事で実際にWebサーバを作成しますが、npmを使用する予定です。

まとめ

今回はNode.jsとExpressを使ってWebサーバを作るにあたって、使用する環境の概要について書きました。
JavaScriptなんて触ったことないよ・・・という方もいるかと思いますが、簡易的なWebサーバなら難しい要素は無いので良ければ次回の実践編も一緒に読んでいただけると幸いです。
今回も最後まで読んでいただきありがとうございました(^人^)