• 자바스크립트 엔진이란? 렌더링 엔진이란? :: 마이구미
    Javascript 2017. 6. 22. 01:14
    반응형

    이번 글은 자바스크립트 엔진(Javascript Engine)과 렌더링 엔진(Rendering Engine)에 대해 다뤄본다.

    정의와 오해를 알아본다.


    자바스크립트 엔진이란 무엇인가?

    자바스크립트 코드를 실행하는 인터프리터 또는 프로그램이라고 볼 수 있다.

    전형적인 인터프리터의 역할 및 JIT 컴파일 활용 및 많은 기능을 하고, 주로 웹 브라우저를 위해 사용된다.


    대중적으로 알려진 자바스크립트의 엔진은 구글의 V8이라고 들어봤으리라 생각한다.

    Node.js에서 사용되는 엔진이기도 하다.

    엔진의 종류로는 아래와 같다. (이미 잘 알려진 브라우저를 기준)


    • Rhino - 모질라
    • SpiderMonkey - 파이어폭스
    • V8 - 구글, 오페라
    • JavascriptCore - 사파리
    • Chakra - 익스플로러, 마이크로소프트 엣지


    간혹 자바스크립트의 엔진은 V8이라고 생각하는 사람들이 있다.

    위와 같이 엔진은 많이 존재한다.

    구글의 엔진이자, Node.js에서도 V8를 택했기 때문에 오해가 생겼으리라 생각한다.


    렌더링 엔진이란 무엇인가?

    웹 렌더링 엔진(Web Rendering Engine) 또는 웹 브라우저 엔진(Web Browser Engine) 또는 웹 레이아웃 엔진(Web Layout Engine)이라고 불린다.

    렌더링, 브라우저, 레이아웃 단어 그대로 웹 페이지에 대한 컨텐츠 및 데이터를 위해 동작하는 엔진이다.

    렌더링 역할을 하는 엔진이 브라우저마다 다르기 때문에 같은 페이지가 다르게 보이는 경우가 있다.

    또한, CSS에서는 아래와 같은 코드를 볼 수 있다.


    -moz-border-radius: 2em; -ms-border-radius: 2em; -o-border-radius: 2em; -webkit-border-radius: 2em;


    렌더링 엔진의 종류로는 아래와 같다.

    • Gecko - 모질라, 파이어폭스
    • Blink - 구글, 오페라
    • Webkit - 사파리
    • Trident - 익스플로러
    • EdgeHTML - 마이크로소프트 엣지


    * Blink는 구글이 Webkit을 대체하기 위한 자체적으로 개발한 차세대 엔진이다.


    결론은, 자바스크립트 엔진과 렌더링 엔진은 서로 다르기 때문에 숙지하자.


    렌더링 엔진에 대한 비교

    https://www.kics.or.kr/storage/paper/event/2015_summer/publish/14C-26.pdf



    반응형

    댓글

Designed by Tistory.