こんにちは、SouDogです。
JavaScriptはフロントエンド開発の定番ですが、Node.jsを使えばサーバーサイド開発もJavaScriptで行えるんです!「バックエンドの開発は難しそう…」と思っている方も大丈夫。Node.jsはシンプルな構文と豊富なライブラリで、初心者でも扱いやすいのが魅力です。
本記事では、Node.jsの基本からサーバーサイド開発、API作成、データベース連携までをわかりやすく解説します。実際のコードを交えながら進めるので、手を動かしながら学んでいきましょう!
目次
1. Node.jsとは?
Node.jsは、GoogleのV8 JavaScriptエンジンを使用してサーバーサイドで動作するJavaScriptの実行環境です。通常、JavaScriptはWebブラウザ内で動作しますが、Node.jsを使用することで、サーバー側の処理をJavaScriptで記述できるようになります。
Node.jsの特徴は以下の通りです。
- 非同期・イベント駆動型: リクエストをブロックせずに処理できるため、高速なパフォーマンスを発揮します。
- 単一スレッド: 非同期処理を活用することで、効率的に多数のリクエストを処理します。
- 豊富なパッケージ: npm(Node Package Manager)を使って多数のライブラリを利用可能。
2. Node.jsのインストールと基本的な使い方
Node.jsのインストール
Node.jsは公式サイト(https://nodejs.org/)からダウンロードできます。Windows、Mac、Linuxなど様々な環境に対応しています。
# バージョン確認 node -v npm -v
簡単なNode.jsプログラム
以下のコードを hello.js として保存し、実行すると「Hello, Node.js!」が表示されます。
console.log("Hello, Node.js!");
実行:
node hello.js
3. Node.jsを使ったサーバーサイド開発
Node.jsではhttpモジュールを使って簡単にWebサーバーを構築できます。
シンプルなHTTPサーバー
以下のコードを server.js として保存し、実行すると簡単なHTTPサーバーが起動します。
const http = require("http");
const server = http.createServer((req, res) => {
res.writeHead(200, {"Content-Type": "text/plain"});
res.end("Hello, World!");
});
server.listen(3000, () => {
console.log("Server is running on http://localhost:3000");
});
実行:
node server.js
ブラウザで http://localhost:3000 にアクセスすると「Hello, World!」が表示されます。
4. Expressを使ったAPI開発
Expressは、Node.jsでAPIを簡単に作成できるフレームワークです。
Expressのインストール
npm init -y npm install express
シンプルなAPIサーバー
const express = require("express");
const app = express();
const PORT = 3000;
app.get("/", (req, res) => {
res.send("Hello, Express!");
});
app.listen(PORT, () => {
console.log(`Server is running on http://localhost:${PORT}`);
});
5. データベース連携(MongoDB)
Node.jsではMongoDBを使うことで簡単にデータベースと連携できます。
MongoDBのインストール
MongoDBの公式サイト(https://www.mongodb.com/)からインストールできます。
Mongooseを使ったデータベース操作
MongooseはMongoDBの操作を簡単にするライブラリです。
npm install mongoose
以下のコードでMongoDBに接続し、データを保存することができます。
const mongoose = require("mongoose");
mongoose.connect("mongodb://localhost:27017/test", {
useNewUrlParser: true,
useUnifiedTopology: true
});
const UserSchema = new mongoose.Schema({
name: String,
age: Number
});
const User = mongoose.model("User", UserSchema);
const newUser = new User({ name: "Taro", age: 25 });
newUser.save().then(() => console.log("User saved!"));
6. まとめ
Node.jsを使うことで、サーバーサイド開発やAPI作成、データベース連携が簡単に行えます。特に、Expressを使えばシンプルなAPIをすぐに構築でき、Mongooseを使えばデータの管理も容易になります。
これからNode.jsを学ぶ方は、まず基本的なHTTPサーバーの作成から始め、ExpressやMongoDBと組み合わせた実践的な開発に挑戦すると良いでしょう。



コメント