-
AMD(Asynchronous Module Definition)는 CommonJS의 개선하기위해 만들어짐.
AMD는 동적 로딩과 의존성 관리, 모듈화를 지원하는 API를 제공한다.
모듈과 종속성 파일들을 비동기적으로 로드할 수 있도록 모듈을 정의하기 위해 만들어짐. CommonJS와 ESM 모두 module로딩을 동기식 방식을 채택하고 있기 때문에 로드한 module가 아직 사용되지 않았음에도 미리 로딩해야 한다는 문제를 개선하기위해 만들어짐.
AMD의 비동기적 모듈을 구현한 가장 유명한 스크립트는 RequireJS가 있다.
하지만 ES6의 등장과 함께 브라우저에서도 사용 가능한 ESM 내장 모듈 시스템이 등장했고, webpack과 같은 모듈 번들러에서는 비동기적으로 모듈 로딩을 처리해 주고있다.
'Html Css JavaScript' 카테고리의 다른 글
Nullish coalescing assignment (0) 2023.02.20 Spread syntax (...) (0) 2023.02.14 Babel (0) 2023.01.29 Javascript UMD (Universal Module Definition) (0) 2023.01.29 Javascript ESM (ECMA Script Module) (0) 2023.01.29 Javascript CJS (CommonJS) (0) 2023.01.29 ECMAScript, ECMA-262 (javascript) (0) 2023.01.29 jquery 선택자 id, class, name (0) 2023.01.23