마이크로소프트(MS)가 만든 프로그래밍 언어 '타입스크립트(Typescript)'가 구글의 사내 표준 언어로 채택됐다.
지난 10일 구글의 앵귤러 공식 블로그에 게재된 글 '구글의 공식 언어(Official languages at Google)'에 따르면 타입스크립트는 2017년 3월부로 구글의 클라이언트 개발 환경에 무제한(unrestricted) 사용을 승인받았다.
구글 개발자들이 타입스크립트와 타입스크립트 기반 앵귤러를 구글애널리틱스, 파이어베이스, 구글클라우드플랫폼 등 대규모 제품과 버그추적, 채용검토, 제품 승인 및 출시 도구와 같은 핵심적인 내부 툴에 사용할 수 있다는 설명이다.
타입스크립트는 자바스크립트의 기능을 포함하는 확장판 언어다. MS가 지난 2012년 타입스크립트 1.0 버전을 선보였다. C#의 아버지라는 별명을 가진 덴마크 출신 소프트웨어 엔지니어 아네르스 하일스베르가 창시한 아파치2.0 라이선스 기반 오픈소스 프로젝트였다.
타입스크립트가 오픈소스 프로젝트이긴 하지만 구글이 IT 세계에서 여러모로 경쟁 관계인 MS에서 내놓은 프로그래밍 언어를 내부 표준으로 채택했다는 소식은 흥미롭게 비친다.
이 소식은 이달초 미국 솔트레이크시티에서 진행된 'ng-conf 2017' 컨퍼런스 3일차 기조연설을 맡은 구글 엔지니어링 담당 디렉터 브래드 그린의 발표를 통해 처음 나왔다. 기조연설은 유튜브 영상으로 공개됐지만 현재는 비공개로 전환된 상태다.
당시 그린 디렉터의 설명에 따르면 기존 구글의 사내 표준 언어(Canonical Languages)는 C와 C++, 자바, 자바스크립트, 파이썬, 고(Go) 등이다. 구글은 이가운데 자바스크립트를 기반으로 웹앱 프레임워크 '앵귤러(Angular)'를 만들어 왔다.
구글은 2015년 3월, 앵귤러 차기 버전 개발을 위해 MS의 타입스크립트를 쓰기로 했다. 이전까지 앵귤러 프레임워크는 대부분 일반 자바스크립트 언어로 만들어졌다. 확장된 기능이 필요시 구글이 2014년 10월 발표한 '앳스크립트(Atscript)'라는 언어가 쓰였다.
구글의 타입스크립트 채택은 자체 개발한 앳스크립트의 은퇴를 의미했지만, 막바로 타입스크립트를 구글 표준 언어로 쓴다는 의미는 아니었다. 당시 구글 입장은 앵귤러가 외부 오픈소스 프로젝트고 그들이 참여하는 처지니까, MS와 협력해 타입스크립트를 쓴다는 뜻이었다.
다만 구글 측은 이후 타입스크립트의 장점을 인식케 됐다. 타입스크립트는 구글 내부 클로저(Closure) 컴파일러를 이용한 자바스크립트보다 효율이 좋았고 통합개발환경(IDE) 지원도 있었다. 그래서 구글 엔지니어들은 사내 표준 언어를 추가하기 위한 승인 절차를 밟게 됐다.
일본 IT블로그 퍼블릭키에 따르면 그린 디렉터는 "추가 언어를 신청하면 체크리스트를 거쳐 다음 회의에서 승인되는데, 과거엔 승인 된 언어가 없었다"며 "회의와 체크리스트 사이를 2년간 오가다, 타입스크립트가 처음으로 사내 프론트엔드 표준 언어로 승인됐다"고 말했다.
영미권에선 이 소식을 다루는 공식 뉴스를 찾기 어려웠지만 레딧과 같은 커뮤니티 사이트에서 반향이 컸다. 더불어 구글이 이전부터 자바스크립트 대체 언어로 밀었던 '다트(Dart)'의 위상이 확연히 추락한 것 아니냐는 지적이 나왔다.
구글 측은 이를 의식한 듯 앵귤러 및 다트 공식 블로그에 '구글의 공식 언어'라는 글을 동시 게재해 다트의 지위에 관해 첨언했다. ng-conf 2017 현장에서 그린 디렉터가 타입스크립트만을 구글 공식 언어로 표현한 것처럼 보였지만 다트도 같은 부류(category)란 설명이었다.
관련기사
- MS, 타입스크립트2.0 정식판 공개2017.04.13
- HTML5 인디게임툴 '슈퍼파워즈' 오픈소스로 공개2017.04.13
- 구글, 차세대 웹앱 기술에 MS 웹개발 언어 수용2017.04.13
- 구글, 자바스크립트와 공존에 베팅2017.04.13
구글 측은 "다트와 타입스크립트 둘 다 클라이언트측 개발에 쓸 수 있게 승인됐다"며 "다만 자바스크립트/클로저와 자바처럼 확실히 (사용이) 정착된 언어와 같은 부류는 아니다"고 밝혔다. 구글 자산 관점에서 이들 언어의 코드라인 수와 툴이 더 많다고 덧붙였다.
구글은 이어 "다트는 구글에서 이제까지 4년 넘게 클라이언트 개발에 제한 없이 사용돼 왔다"며 "애드워즈, 애드센스, 쇼핑같은 대규모 제품 그리고 구글CRM같은 핵심적인 내부 툴에 다트와 앵귤러다트(AngularDart)가 쓰였다"고 강조했다.