JS 번들링/트랜스파일링 없는 최신 웹앱
(world.hey.com)- Ruby on Rails 개발자 DHH의 생각 : "JavaScript의 미래는 ES6/HTTP2/Import maps"
- No Transpiler : ES6이 모든 브라우저에 적용되면서 이제 트랜스파일러가 필요 없어졌음
- No Bundler : HTTP2가 표준이 되면서 작은 파일들을 하나로 묶을 필요가 없어짐
- Import maps : 가장 중요한 변화
ㅤ→ ES6 모듈에 대해 파일 레퍼런스가 아닌 논리 레퍼런스가 가능
ㅤ→ 파일 제목에 해쉬를 넣고, 변경될때마다 파일 이름을 변경하는 대신 모듈과 파일명을 연결하는 맵만 수정하면 끝
ㅤ→ 이미 크롬과 Edge는 적용. FF도 고려중이고 Safari는 소식없지만 훌륭한 shim이 이미 있음
ㅤ→ 임포트맵의 수동 관리는 아직 작업이 필요하지만, Rails에는 importmap-rails 젬을 만들어 뒀음
- 이 세가지의 조합으로 로컬에서 Node 설치도 필요없는 개발환경 구축이 가능
- Hotwire용 Stimulus, Turbo 에는 이미 이 셋업을 적용했음
- 물론 아직은 Webpack이 필요한 어플리케이션들이 존재하지만, 점점 변해가고 있음
저는 웹 개발을 간단하게 유지하려는 DHH 방향이 맞다고 생각해요.
요즘은 뭘 만들던 프론트엔드를 붙이려는 시도를 관성적으로 하는데, 그 트렌드에 대한 의구심이 있습니다.