자바스크립트 엔진
JavaScript engine자바스크립트 엔진은 자바스크립트 코드를 실행하는 소프트웨어 구성 요소입니다.최초의 자바스크립트 엔진은 단순한 인터프리터였지만, 모든 관련 최신 엔진은 성능 향상을 위해 적시 컴파일을 사용합니다.[1]
자바스크립트 엔진은 일반적으로 웹 브라우저 벤더에 의해 개발되며, 모든 주요 브라우저에는 하나씩 있습니다.브라우저에서 자바스크립트 엔진은 문서 객체 모델을 통해 렌더링 엔진과 함께 실행됩니다.
자바스크립트 엔진의 사용은 브라우저에 국한되지 않습니다.예를 들어, V8 엔진은 Node.js 및 Deno 런타임 시스템의 핵심 구성 요소입니다.
ECMAscript는 자바스크립트의 표준화된 사양이므로 ECMAscript 엔진은 이러한 엔진의 다른 이름입니다.WebAssembly의 등장으로 일부 엔진은 일반 자바스크립트 코드와 동일한 샌드박스에서 이 코드를 실행할 수도 있습니다.
역사
최초의 자바스크립트 엔진은 1995년 Brendan Eich에 의해 Netscape Navigator 웹 브라우저용으로 만들어졌습니다.아이히가 발명한 초기 언어에 대한 초보적인 해석이었습니다.(이것은 파이어폭스 브라우저에서 여전히 사용되는 SpiderMonkey 엔진으로 진화했습니다.)
최초의 현대적인 자바스크립트 엔진은 V8로, 구글이 크롬 브라우저용으로 만들었습니다.V8은 2008년 크롬의 일부로 첫 선을 보였고, 그 성능은 이전의 어떤 엔진보다 훨씬 뛰어났습니다.[2][3]핵심적인 혁신은 실행 시간을 크게 향상시킬 수 있는 적시 컴파일이었습니다.
다른 브라우저 공급업체들은 경쟁하기 위해 인터프리터를 정비해야 했습니다.[4]애플은 사파리 브라우저용 니트로 엔진을 개발했는데, 이 엔진은 전작보다 성능이 30% 향상됐습니다.[5]모질라는 Nitro의 일부를 활용하여 자체 SpiderMonkey 엔진을 개선했습니다.[6]
2017년부터 이 엔진들은 WebAssembly에 대한 지원을 추가했습니다.이를 통해 페이지 스크립트의 성능이 중요한 부분에 대해 미리 컴파일된 실행 파일을 사용할 수 있습니다.
주목할 만한 엔진
- 가장 많이 사용되는 자바스크립트 엔진은 구글의 V8입니다.구글 크롬과 다른 많은 크롬 기반 브라우저들도 CEF, Electron 또는 크롬을 내장한 다른 프레임워크로 만들어진 애플리케이션들과 마찬가지로 이 브라우저를 사용합니다.다른 용도로는 Node.js와 Deno 런타임 시스템이 있습니다.
- SpiderMonkey는 Firefox와 그 포크에서 사용하기 위해 Mozilla에 의해 개발되었습니다.GNOME Shell은 확장 지원을 위해 사용합니다.
- 자바스크립트 코어는 애플의 사파리 브라우저용 엔진입니다.다른 웹킷 기반 브라우저들도 이를 사용합니다.KDE의 KJS가 개발의 출발점이었습니다.[7]
- 차크라는 인터넷 익스플로러 브라우저의 엔진입니다.마이크로소프트에 의해 원래의 엣지 브라우저용으로도 개발되었으나 이후 엣지는 크롬 기반 브라우저로 재구축되어 현재는 V8을 사용하고 있습니다.[8][9]
참고문헌
- ^ Looper, Jen (2015-09-21). "A Guide to JavaScript Engines for Idiots". Telerik Developer Network. Archived from the original on 2018-12-08. Retrieved 2018-12-08.
- ^ "Big browser comparison test: Internet Explorer vs. Firefox, Opera, Safari and Chrome". PC Games Hardware. Computec Media AG. Archived from the original on 2012-05-02. Retrieved 2010-06-28.
- ^ "Lifehacker Speed Tests: Safari 4, Chrome 2". Lifehacker. Retrieved 2010-06-28.
- ^ "Mozilla asks, 'Are we fast yet?'". Wired. Retrieved 18 January 2019.
- ^ 사파리 5 출시
- ^ Shankland, Stephen (2010-03-02). "Opera 10.5 brings new JavaScript engine". CNET. CBS Interactive. Archived from the original on 2013-10-03. Retrieved 2012-01-30.
- ^ Stachowiak, Maciej (November 9, 2008). "Companies and Organizations that have contributed to WebKit". WebKit Wiki. Retrieved April 13, 2019.
- ^ Belfiore, Joe (2020-01-15), New year, new browser – The new Microsoft Edge is out of preview and now available for download, Microsoft
- ^ "Microsoft Edge and Chromium Open Source: Our Intent". Microsoft Edge Team. 6 December 2018. Retrieved 8 December 2018.