구글 "다트가 자바스크립트보다 빨라"

일반입력 :2014/01/20 14:18    수정: 2014/01/20 14:47

구글이 자체 웹프로그래밍 언어 '다트' 새 버전을 공개하며 속도에서 자바스크립트보다 빠르다고 주장했다. 이론상 최대 속도에 대한 얘기지만, 구글은 일반적인 사용환경에서의 다트 성능 역시 자바스크립트에 준하는 수준으로 끌어올렸다고 강조했다.

다트는 구글이 오픈소스로 만드는 자바스크립트 대안 언어로 지난 2011년 10월 첫 소개 후 2개월 전 1.0 정식판 공개에 이어 이번에 1.1 버전으로 등장했다.

구글은 지난 16일 다트 공식블로그를 통해 다트1.1이 자바스크립트보다 최대 25% 더 빠르다고 주장했다. 근거는 두 언어로 같은 일을 하는 코드를 짰을 때 그 처리 속도를 점수화한 벤치마크 결과 값이다.

구글은 다트 기반 코드와 원본 자바스크립트를 '리처드벤치마크'로 비교한 결과 성능이 25% 앞섰고 '플루이드모션' 결과로 본 성능은 (다트 1.0 정식판이 공개된) 지난해 11월 이후 2배로 향상됐다고 밝혔다.

새롭거나 놀라운 성과는 아니다. 영국 IT미디어 더레지스터는 사실 기존 다트도 네이티브 가상머신(VM) 환경에서 돌아갈 땐 빨랐다고 지적했다.

그에 따르면 VM에서 돌리는 다트 벤치마크는 구글이 V8 자바스크립트 엔진으로 돌리는 자바스크립트 속도를 꾸준히 웃돌았다. 다만 현재 주요 브라우저가 다트VM을 내장하지 않았기 때문에 이런 식으로 클라이언트환경의 다트 애플리케이션을 돌리는 사용자가 거의 없다는 게 문제다.

다트 웹애플리케이션은 다트 소프트웨어개발도구(SDK)에 탑재된 코드 변환 툴 '다트2JS'로 자바스크립트 형태로 바뀌어야 실용성을 얻는다. 이처럼 다트로 짠 프로그램을 자바스크립트로 바꿔 돌리면 속도가 크게 저하된다. 그냥 자바스크립트로 짠 코드를 돌리는 것보다 느리다.

이번에 구글이 다트1.1 버전으로 내세운 새로운 사실은, 느려질 수밖에 없는 다트2JS 프로그램과 원래 자바스크립트 코드간의 격차를 좁혔다는 점이다. 해당 블로그 포스팅을 작성한 구글 개발자 세스 래드는 다트2JS가 더 뛰어나진 않지만 통상적인 자바스크립트에 가까운 성능을 낸다고 썼다.

이를 전한 IT미디어 더넥스트웹은 다트의 궁극적인 목표는 자바스크립트를 대체하는 것이지만 이는 하루아침에 이뤄지지 않을만한 거창한 목표라고 평했다.

구글은 성능면에서 자사의 웹애플리케이션 개발 언어가 자바스크립트의 역할을 충분히 대체 가능한 수준이라 강조하고 싶어하는 분위기다. 구글은 다트1.1을 소개한 포스팅을 통해 다트 프로그래밍 언어가 브라우저에서 돌아가는 웹애플리케이션에 초점을 맞춰 왔지만 서버 쪽 솔루션에 대한 관심도 증가 추세라고 주장했다.

즉 다트를 밀고 있는 구글의 야심은 클라이언트 환경에서 구동되는 웹애플리케이션 말고도 서버에서 돌아가는 애플리케이션이나 서비스 개발 환경까지 향하고 있다.

사실 브라우저에서 돌리는 프로그래밍 언어를 서버측에서 돌아가는 애플리케이션 개발에 적용한 사례도 자바스크립트가 먼저다. 자바스크립트로 서버 애플리케이션을 개발할 수 있게 해주는 프레임워크 '노드JS(node.js)'가 일반 웹서버, 서버 모니터링, 미디어 스트리밍 등 일부 현업에서 실용성을 인정받는 추세다.

구글은 자바스크립트가 이런 서버측 애플리케이션과 서비스 개발을 위한 프로그래밍 언어의 위상을 확대해가는 흐름에도 맞서려는 모양새다.

관련기사

구글은 다트1.1 버전이 대용량 파일, 파일복사, 프로세스 신호 핸들러, 터미널 정보 지원을 포함한 서버측 다트 구동 환경에 많은 개선점을 제공한다고 밝혔다. 이어 개발자들이 미디어 스트리밍 애플리케이션을 더 효율적으로 개발할 수 있는 UDP 지원을 추가했다고 덧붙였다.

한편 구글은 다트1.1 버전을 내놓기 직전에 웹기반 프로그래밍 언어 학습 사이트 '런어블(runnable)'에서 다트 코딩 연습과 모의 실행을 해볼 수 있도록 지원하기 시작했다. 구글의 다트 개발 엔지니어들이 지난 16일 런어블 웹사이트에 추가된 다트 학습 페이지에 코드 예제를 올리고 개발자들의 관심을 유도하고 있다.