적과의 파격 동침…MS 명가재건의 꿈

리눅스·맥iOS·안드로이드 지원 강화

일반입력 :2014/11/18 07:00    수정: 2014/11/18 14:48

모바일 시대를 맞아 코너에 몰렸던 마이크로소프트(MS)가 닷넷을 크로스플랫폼 지원 전략 전면에 내세우며 반격에 나섰다. MS 전 제품군이 모바일 퍼스트, 클라우드 퍼스트란 기치아래 헤쳐모이는 양상이다.

MS는 올초 사티아 나델라 신임 CEO의 취임 이후 ‘모바일 퍼스트, 클라우드 퍼스트’란 테마를 중심으로 전과 전혀 다른 회사로 변모하고 있다. 개발자 진영을 향해서도 그동안 추상적으로 던져온 크로스플랫폼이란 주제를 구체화했다. 닷넷 프레임워크의 오픈소스화, 개발툴 비주얼스튜디오 무료화, iOS 및 안드로이드 앱 개발 지원 등이다.

분위기는 갈수록 심상치 않다. 그동안 MS는 개발자들에게 소스코드를 한번 짜는 것만으로 윈도PC, 윈도 태블릿, 윈도폰, X박스 등 모든 윈도 플랫폼에 활용할 수 있게 한다는 ‘유니버셜 윈도 앱’을 강조해왔다. 이건 어디까지나 윈도란 테두리 안에서만 의미있는 크로스 플랫폼 메시지였다.이런 가운데 MS는 지난 12일 뉴욕에서 개발자 행사인 ‘커넥트(Connect();)’를 열고 윈도를 벗어난 크로스플랫폼 전략을 구체화했다. 행사를 동영상 생중계로 지켜본 한국MS 직원이 파격적이라고 표현할 만큼, 이번 커넥트 행사에선 과거의 MS와는 다른 메시지가 쏟아졌다.

김영욱 한국MS 부장은 “이제껏 MS 행사에서 애플 마크가 이처럼 많이 나온 적이 없었다”며 “격세지감 느낄 만큼 전에는 상상도 못할 상황으로 모바일 퍼스트, 클라우드 퍼스트란 테두리 안에서 모든 게 다 허용되는 분위기다”고 말했다.이번 커넥트 행사에선 우선 닷넷 서버 스택 전체가 오픈소스로 풀렸다. 오픈소스로 제공되는 닷넷 스택은 ASP닷넷, 닷넷컴파일러, 닷넷 코어 런타임, 프레임워크, 라이브러리 등을 모두 포함하기 때문에 맥 OS X, 리눅스 플랫폼에서 모두 닷넷을 활용할 수 있게 됐다. 닷넷 C# 구동에 필요한 공용언어런타임(CLR)이 리눅스와 맥용으로 제공된다. 이로써 닷넷은 웬만한 건 다 오픈소스로 풀렸다.

김영욱 한국MS 부장은 “닷넷에서 ASP나 다른 뭔가로 개발했다면 수정없이 바로 리눅스나 맥으로 옮겨서 운영할 수 있게 됐다”며 “리눅스쪽 서비스를 윈도 개발툴로 원격 디버깅하는 것도 가능하다”고 설명했다.

그는 “이전에도 리눅스 위 아파치웹서버 상에서 ASP닷넷을 돌리는 경우가 있었는데, MS가 공식적으로 리눅스와 맥을 지원하고 나서는 건 처음”이라며 “이제 C#으로 윈도뿐 아니라, 리눅스와 맥까지 동시에 개발할 수 있다” 고 덧붙였다.비주얼스튜디오 커뮤니티 에디션 무료화도 주목을 끈 뉴스였다. 이제 오픈소스 기여자나 학생 개발자, 개인 개발자, 소규모 개발회사의 경우 비주얼스튜디오 커뮤니티 2013을 무료로 사용할 수 있다. 제공되는 기능은 비주얼스튜디오2013과 동일하며, 업데이트도 동일하게 제공받는다.

김영욱 부장은 “오픈소스 기여자나 학생, 연구자는 무조건 무료이며, 개발회사의 경우 250대 이하 PC를 쓰면서, 100만달러(10억원) 미만 매출인 경우 5개까지 라이선스를 준다”고 설명했다.

커넥트 행사에선 비주얼스튜디오2013 네번째 업데이트와 비주얼스튜디오2015 프리뷰 버전도 공개됐다. 여기에 크로스플랫폼 개발의 정점을 찍는 내용이 포함된다. 비주얼스튜디오로 윈도, iOS, 안드로이드 앱을 개발하고, 원격 디버깅도 할 수 있게 된 것이다.

유니버셜 윈도 앱 개발 방법도 보다 명확해졌다. 개발자는 데스크톱, 스마트폰, 태블릿용 앱 개발시 일정 수준 이상의 코드를 재활용할 수 있다. 폼팩터에 상관없이 공통적으로 사용되는 코드 라이브러리를 재활용하게 된다.

올해 4월 유니버셜 윈도 앱이 처음 소개될 당시만 해도 윈도 데스크톱 앱에서 윈도폰이나 태블릿 앱으로 만들려면 각각의 프로젝트를 생성한 뒤 공통의 코드를 복사, 붙여넣기 하는 식이었다. 이제 공통으로 사용하는 라이브러리는 공유(Shared) 프로젝트로 만들어, 윈도, 폰, 태블릿 등의 앱 프로젝트에 연결해주면 된다. 앱은 공유 프로젝트를 참조하고, 디바이스에 맞는 UI만 별도로 최적화 해주면 된다. 윈도 스토어 배포 후 사용자 다운로드는 각 디바이스 환경에 맞게 알아서 이뤄진다.

iOS, 안드로이드 앱 개발은 자마린(Xamarin) 플러그인을 비주얼 스튜디오에 설치하면 유니버셜 윈도 앱 개발과 동일한 방식으로 할 수 있다.

MS는 비주얼스튜디오에 안드로이드 앱 개발을 위한 전용 에뮬레이터도 추가했다. 윈도 하이퍼V 가상머신 상에 별도로 작동한다. C#코드로 앱을 만들면 자마린을 통해 Ios와 안드로이드 코드로 변환하고, 앱의 작동을 에뮬레이터로 검증할 수 있다. 김 부장은 “자마린과 비주얼스튜디오를 같이 쓰면, 동일한 툴과 동일한 언어, 동일한 프레임워크로 아이폰과 안드로이드 앱을 개발하고, 유지관리할 수 있다”며 “아이폰 앱에 문제가 생겼을 때 원래 개발자만큼은 못 돼도 윈도 개발자가 긴급한 조치를 취할 수 있다”고 설명했다. 또 “iOS 쪽 개발에서 쓰는 스토리보드를 비주얼스튜디오 안에서 다 볼 수 있다”며 “개발자 인력풀이 적은 조직에서 용병술을 최대한 활용할 수 있는 포인트”라고 덧붙였다. 웹 언어로 앱을 개발하게 해주는 ‘아파치 코르도바(Cordova)’도 비주얼스튜디오에서 지원하게 됐다. 비주얼스튜디오를 통해 각 휴대폰 플랫폼 별로 앱을 동시에 개발할 수 있다.

코르도바는 자바스크립트를 사용하는데, 객체지향언어에 익숙한 개발자에겐 웹앱 개발을 낯설어 할 수 있다. MS판 자바스크립트로 통하는 타입스크립트는 C#이나 자바 프로그래머를 위해 만들어진 웹앱 프로그래밍 언어다. 델파이, C# 창시자로 유명한 덴마크 출신 소프트웨어(SW) 엔지니어 아네르스 하일스베르(Anders Hejlsberg)가 속한 MS 개발팀이 내놨다.

문법은 자바스크립트와 비슷하고 기존 자바스크립트 코드를 그대로 포함시킬 수 있다. 실시간 번역 콘셉트를 도입해, 자바나 C# 언어로 구문을 만들면, 자동으로 자바스크립트 언어를 생성해준다.

김 부장은 “자바스크립트가 잘못 들어가면 수렁과 같아서, 자칫 소스가 어렵고 복잡해진다”며 “타입스크립트는 자바스크립트와 100% 호환되면서 현대적 언어의 특성도 갖고 있다”고 말했다.

그는 이어 “이번에 비주얼스튜디오용 코르도바에서 타입스크립트를 지원하게 됐다”며 “스타트업이나 맨파워 약한 조직에서 타입스크립트로 노드JS 환경의 개발이 가능하다”고 덧붙였다. 데브옵스에 대한 대응책도 소개됐다. 마이크로소프트 애저 클라우드에서 제공되는 ‘비주얼스튜디오 온라인’이 데브옵스 특성을 더 내포하게 됐다.

개발자는 비주얼스튜디오 온라인을 통해 앱 개발서버용 가상머신을 셀프서비스로 할당받을 수 있다. 테스트 조직은 개발된 앱을 가져다 테스트하고 분석할 수 있다. 운영자는 대시보드를 통해 모니터하고 보고서를 보면서, 병목지점을 파악해 바로 수정할 수 있다.

닷넷 프레임워크 자체적으로도 성격 변화가 눈에 띈다. 그동안 버전명에 1.0, 2.0 등의 순번을 붙였던 것에서 ‘닷넷 2015 버전’으로 바뀌었다. 김 부장은 “닷넷도 이제 수시 업데이트 하려는 것인가 하는 생각이 든다”고 설명했다.

관련기사

김 부장은 “이제껏 준비해온 톱니바퀴들이 다 맞아 떨어지는 느낌”이라고 이번 행사 내용을 정리했다.

아이폰과 안드로이드의 득세에 거인의 몰락이란 비아냥을 들었던 MS다. 윈도란 OS와 오피스란 애플리케이션의 라이선스 매출에 얽매여 있던 MS가 라이선스의 굴레를 거의 다 벗어던졌다. 애저란 큰 그릇으로 사용자와 개발자를 끌어들이는 플랫폼 회사가 되겠다는 MS의 전위대는 닷넷이다. 다 풀어버리고 MS가 모바일이란 전장의 코너에서 진격을 외치고 있다.