Recent Posts
Recent Comments
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Today
Total
관리 메뉴

DH의 개발 공부로그

[SWC] SWC란 무엇인가? 본문

IT개발상식

[SWC] SWC란 무엇인가?

DeveloperDH 2023. 3. 27. 22:38
728x90

서론

최근들어 CRA방식이 아닌 Vite를 이용한 프로젝트들을 작업하다보니 의문이 드는 지점이 있었습니다.
바로 리액트파일을 생성을 할 때 다음과 같이 + SWC가 붙어있는게 과연 무엇을 의미하는지 입니다.

SWC란?

바로 구글링을 통해 알아 본 바로는 SWCSpeedy Web Compiler의 약자로 Rust라는 언어로 제작이 된
말 그대로 매우 빠른 자바스크립트 컴파일러이며, 기존 Babel이 하던 일의 대체제라고 합니다.
또한 SWC는 컴파일러이지만 웹팩과 같은 자바스크립트 번들러의 기능도 제공하고 있다고 합니다.
따라서 그냥 컴파일러가 아닌 SWCRust기반의 플랫폼입니다.

SWC가 왜 빠를까?

바로 SWCRust 기반의 툴이기 때문입니다.
Rust 언어의 특징이 바로 병렬 처리를 고려한 언어라는 점 입니다.
따라서 간단하게 설명을 하자면 싱글 스레드 언어인 자바스크립트로 작성이 된 Babel과는 다르게
SWC는 동시에 여러 파일들을 변환 할 수 있기 때문에 빠르다는 것 입니다.
공식 문서에 따르면 SWC는 단일 스레드에서 Babel보다 20배 빠르고 4개 코어에서 70배 빠르다고 합니다.

참고

SWC - 공식문서
초보 웹 개발자를 위한 자바스크립트 빌드 툴과 SWC
왜 여러분은 (바벨이 아니라) SWC를 사용해야 하는가?

728x90
Comments