akjfal

3일차 본문

카테고리 없음

3일차

akjfal 2022. 2. 26. 12:23

지금까지 Babel에 대해서 한국어로 된 글로 대략적으로 파악했으니 공식문서를 보기 시작했다.

Babel은 코드를 파싱 > 변환 > 생성 과정을 통해 코드 변환을 시킨다. 자바스크립트 개발자를 위한AST

What is Babel?

우선 Babel이란 ECMAScript 2015를 뒷 버전으로 변경해줘서 다른 브라우저와 호환성을 높여준다. 

1. 문법 transform

2. Polyfill(폴리필(polyfill)은 웹 개발에서 기능을 지원하지 않는 웹 브라우저 상의 기능을 구현하는 코드를 뜻한다.) 역할을 한다.(core-js를 같은 친구들이 해줌)

3. 소스코드 변환(codemods : LargeScale을 부분적으로 자동화 가능한 코드베이스 리팩토링을 지원하는 도구입니다)

4. 기타 등등... 

 

Babel · The compiler for next generation JavaScript

The compiler for next generation JavaScript

babeljs.io

ES2015와 이전

js를 변환기를 이용해 최신 버전으로 변환해준다.

JSX와 React

 JSX를 js로 변환해준다.

Type Annotation(flow(static type 검사기)와 typescript)

Type Annotation을 제거해준다.

Pluggable

너만의 플로그인들을 적용할 수 있다.

Debuggable

Spec Compliant(사양 준수)

Compact

최대한 압축하려고하며, 이가 어려운 경우 설정을 통해 조절 가능하다.

Babel 구성

babel.config.josn : monorepo를 사용중, node_modules를 컴파일 원할 경우

.babelrc.json : 프로젝트죽 일부 파트만 적용하길 원할 경우

 

다음에 공부할 사항

바벨 4 5 6 7 의 비교, 바벨 7의 변경점

Comments