백엔드 개발을 위한 Express를 사용한 TypeScript

TypeScript는 정적 유형 검사를 제공하여 개발 경험을 향상시키며, 이를 통해 더욱 견고하고 유지 관리하기 쉬운 코드를 만들 수 있습니다. Node.js의 인기 있는 웹 프레임워크인 Express와 TypeScript를 통합하면 백엔드 개발을 위한 두 도구의 이점을 모두 얻을 수 있습니다. 이 가이드에서는 Express와 함께 TypeScript를 효과적으로 설정하고 사용하는 방법을 설명합니다.

프로젝트 설정

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를 추가합니다. ts-node 패키지도 TypeScript 파일을 직접 실행하기 위해 설치됩니다.

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 모듈을 사용하며 src 디렉터리에 있는 모든 TypeScript 파일을 포함하면서 node_modules은 제외됩니다.

익스프레스 애플리케이션 생성

메인 애플리케이션 파일을 만듭니다. 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는 웹 애플리케이션을 빌드하기 위한 견고한 프레임워크를 제공합니다. 적절한 설정과 구성을 통해 TypeScript와 Express로 개발하는 것은 매끄럽고 생산적인 경험이 됩니다.