항상 새로운 프레임워크와 라이브러리를 얻는 것은 자바스크립트로 유명한 일입니다.2022년 7월에 생태계는 Bun.js라는 새로운 구성원을 환영했습니다.여기에서 Bun.js를 살펴보고 이것이 더 광범위한 JavaScript 생태계에 어떤 영향을 미치는지 살펴보겠습니다.
목차
Bun.js란 무엇입니까?
Bun은”빠른 올인원 JavaScript 런타임”으로 정의됩니다. Jarred Sumner가 Zig 프로그래밍 언어를 사용하여 만든 Node.js 및 Deno.js에 이어 세 번째입니다.
주요 목표는 Node.js 및 Deno.js와 같이 브라우저 외부에서 JavaScript를 실행하기 위한 플랫폼을 제공하는 것이지만 Bun은 새로운 수준의 속도와 향상된 복잡성을 제공하기 위해 발전했습니다.
자바스크립트의 발전 방식
JavaScript는 원래 SpiderMonkey 및 V8과 같은 엔진으로 구동되는 브라우저 내에서만 실행되도록 제작되었습니다.2009년 Ryan Dahl은 Node.js라는 C++ 프로그램에 V8 엔진을 내장했습니다.JavaScript는 그 이후로 서버 측 및 실시간 응용 프로그램과 같은 다양한 용도와 관련이 있게 되었습니다.
Promise 및 ES 모듈은 Node.js가 생성될 때 존재하지 않았던 최신 JavaScript 기능의 예입니다.Ryan은 2018년에 Node.js에 대해 후회한 점에 대해서도 이야기했습니다.그의 후회는 그가 2020년에 출시한 Deno.js의 생성에 영감을 주었습니다.
Deno는 보안, 성능 및 기본 TypeScript 지원과 같은 Node의 모든 결함을 해결하는 것을 목표로 Rust로 빌드된 실행 파일입니다.Node보다 훨씬 빠르고 안전하며 Node.js에는 없는 도구가 함께 제공됩니다.
그러나 Deno는 출시된 지 4년이 지난 후에도 예상되는 대규모 채택을 얻지 못했습니다. 대부분의 최신 시스템은 이미 노드 기반이고 변경은 개발자에게 고통이 될 수 있습니다.Deno 지원을 위해 대부분의 npm 패키지를 다시 작성해야 하는 것도 채택에 어려움이 있습니다.
2022년 7월에 새로운 런타임 베타 버전인”Bun.js”가 나타났습니다. 이 런타임은 JavaScript 커뮤니티 안팎에서 유행하는 주제였습니다.Node.js와의 상호 운용성 및 Node.js가 제공한다고 주장하는 고속 성능이 가장 두드러졌습니다.또한 마침내 주변에”노드 파괴자”가 있다는 논의도 제기되었습니다.
Bun.js는 Node.js 및 Deno.js와 어떻게 비교됩니까?
Node, Deno 및 Bun은 모두 브라우저 외부의 JavaScript용 런타임이며, 이는 이들 간의 차이점을 중화하지 않습니다.
Node.js는 C++로, Deno는 Rust로, Bun은 Zig로 작성되었습니다.”메모리에 대한 낮은 수준의 제어와 Zig의 숨겨진 제어 흐름이 없기 때문에 빠른 소프트웨어를 더 쉽게 작성할 수 있습니다.”라고 Bun의 웹 사이트는 말합니다.
Node와 Deno는 모두 Google의 V8 엔진을 실행하는 반면 Bun은 Apple의 Safari에서 사용하는 Webkit의 JavaScriptCore 엔진의”빠른 시작” 성능을 활용합니다.웹사이트의 벤치마크 결과는 Bun이 Node와 Deno를 모두 능가하는 성능을 보여주며 두 런타임보다 최소 3배 더 빠르게 작동합니다.
Bun에는 npm(노드 패키지 관리자)이 내장되어 있어 npm에서 패키지를 쉽고 빠르게 설치할 수 있으며(Node에서 20배 속도) TypeScript와 TS 및 JSX 파일 자동 변환도 지원합니다.Bun의 다른 흥미로운 기능으로는 내장 SQLite3 클라이언트, fetch 및 WebSocket과 같은 웹 API, 환경 변수 자동 로드 및 테스트 실행기가 있습니다.
3명 중 Bun은 퍼포먼스를 위해 케이크를 가져간다.Node는 매우 큰 커뮤니티에서 가장 안정적인 것으로 남아 있는 반면 Deno는 현재 가장 안전한 것입니다.
Bun.js가 생태계에 정말 영향을 미칠까요?
생태계는 Bun의 출시에 열광하고 있습니다.발표 이후 Bun에 대한 과대 광고가 엄청났다는 점은 동의합니다.그것은 절대적으로 큰 일입니다.JavaScript 개발자는”놀라운” 속도와 생산성을 위한 강력한 도구를 고려하면 정말 좋아할 것입니다.
게다가, Bun’s Discord 서버는 이미 2000명 이상의 회원을 보유하고 있어 이 새로운 기술에 대한 커뮤니티의 관심을 증명합니다.
Node.js, Deno.js 및 Bun.js의 미래는 무엇입니까?
자바스크립트는 곧 중단되지 않습니다.실제로, 그것은 우리가 지금부터 10년 후에도 여전히 매우 많이 사용하게 될 기술 중 하나입니다.노드, 데노, 번에게도 미래가 있습니다.
Node는 여전히 정기적으로 업데이트되고 버전 18.0은 최근에 출시되었으므로 Deno와 Bun이 있더라도 그 미래는 그대로 유지됩니다.PayPal과 같은 많은 회사는 인프라에 Node를 사용하고 있으며 새로운 스타트업도 이를 따르고 있습니다.
개발이 활발히 진행되고 있는 Deno의 경우도 비슷합니다.Deno는 또한 관리형 JavaScript 런타임 서비스를 제공하기 위해 SaaS 솔루션으로 발전하고 있습니다.
Bun.js는 여전히 불안정하고 지원이 제한적입니다(Windows에서 실행하려면 Linux용 Windows 하위 시스템이 필요합니다).많은 기능이 있지만 아직 수행해야 할 작업이 많기 때문에 현재 프로덕션 준비 소프트웨어에 대한 옵션이 될 수 없습니다.
Bun의 미래는 확실히 밝지만 이 세 가지 기술이 하나가 다른 하나를 대체하는 것이 아니라 결국 생태계에서 공존할 가능성이 높다고 믿는 것이 논리적입니다.
Bun.js가 게임 체인저가 될 수 있음
Bun을 사용하면 JavaScript에 대해 많은 것이 향상될 수 있습니다.이제 JavaScript가 AI/ML, 게임 개발 등과 같이 성능이 중요한 분야에서 더 잘 채택될 때입니다. Bun.sh 웹사이트로 이동하여 Bun을 설치하고 개발을 시작하는 방법을 배우십시오.