"ng build"는 Angular 프레임워크에서 제공하는 명령어로, Angular 애플리케이션을 빌드하는 데 사용됩니다. 애플리케이션을 개발 중일 때는 주로 개발 서버를 실행하여 변경 사항을 실시간으로 확인할 수 있지만, 애플리케이션을 실제로 배포하거나 배포 환경과 동일한 조건에서 테스트해야 할 때는 빌드 프로세스를 통해 최적화된 애플리케이션 버전을 생성해야 합니다.
"ng build" 명령은 Angular 프로젝트의 소스 코드를 컴파일하고 번들링하여 정적 파일을 생성합니다. 이렇게 생성된 파일은 웹 서버에 호스팅되거나 배포할 수 있습니다. "ng build" 명령을 실행하면 다음과 같은 주요 단계가 수행됩니다.
TypeScript 컴파일: Angular 애플리케이션은 TypeScript로 작성되며, "ng build" 명령은 TypeScript 컴파일러를 사용하여 소스 코드를 JavaScript로 변환합니다.
번들링: Angular 애플리케이션은 여러 개의 모듈로 구성되어 있습니다. 번들링은 이러한 모듈들을 하나의 파일로 결합하여 애플리케이션의 크기를 줄이고 로딩 속도를 개선하는 작업입니다. 번들러인 Webpack을 사용하여 필요한 모듈, 스타일시트, 이미지 등을 패키징합니다.
최적화: 빌드 프로세스는 애플리케이션의 성능을 향상시키기 위해 여러 가지 최적화 작업을 수행합니다. 예를 들어, 불필요한 코드를 제거하고, 코드 압축을 통해 파일 크기를 줄이고, 정적 자산을 캐싱하여 로딩 속도를 개선합니다.
결과물 생성: 위 단계들을 통해 생성된 최적화된 애플리케이션 파일들은 "dist"라는 디렉토리에 저장됩니다. 이 디렉토리 안에는 index.html 파일과 JavaScript, CSS, 이미지 파일 등이 포함됩니다.
"ng build" 명령은 기본적으로 개발 환경에 맞게 빌드를 수행합니다. 개발 환경에서는 디버그 정보와 소스 맵 파일을 포함하여 개발자 도구에서 디버깅을 용이하게 합니다. 그러나 실제 배포를 위해 빌드할 때는 --prod
플래그를 추가하여 프로덕션 환경에 맞는 최적화를 수행할 수 있습니다. 예를 들어, "ng build --prod" 명령을 실행하면 애플리케이션의 크기가 줄어들고 성능이 향상됩니다.
"ng build" 명령은 Angular CLI(Command Line Interface)를 통해 실행할 수 있으며, 프로젝트의 루트 디렉토리에서 실행해야 합니다.