자바스크립트 엔진
자바스크립트 엔진의 기본적인 역할은, 개발자가 작성한 자바스크립트 코드를 브라우저에 의해 해석되거나 어플리케이션에 임베드 될 수 있는 빠르고 최적화된 코드로 변환하는 일이다 실제로 JavaScriptCore는 스스로를 ‘최적화 가상 머신’ 이라 부른다
더 자세하게 말하면, 각각의 자바스크립트 엔진은 특정 버전의 ECMAScript를 구현한다 ECMAScript가 발전하는 만큼, 자바스크립트 엔진도 발전한다 수많은 자바스크립트 엔진이 존재하는 이유는 각각의 엔진이 서로 다른 웹브라우저, 헤드리스(headless) 브라우저, Node.js와 같은 런타임 등에서 동작하도록 만들어졌기 때문이다
자바스크립트 엔진을 다른 말로는 ECMAscript라고 도 부른다고 한다 웹 브라우저마다 사용하는 엔진이 다르다고 한다 그중 많은 개발자들이 애용하는 크롬 브라우저는 V8 엔진으로 되있다고 한다 C++ 언어로 만들어져 있으며 node js의 토대가 된 대표적인 엔진이다
간단하게 말하면, 자바스크립트 엔진은 당신의 소스코드를 가져와서, 문자열 단위로 분해하고(어휘단위로 정리), 이들 문자열을 가져다가 컴파일러가 이해할 수 있도록 바이트 코드로 변환한 후, 이를 실행한다
Canary
Canary, 카나리아는 옛날 광부들이 유독 가스에 민감한 카나리아 새를 이용해 가스 누출 위험을 감지했던 것에서 유래한 것으로 잠재적 문제 상황을 미리 발견하기 위한 방식이다 신버전의 제공 범위를 늘려가면서 모니터링 및 피드백 과정을 거칠 수 있다
즉, 안정적인 버전을 릴리즈하기 전에 테스트 버전을 일부 사용자에게 배포하는 것을 말한다 만약 카나리 버전에 심각한 버그가 발생된다고 해도 사용하는 사용자가 적기 때문에 피해를 최소화할 수 있다 또한 안정적인 버전과 테스트 버전이 모두 배포된 상태이기 때문에 A/B 테스트가 가능하다
프론트 엔드에서 작업을 할 때 브라우저별로 테스트해야 하기 때문에 Microsoft Edge Canary와 Chrome Canary를 설치해서 확인하려고 한다
Microsoft Edge Canary
https://www.microsoftedgeinsider.com/ko-kr/download/canary
Chrome Canary
https://www.google.com/intl/ko/chrome/canary/
'ETC' 카테고리의 다른 글
[#. Web] HTTP, Web Socket, Web RTC란? (0) | 2022.02.21 |
---|---|
[#. ETC] 디자이너 없이 개발할 때 참고하기 유용한 사이트(color, gradient, svg, png, background) (0) | 2022.01.07 |
[#. VSCode] Mac에서 code . 명령어로 VSCode 실행하기 (0) | 2021.11.30 |
[#. VSCode] VSCode 터미널 bash에서 zsh로 기본 셸 변경하기 (0) | 2021.11.19 |
[#. VSCode] Visual Code에서 파일 수정 시 Insufficient permissions. Select 'Retry as Sudo' to retry as superuser. 해결하기 (0) | 2021.11.16 |