[typescript] 타입스크립트 모듈과 네임스페이스를 사용하여 프로젝트 구조를 설계하는 방법

타입스크립트는 모듈과 네임스페이스를 활용하여 프로젝트 구조를 설계하는 데 도움이 됩니다. 모듈을 사용하면 코드를 논리적인 부분으로 나눌 수 있으며, 네임스페이스를 사용하면 전역 범위에서 충돌을 방지할 수 있습니다.

모듈 사용하기

타입스크립트에서 모듈은 코드를 분리하고 재사용 가능한 요소로 만드는 데 도움이 됩니다. 모듈은 다른 파일에서 importexport를 사용하여 사용할 수 있는 코드 블록입니다.

다음은 모듈을 사용하는 간단한 예제입니다.

// moduleA.ts
export function helloWorld() {
  console.log('Hello, World!');
}

// moduleB.ts
import { helloWorld } from './moduleA';
helloWorld();

위 예제에서 moduleA.ts에서 helloWorld 함수를 export하고, moduleB.ts에서 import하여 사용하고 있습니다. 이렇게 하면 코드를 모듈 단위로 분리하여 유지보수하는 데 도움이 됩니다.

네임스페이스 활용하기

네임스페이스는 코드를 논리적으로 그룹화하거나 전역 영역에서 충돌을 방지하는 데 유용합니다. 네임스페이스는 전역 스코프에서 중첩된 개체를 생성하는 방법이며, 다른 파일에서 접근할 때 namespaceName.memberName과 같은 형태로 접근합니다.

다음은 네임스페이스를 사용하는 간단한 예제입니다.

// Shapes.ts
namespace Shapes {
  export class Circle {
    // ...
  }
}

// main.ts
let circle = new Shapes.Circle();

위 예제에서 Shapes 네임스페이스 안에 Circle 클래스를 정의하고, main.ts에서 해당 네임스페이스의 클래스를 사용하는 예시입니다.

결론

타입스크립트 모듈과 네임스페이스를 사용하여 프로젝트를 구조화하는 방법을 알아보았습니다. 모듈을 사용하여 코드를 논리적으로 분리하고, 네임스페이스를 활용하여 전역 스코프에서 충돌을 방지할 수 있습니다. 이를 통해 프로젝트의 유지보수성과 확장성을 향상시킬 수 있습니다.

더 자세한 내용은 타입스크립트 공식 문서를 참고하세요.