왜 더 많은 웹 개발 언어가 필요한가?

일반입력 :2014/06/15 08:50    수정: 2014/06/15 13:24

황치규 기자

개발자들이 선택할 수 있는 프로그래밍 언어 수가 지금보다 많다면 웹 애플리케이션이 네이티브 앱을 기능과 사용성에서 앞설 수 있을까?

구글 소프트웨어 엔지니어인 길라드 브라차는 그렇게 확신하는 모양이다.

IDG뉴스 보도에 따르면 그는 최근 미국 뉴욕에서 열린 큐콘 개발자 컨퍼런스에서 웹앱이 네이티브 앱과 제대로 경쟁하려면 실용적인 언어에서 개발자들이 더 많은 선택권을 가져야 한다고 목소리를 높였다. 그렇지 않으면 특정 기업들이 소유한 앱스토어가 계속 시장을 지배할 것이란 것이었다.

길라드 브라차는 자바 프로그래밍 언어 공동 창시자 중 한명이자 요즘 주목받고있는 뉴스피크(Newspeak)를 만든 인물이기도 하다. 구글에 합류하기전에는 자바를 만든 썬마이크로시스템즈에도 있었고 개발자 생태계에서 많이 읽히는 책인 이펙티브 자바(Effective Java)도 집필했다.

웹앱의 장점은 여러가지다. 기기에 설치할 필요가 없고 웹을 지원하는 플랫폼이라면 어디서나 쓸 수 있다. 그러나 인터넷에 연결되지 않으면 무용지물일때가 많다. 오프라인에서 웹앱은 사용성에 치명적인 약점이 있다.

이에 브라차는 큐콘컨퍼런스에서 웹앱 개발에 쓰이는 프로그래밍 언어는 오프라인 환경에서도 쓸 수 있게 하는 기능을 제공해야 한다고 강조했다. 빠른 개선을 위해서는 웹 프로그래밍에 가장 많이 쓰이는 자바 스크립트에만 의존하는 것은 한계가 있다는 점도 부각했다. 자바스크립트는 오프라인 지원 등 많은 부분에서 개선할게 있다는 이유에서였다. 단점이 개선되려면 몇년의 시간이 걸릴 수도 있다.

자바스크립트외에 개발자들이 쓸만한 웹프로그래밍 언어는 많지 않다. 엔지니어링 측면에서 수준이 떨어지고, 핵심 기능도 부족한 것들이 많다는 지적이다. 브라차가 좀더 다양한 웹 프로그래밍 언어가 필요하다고 강조하는 이유다.

그에 따르면 구글이 다트(Dart) 프로그래밍 언어를 내놓은 것도 이와 무관치 않다. 구글은 2011년 자바스크립트의 한계를 극복하겠다며 다트라는 새로운 웹 프로그래밍 언어를 공개했다.

구글은 다트가 자바스크립트의 대체재가 아니라고 했지만 결과는 구글 뜻대로 되지 않았다. 다트는 세상에 나오자마자 자바스크립트와 불편한 관계가 됐다. 다트의 등장으로 웹 프로그래밍의 파편화를 우려하는 목소리도 커졌다. 구글외에 다른 브라우저 업체들도 여전히 다트를 외면하는 모양새다. 냉랭한 분위기가 당장에 바뀔 거 같지도 않다.

그럼에도 구글은 다트에 대한 업그레이드에 속도를 내는 모습. 2011년 10월 시험판을 공개한 후 지난해말에는 1.0 버전을 공식 발표했다. 올 1월에는 1.1 버전도 내놨다.

구글은 다트 1.1을 공개하며 블로그를 통해 자바스크립트보다 최대 25% 더 빠르다고 주장했다. 근거로는 두 언어로 같은 일을 하는 코드를 짰을 때 그 처리 속도를 점수화한 벤치마크 결과 값을 내세웠다. 구글은 다트 기반 코드와 원본 자바스크립트를 '리처드벤치마크'로 비교한 결과 성능이 25% 앞섰고 '플루이드모션' 결과로 본 성능은 (다트 1.0 정식판이 공개된) 지난해 11월 이후 2배로 향상됐다고 밝혔다.

전반적인 분위기는 자바스크립트와 다트는 대립관계로 맺어지고 있지만, 길라드 브라차는 구글은 다트를 자바 스크립트를 대체하기 위해 만든게 아니라 옵션을 주기위해 내놨음을 분명히 했다.

브라차는 큐콘컨퍼런스에서 다트만 강조한 건 아니다. 실험적이지만 잠재력이 큰 프로그래밍 언어에 대한 내용도 발표해 눈길을 끌었다.

그중 하나가 함수형 프로그래밍 언어인 Elm이었다. Elm은 그래픽 사용자 인터페이스(graphical user interfaces: GUI)를 구축하는데 유용한 기술이다. 그는 직접 Elm로 작성한 코드 몇줄 만으로 사용자가 브라우저창에서 마우스만 써서 원을 그릴 수 있게 하는 것을 시연하기도 했다.

라이브리도(lively)가 그가 주목한 프로그래밍 언어였다. 라이브리는 Elm보다도 반응성이 좋다고 한다. 이외에도 브라차는 레저, 뉴스피크 같은 프로그래밍 언어도 소개했다. 이중 뉴스피크는 브라차가 직접 만든 것이다.

관련기사

브라차가 속한 구글의 행보에 대해 웹 프로그래밍 언어의 파편화를 우려하는 시각도 만만치 않다. 자바스크립트처럼 브라우저 업체들의 광범위한 지원을 받지 못할 경우 특정 기업 기술에 대한 의존성이 커지는 결과로 이어질 수 있다는 것이다.

국내의 경우도 자바스크립트는 판을 주도하는 웹 프로그래밍 언어다. 프론트엔드 앱만 개발할 수 있는 자바스크립트의 한계를 극복하고, 서버단 앱 개발도 가능케 해주는 노드JS라는 프레임워크에 대한 관심도 커지는 양상이다. 자바스크립트 언어도 계속해서 진화하고 있다. 이런 상황에서 경쟁은 좋은 것이라며 좀더 다양한 웹 프로그래밍 생태계를 주장한 브라차의 주장이 어떻게 받아들여질지 주목된다.