마이크로소프트(MS)가 자바스크립트를 닮은 프로그래밍언어 '타입스크립트'를 소개했다.
주요 IT 외신들은 1일(현지시각) MS가 개발자용 시험판으로 타입스크립트를 선보였고 이는 자바스크립트로 변환돼 어떤 브라우저에든 돌아간다고 보도했다.
MS는 타입스크립트 기술을 회사 오픈소스 협업 커뮤니티인 코드플렉스에 아파치2.0 라이선스 기반으로 공개했다. 보도에 따르면 타입스크립트는 자바스크립트와 아주 비슷한 문법을 쓰지만 '선택적 정적 타이핑(optional static typing)', 클래스 선언, 모듈 지원, 비주얼스튜디오 플러그인 같은 기능을 더한 모습이다.
MS 프로그래밍 언어 '구루'인 엔지니어 앤더스 헤일스버그는 타입스크립트가 이처럼 기존 자바스크립트에 없던 추가기능을 지원함으로써 개발자들이 거대한 애플리케이션을 더 쉽게 만들 수 있도록 해줬다고 설명한다. 구루는 원래 종교적 의미에서 '영적 스승'을 가리키는 용어지만 IT업계에선 존경할만한 이력을 쌓아온 엔지니어들에게 '거장'이란 뉘앙스로 붙이는 칭호다.
사실 업계는 이와 똑같은 의미를 품고 타입스크립트보다 먼저 소개된 웹애플리케이션 개발 언어를 접했다. 구글이 지난해 10월 내놓은 '다트' 언어다. 다트와 타입스크립트 사이에 다른 점이 있다면 자바스크립트와의 '거리감'이다.
구글은 다트와 자바스크립트의 '공존'을 말하지만, 자사 기술이 더 효율적이라 주장하며 개발자들의 관심을 끌어모으려고 노력중이다. 현존하는 자바스크립트의 역할 일부를 떼어 가져오겠다는 계획이다.
구글 다트의 기술적 이점을 체감하려면 그 코드를 자바스크립트로 바꿔 실행하는 방식보다 전용 가상머신(VM)에서 돌리는 게 낫다. 그래서 첫선을 보일 당시 회사가 직접 개발하는 크롬 브라우저에 향후 다트VM을 통합할 가능성을 내비쳤다. 당연히 다른 브라우저에서 이를 지원하리라 장담할 수 없다.
반면 타입스크립트는 ECMA위원회에서 개발중인 차세대 자바스크립트의 규격에 상당부분 기반한 것이라고 헤일스버그는 말했다. 구글처럼 해당 언어 코드를 실행하기 위한 브라우저나 구동기술을 확산시키기보다는 향후 표준에 흡수될 가능성이 높은 방식으로 만들어졌다는 얘기다.
자바스크립트는 브라우저 시장에서 인터넷익스플로러(IE)와 경쟁했던 넷스케이프에 돌리는 간단한 스크립트 언어로 출발했다. 달리 말해 지금처럼 복잡한 대규모 웹애플리케이션을 구축하기위한 환경을 고려해 설계된 적이 없단 얘기다.
그런데 자바스크립트의 역할은 점차 온갖 웹 환경으로 확산되고 있다. 향후 기술업계에서 HTML5는 클라이언트쪽 개발 표준언어로 자리잡을 예정이고, 노드JS 프레임워크 기반으로 서버사이드 자바스크립트 애플리케이션을 만드는 방식도 인기를 끄는 추세다.
타입스크립트는 이런 자바스크립트를 흡수할 수 있는 기술로 묘사된다. 이미 널리 사용중인 자바스크립트 프레임워크와 라이브러리를 타입스크립트 코드 안에 복사해 붙여넣기만 해도 돌아갈 것이란 얘기다. 이는 구글 다트와 비교시 구동 성능이나 개발 편의성 이전에 개발자사이에서 도입되기에 압도적인 장점으로 작용할 전망이다.
관련기사
- 구글, 웹언어 다트-자바스크립트 '공생' 유도2012.10.02
- 윈도애저, '서버 자바스크립트' 확산 채찍질2012.10.02
- SW 개발자들의 대세는?...'자바스크립트'2012.10.02
- "자바스크립트 전성시대 온다"2012.10.02
한편 MS 엔지니어로 소개된 헤일스버그는 '터보 파스칼'을 만들었고 '델파이' 언어 치프아키텍트였으며 현재 C# 언어와 통합언어쿼리(LINQ) 리드아키텍트를 맡은 인물이다. 그는 동료 스티브 루코, 루크 호반과 함께 타입스크립트를 개발했다.
스티브 루코는 MS IE 자바스크립트 렌더링 엔진 '차크라' 치프아키텍트다. 그는 MS가 IE 브라우저에서 타입스크립트를 우선적으로 지원하는 작업을 추진할것이냐는 질문에 그렇지 않을 거라 답했다. 대다수 개발자들은 실질적으로 타입스크립트 코드를 온라인에서만 쳐볼 수 있을 테고, 자바스크립트의 약점을 극복하는 게 MS입장에서 최대 관심사는 아니기 때문이란다. 다시말해 IE가 다른 브라우저보다 더 빨리 타입스크립트를 구동할 수 있는 방식은 지금도 앞으로도 없다는 얘기다.