반응형
코딩 테스트, 코딩 면접 준비, 타입스크립트
Q) 타입스크립트의 모듈(module)에 대해 말해주세요.
모듈은 같은 일을 하는 기능 단위 묶어진 코드 집합입니다. 모듈로 나누어 개발을 하게 되면 유지보수 및 확장에 유용합니다. 타입스크립트는 물론 다양한 프로그래밍 언어에서 모듈을 사용하여 공기능을 분할해서 만들고 관리할 수 있습니다.
모듈은 외부모듈(external modules)과 내부모듈(internal modules)로 종류를 나누었었지만, 타입스크립트 1.5부터 내부모듈은 네임스페이스로, 외부모듈은 모듈로 변경되었습니다. 따라서 이제는 내부모듈을 선언하기 위해서 쓰였던 module 키워드는 namespace 키워드로 사용해야 합니다.
1. namespace 네임스페이스( v1.5 이전 내부모듈 )
네임스페이스를 만들고 싶다면 namespace 키워드를 사용합니다. 그리고 그곳에 관리하고 싶은 메소드나 변수를 넣습니다.
네임스페이스에 접근하려면 모듈 이름에 점(.)을 붙여서 참조할 수 있습니다. 일반적으로 네임스페이스를 사용하는 목적은 구조의 논리적 그룹을 제공하고 이름 충돌을 방지하기 위해서 입니다.
2. module 모듈 ( 외부모듈)
모듈은 여러 파일로 기능을 나누고 다시 각각 모듈을 참조해서 하나의 프로그램을 만들 수 있게 합니다. 네임스페이스와는 다르게 namespace와 같은 키워드는 필요 없습니다.
외부에 노출시키고 싶은 변수나 함수, 클래스에 export 키워드를 붙이고, 사용하는 측에서는 import로 가져와서 사용할 수 있습니다.
반응형
'코딩테스트 > typescript' 카테고리의 다른 글
[코테] Q6. 타입스크립트의 인터페이스란? (0) | 2022.07.08 |
---|---|
[코테] Q5. 타입스크립트의 데코레이터란? (0) | 2022.07.07 |
[코테] Q4. 타입스크립트를 컴파일 하는 이유는? (0) | 2022.07.07 |
[코테] Q2. 타입스크립트의 장점이 뭔가요? (0) | 2022.07.05 |
[코테] Q1. 타입스크립트 무엇이고, 왜 사용해야하나? (0) | 2022.07.05 |
최근댓글