자바스크립트

[번역] 카툰으로 소개하는 웹어셈블리

이 글은 모질라 Hacks의 웹어셈블리 시리즈 중 첫 번째 글인 A cartoon intro to WebAssembly의 번역글이다. 전 시리즈에 걸쳐 웹어셈블리 뿐만 아니라 JIT나 어셈블리 등에 대해서도 체계적으로 잘 설명하고 있고, 카툰까지 곁들여서 이해하기도 쉽다.

총 6부로 되어 있으며, 원작자의 허가를 얻어 전체 시리즈를 모두 번역했으니 처음부터 차례대로 모두 읽어보길 권한다.

  1. 카툰으로 소개하는 웹어셈블리 (현재글)
  2. 저스트-인-타임(JIT) 컴파일러 집중 코스
  3. 어셈블리 집중 코스
  4. 웹어셈블리 모듈의 생성과 동작
  5. 웹어셈블리는 왜 빠를까?
  6. 웹어셈블리의 현재 위치와 미래

웹어셈블리는 빠르다. 아마 당신도 들어봤을 것이다. 하지만, 웹어셈블리가 왜 빠른걸까?

이 연재물에서 나는 왜 어셈블리가 빠른지에 대해 설명해보려고 한다.

잠깐, 그래서 웹어셈블리가 뭔데?

웹어셈블리는 자바스크립트가 아닌 다른 프로그래밍 언어로 작성된 코드를 브라우저에서 실행시키기 위한 방법이다. 그래서 사람들이 웹어셈블리가 빠르다고 이야기하는 건, 자바스크립트와 비교했을 때 빠르다는 말이다.

지금 나는 자바스크립트나 웹어셈블리 둘 중의 하나만 선택해야 한다고 말하고 싶은 것이 아니다. 사실, 우리는 개발자들이 동일한 어플리케이션에서 웹어셈블리와 자바스크립트를 모두 사용하기를 기대한다.

하지만 두 언어를 비교해서 웹어셈블리가 가진 잠재적 효과를 이해할 수 있다면 유용할 것이다.

성능에 대한 약간의 역사

자바스크립트는 1995년에 만들어졌다. 자바스크립트는 빠르게 동작하도록 디자인되지 않았으며, 처음 10년동안은 실제로 빠르지 않았다.

그 이후에 브라우저들의 경쟁이 시작되었다.

2008년에 사람들이 성능 전쟁이라고 말하는 기간이 시작되었다. 많은 브라우저들이 저스트-인-타임(Just-in-time) 컴파일러, 즉 JIT를 장착했다. 자바스크립트가 실행되는 동안, JIT는 패턴들을 살펴볼 수 있었고, 이들 패턴을 기반으로 코드를 더 빨라지도록 만들었다.

JIT가 등장하면서 자바스크립트의 성능에는 변곡점이 생겼다. 자바스크립트의 실행 속도가 10배는 빨라진 것이다.

01-01-perf_graph05-500x409.png

이런 성능 향상에 힘입어, 자바스크립트는 Node.js를 이용한 서버사이드 프로그래밍 등과 같이 이전까지는 누구도 상상할 수 없었던 곳에서 사용되기 시작했다. 성능의 향상은 자바스크립트를 전혀 새로운 영역에서도 사용할 수 있도록 만들어 주었다.

지금 우리는 아마도 또다른 변곡점에 있는지도 모른다. 웹어셈블리로 인해.

01-02-perf_graph10-500x412.png

자, 그럼 좀더 자세한 내용으로 들어가서 웹어셈블리가 왜 빠른지를 이해해보도록 하자.

배경지식:

웹어셈블리, 현재:

웹어셈블리, 미래:

 

Lin Clark 에 대해

Lin은 모질라 개발자 관계 팀의 엔지니어이다. 그녀는 자바스크립트, 웹어셈블리, Rust, Servo 등을 끄적거리며, 코드 카툰을 그린다.

코드카툰 : http://code-cartoons.com/
트위터 : @linclark

2 thoughts on “[번역] 카툰으로 소개하는 웹어셈블리

  1. 번역해주신 글들을 통해서 웹 어셈블리뿐만 아니라 전체적인 흐름에 대해서까지 이해해 큰 도움이 되었습니다.
    감사합니다!!

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s