개발도구 통합을 향한 MS의 야심, 자마린
[IT동아 강일용 기자] 마이크로소프트(MS)가 '자마린(Xamarin)'을 앞세워 개발도구의 통합을 시도하고 있다. MS는 지난 2월 24일 통합 개발도구 자마린을 인수한 후, 개발자회의 '빌드2016'에서 자마린을 비주얼 스튜디오(MS의 개발도구) 사용자에게 무료로 공개했다. 이른바 '자마린 포 비주얼 스튜디오(Xamarin for Visual Studio)'다. 자마린은 오픈소스 닷넷코어로 구성된 통합 개발도구로, 윈도우, 맥OS, 리눅스용 앱 뿐만 아니라 안드로이드와 iOS까지 현존하는 거의 대부분의 플랫폼용 앱을 개발할 수 있는 개발도구다.
자마린은 원래 한 개발자 당 1년에 999달러(1플랫폼 기준)를 내야 이용할 수 있는 상용 개발도구였다. 대신 개발자가 비주얼 스튜디오, 이클립스, X코드, 안드로이드 스튜디오 등 여러 개발도구를 이용하지 않아도 손쉽게 여러 플랫폼용 앱을 개발할 수 있는 장점이 있어 선호하는 개발자가 제법 많았다.
자마린은 원래 닷넷의 오픈소스 버전인 '모노'를 활용해 만들어진 개발도구다. 모노 기반으로 만들어진 게임 엔진 '유니티'처럼, 자마린도 앱을 한층 쉽고 빠르게 그리고 멀티 플랫폼용으로 개발할 수 있게 도와준다.
MS는 자마린을 비주얼 스튜디오에 통합시키기에 앞서 비주얼 스튜디오에서 닷넷, NodeJS, R, My SQL, 파이썬 등 다양한 프로그래밍 언어로 개발을 진행할 수 있도록 지원을 강화했다. 개발자는 자신이 자주 이용하는 프로그래밍 언어를 선택해 앱과 서비스를 개발할 수 있게 되었다. 또, 윈도우 외에 다른 플랫폼에서 비주얼 스튜디오를 이용할 수 있도록 비주얼 스튜디오의 핵심 기능을 추출한 '비주얼 스튜디오 코드'를 맥OS, 리눅스 등 다른 플랫폼용으로 제공하기 시작했다.
자마린은 개발자에게 프로그래밍 언어를 선택할 수 있는 자유 뿐만 아니라 플랫폼을 선택할 수 있는 자유를 제공한다. 윈도우, 맥OS, 리눅스, 안드로이드, iOS 뿐만 아니라 워치OS, 타이젠 등 현존하는 거의 대부분의 플랫폼을 지원한다. 한 플랫폼용 앱을 개발하면, 자마린을 활용해 손쉽게 다른 플랫폼용으로 전환할 수 있다.
자마린을 활용하면 윈도우, 맥OS, 안드로이드, iOS용 앱을 국내 개발자들에게 친숙한 비주얼 스튜디오와 C#을 활용해 개발할 수 있게 된다. 다만 개발자가 각각의 플랫폼에 대한 이해도가 제법 깊어야 자마린으로 수월하게 멀티 플랫폼 개발을 진행 할 수 있다는 점을 주의할 것. 또, iOS 앱을 개발할 경우에는 반드시 맥이 필요하다. 컴파일러가 없기 때문이다.
멀티 플랫폼 개발을 더욱 수월하게 진행할 수 있도록 각각의 플랫폼에 맞는 사용자 환경을 자동으로 생성해주는 자마린 폼즈 기능도 추가됐다. 기존에 자마린을 활용해 개발을 진행할 경우 앱과 서비스의 백엔드(근간)는 통합 개발할 수 있었지만, 사용자 환경은 각각의 플랫폼에 맞게 직접 개발해주어야 했다. 자마린폼즈는 앱과 서비스의 백엔드를 통합 개발한 후 각각의 플랫폼에 맞는 사용자 환경까지 제공해준다. 하나의 코드로 컴파일만 여러 개 진행한 후 개별 플랫폼용 앱을 개발하면 된다.
특정 플랫폼이 최신 버전으로 업데이트되면서 패키징 된 앱이 실행되지 않거나, 앱 내부에서 오류가 발생할 수도 있다. 때문에 자마린은 해당 플랫폼이 최신 버전으로 업데이트 되는 때에 같이 업데이트된다. 최신 플랫폼에도 재빠르게 대응할 수 있게 된 것이다.
<자마린을 이용화면 윈도우,
안드로이드, iOS 등 다양한 플랫폼용 앱 개발을 동시에 진행할 수 있다>
MS는 자마린의 활용도를 더욱 높이기 위해 '자마린 런타임(Xamarin Run time)'을 오픈소스로 제공할 예정이다. 자마린 런타임이란 자마린 개발도구로 만들어잰 앱을 실행할 수 있는 환경이다. MS는 런타임을 만들 수 있는 환경을 오픈소스로 풀어서 안드로이드, iOS, 윈도우 등 세 플랫폼용 앱을 타이젠 등 다른 플랫폼용 앱으로 손쉽게 전환할 수 있도록 했다. MS가 공식적으로 만든 자마린 런타임은 안드로이드, iOS, 윈도우용 뿐이다. 다른 플랫폼에서 자마린 런타임을 이용하고 싶다면 오픈소스를 활용해 개발자가 직접 런타임을 만들어야 한다. 이러한 작업을 통해 자마린에서 개발한 앱이 타이젠 등 다른 플랫폼에서 실행되는지 바로 확인할 수 있게 되었다.
현재 자마린을 활용해 앱을 개발하는 업체는 전 세계적으로 1만 5,000여곳이 넘는다. 대표적으로 '슬랙'과 '깃허브' 등을 들 수 있다.
MS는 유니티 애셋 스토어처럼 자마린으로 보다 쉽게 앱을 개발할 수 있도록 '자마린 컴퍼넌트 스토어'라는 앱용 애셋을 거래하는 서비스도 개시했다. 자마린은 현재 무료로 이용할 수 있으며, 자마린을 통해 개발한 앱과 서비스가 추후 상업적으로 성공하더라도 MS에게 별도의 비용을 지불하지 않아도 된다. 자마린 포 비주얼 스튜디오는 비주얼 스튜디오 엔터프라이즈, 프로페셔널, 커뮤니티 에디션에서 이용할 수 있다.
자마린을 이용해 앱을 개발 중인 한 개발자는 "적은 인력으로 여러 플랫폼에 대응해야 하는 소규모 업체와 스타트업에게 자마린은 개발 기간과 비용을 단축할 수 있는 최적의 개발도구다"며, "윈도우, iOS 용 앱을 개발할 때에는 뛰어난 성능을 보여준다. 다만 안드로이드용 앱을 개발할 때에는 다양한 안드로이드 기기에 대응하기 위해 앱과 서비스를 자잘한 부분까지 일일이 손봐줘야 하는 등 번거로운 부분이 있는 점이 조금 아쉽다"고 전했다.
글 / IT동아 강일용(zero@itdonga.com)