용어

컴파일(Compile) : 인간이 작성한 소스코드를 기계가 이해할 수 있는 머신코드로 변환하는 것이다.

트랜스파일(Transpile) : 다른 실행 환경에서도 동작하도록 같은 언어를 유지한 채 소스 코드의 형태만 바꾸는 것이다.

 

개요

JavaScript의 트랜스파일러(Transpiler)이다. 아래의 변환 대상으로 작성한 JavaScript 코드를 ES5 이하의 문법으로 변경하여, 최신 문법을 지원하는 환경과 그렇지 않은 환경 양 쪽에서 잘 동작하도록 해준다.

 

사용하는 이유

JavaScript 언어의 문법은 빠르게 진화하지만 정작 실행 환경은 이를 받쳐주지 못하는 경우가 많다.

실행 환경인 브라우저의 경우 종류가 다양하고 어떤 브라우저가 어떤 문법을 지원하는지 일일이 파악하기가 힘들 정도이고, 노드(NodeJS)의 경우에도 버젼별로 지원하는 언어나 문법이 다르다.

개발자가 JavaScript ES6 이상의 최신 문법으로 작성한 코드는 일부 실행 환경에서 작동하지 않기 때문에 모든 환경에서 돌아가도록 보수적으로 예전의 ES5 이하 방식으로 코드를 작성해야 하는 문제를 겪는다.

 

변환 대상

ES6 이상의 최신 문법, TypeScript나 JSX로 작성된 코드 등

 

특징

Babel은 단독으로 사용되기도 하지만 규모가 큰 프로젝트에서는 Webpack이나 Rollup같은 번들러(bundler)와 함께 사용되거나 프레임워크의 일부로 포함되기도 한다.

 

출처 : www.daleseo.com/js-babel/

 

바벨(Babel 7) 기본 사용법

Engineering Blog by Dale Seo

www.daleseo.com

 

반응형

'■ 웹 개발 > JavaScript' 카테고리의 다른 글

Scope란?  (0) 2020.11.18
ESLint란?  (0) 2020.11.18
Ajax란?  (0) 2020.11.13
JavaScript란?  (0) 2020.11.10
웹 개발 디자인패턴이란?  (0) 2020.11.09

+ Recent posts