バックエンド開発のための Express を使用した TypeScript

TypeScript は静的型チェックを提供することで開発エクスペリエンスを向上させ、より堅牢で保守しやすいコードを実現します。TypeScript を Node.js の一般的な Web フレームワークである Express と統合すると、バックエンド開発で両方のツールの利点を活用できます。このガイドでは、TypeScript を Express で効果的にセットアップして使用する方法について説明します。

プロジェクトの設定

Express で TypeScript を使い始めるには、まず新しい Node.js プロジェクトを初期化し、必要な依存関係をインストールします。新しいプロジェクトを設定する方法は次のとおりです。

mkdir my-express-app
cd my-express-app
npm init -y
npm install express
npm install --save-dev typescript @types/node @types/express ts-node

上記のコマンドは、新しい Node.js プロジェクトを初期化し、Express をインストールし、Node.js と Express の型定義とともに TypeScript を追加します。TypeScript ファイルを直接実行するために、ts-node パッケージもインストールされます。

TypeScript の設定

TypeScript を構成するには、tsconfig.json ファイルを作成します。このファイルは、コンパイラ オプションとプロジェクト設定を指定します。基本的な構成は次のとおりです。

{
  "compilerOptions": {
    "target": "ES6",
    "module": "commonjs",
    "strict": true,
    "esModuleInterop": true,
    "skipLibCheck": true,
    "forceConsistentCasingInFileNames": true
  },
  "include": ["src/**/*.ts"],
  "exclude": ["node_modules"]
}

この構成により、TypeScript が ES6 にコンパイルされ、CommonJS モジュールが使用され、node_modules を除外して src ディレクトリ内のすべての TypeScript ファイルが含められるようになります。

Expressアプリケーションの作成

メイン アプリケーション ファイルを作成します。src ディレクトリに、次の内容を含む index.ts という名前のファイルを作成します。

import express, { Request, Response } from 'express';

const app = express();
const port = 3000;

app.get('/', (req: Request, res: Response) => {
  res.send('Hello TypeScript with Express!');
});

app.listen(port, () => {
  console.log(`Server is running at http://localhost:${port}`);
});

このシンプルな Express アプリケーションは、ルート URL でアクセスすると「Hello TypeScript with Express!」と応答するサーバーを設定します。

アプリケーションの実行

TypeScript アプリケーションを実行するには、ts-node を使用します。このプロセスを簡略化するには、package.json にスクリプトを追加します。

{
  "scripts": {
    "start": "ts-node src/index.ts"
  }
}

次に、次のコマンドでサーバーを起動します。

npm start

サーバーが実行され、http://localhost:3000 でアクセスできるようになります。

型定義の追加

型定義は、TypeScript が外部ライブラリで使用される型を理解するのに役立ちます。Express および Node.js の場合、型定義は次の方法でインストールされます。

npm install --save-dev @types/node @types/express

これらの型定義は、Express および Node.js 機能の自動補完と型チェックを提供することで、開発エクスペリエンスを向上させます。

結論

TypeScript と Express を統合すると、バックエンド開発に強力な組み合わせが提供されます。TypeScript が提供する静的型付けにより、エラーを早期に検出してコードの品質を向上させることができ、Express は Web アプリケーションを構築するための堅牢なフレームワークを提供します。適切なセットアップと構成により、TypeScript と Express を使用した開発はスムーズで生産性の高いものになります。