ES 모듈 의존성 분리 기준

import 문은 모두 비슷해 보이지만 런타임에 남는 값 의존성, 컴파일 때 사라지는 타입 의존성, 가져오는 순간 실행되는 효과가 서로 다릅니다.

ES 모듈 의존성 분리import 문은 모두 비슷해 보이지만 런타임에 남는 값 의존성, 컴파일 때 사라지는 타입 의존성, 가져오는 순간 실행되는 효과가 서로 다…
value

런타임에 필요한 코드

import { add } from "./math"; add(1, 2); 함수, 클래스, 상수처럼 실행 중 참조되는 값은 번들에 남습니다.

type

타입 검사만 위한 연결

import type { User } from "./user"; const value: User = data; 타입 전용 import는 자바스크립트 출력에서 제거되어…

effect

가져오는 순간 실행

import "./polyfills"; startApp(); 전역 설정, 폴리필, 스타일처럼 실행 순서가 의미 있는 파일에만 사용합니다.

4

순환 참조가 보일 때

공유 타입은 import type 으로 낮추고, 실제 값 의존성은 한 방향으로 흐르게 정리합니다.

5

경로가 길어질 때

기능 경계를 기준으로 배럴 파일이나 paths 별칭을 쓰되, 공개 API가 흐려지지 않게 유지합니다.

핵심검토 순서 이 import가 실행 결과에 필요한지, 타입 검사에만 필요한지, 부수 효과를 의도하는지 먼저 구분합니다.