처음 자바스크립트는 모듈을 가져오거나 내보내는 방법이 없어, 하나의 파일에 모든 기능들이 들어가야 했습니다. CJS, AMD, UMD, ESM이 등장 후에는 모듈로 개발하고 배포할 수 있게 되었습니다. 이번 포스트에서는 모듈화 개발을 할 수 있게 한 CJS, AMD, UMD, ESM가 무엇인지 살펴보겠습니다. CJS (CommonJS) CommonJS(http://www.commonjs.org/)는 이름의 'Common'에서 알 수 있듯이 JavaScript를 브라우저에서뿐만 아니라 범용 언어로 사용할 수 있도록 하겠다는 의지를 가진 워킹 그룹입니다. 코드 예제 CJS를 사용하는 방법은 아래 코드와 같습니다. // 아래와 같이 require을 통해 package/lib 모듈을 변수에 담을 수 있습니다. ..
Javascript
2.1 자바스크립트의 탄생 1995년, 약 90%의 시장 점유율로 웹 브라우저 시장을 지배하고 있던 넷스케이프 커뮤니케이션즈는 웹페이지의 보조적인 기능을 수행하기 위해 브라우저에서 동작하는 경량프로그래밍 언어를 도입하기로 결정한다. 그래서 탄생한 것이 브랜던 아이크가 개발한 자바스크립트이다. 이렇게 탄생한 자바스크립트는 현재 모든 브라우저의 표준 프로그래밍 언어로 자리 잡았다. 그러나 자바스크립트가 순탄하게 성장했던 것은 아니다. 자바스크립트가 탄생한 뒤 얼마 지나지 않아 자바스크립트의 파생 버전인 JScript가 출시되어 자바스크립트는 위기를 맞는다. 2.2 자바스크립트의 표준화 1996년 8월, 마이크로소프트는 자바스크립트의 파생 버전인 JScript를 인터넷 익스플로러3.0에 탑재했다. 그런데 문제..
1.1 프로그래밍이란 컴퓨터에게 실행을 요구하는 일종의 커뮤니케이션이다. 즉, 0과 1밖에 알지 못하는 기계가 실행할 수 있도록 정확하고 상세하게 요구사항을 설명하는 작업이며 그 결과물이 바로 코드다. 1.2 프로그래밍 언어 컴퓨터에게 요구사항을 설명할 때 컴퓨터가 이해할 수 있는 언어, 즉 기계어로 명령을 전달해야한다. 하지만 사람이 기계어로 직접 명령을 전달하는 것은 매우 어려운 일이다. 때문에 기계어를 대신할 가장 유용한 대안은 사람이 이해할 수 있는 약속된 구문(syntax-문법)으로 구성된 프로그래밍 언어를 사용해 프로그램을 작성한 후, 그것을 컴퓨터가 이해할 수 있는 기계어로 변환하는 일종의 번역기를 사용하는 것이다. 이 일종의 번역기를 컴파일러(compiler) 혹은 인터프리터(interpr..