모바일 / 애플리케이션 / 윈도우

윈도우 폰 8 SDK 리뷰 : 자바스크립트 · HTML 활용 쉬워졌다

Peter Wayner | InfoWorld 2012.11.09
휴대폰 업계에서 윈도우 모바일이 아성을 떨치던 것이 불과 6년 전이었던가. 당시에는 프로그래머들만이 휴대폰을 컴퓨터라 생각했었다. 현재 우리는 2세대 또는 3세대 스마트폰을 향해 달려가고 있으며 이 작고 얇은 기기들은 점차 컴퓨터보다 더 복잡해지고 있다. 문서를 편집하거나 길을 찾거나 사진을 찍고 이메일을 보내고 누군가와 대화하는 것도 모두 스마트폰을 통해 할 수 있다.
 
윈도우 모바일과 블랙베리 이후로 많은 변화가 있었다. 마이크로소프트(MS)는 깊은 구렁텅이에 빠졌고 살아남기 위해서는 어쩔 수 없이 아이폰과 안드로이드의 기능을 지원해야 한다는 사실을 깨달았다. MS는 분명 아이폰 또는 안드로이드 스마트폰이 제공하는 다양한 기능을 구현하기 위해 비용과 노력을 아끼지 않았다. 그리고는 몇몇 아이디어에 따라 60년대의 복고풍을 좋아하는 사람들이 좋아할만한 MS만의 차별화된 스타일을 만들어냈다.
 
이것은 단지 MS의 내부 프로그래머들만의 문제가 아니다. 윈도우 폰 8 플랫폼은 스스로 연계성을 확보할 수 없다. 오늘날의 스마트폰은 앱 스토어에서 제공하는 앱을 필요로 하며 앱 스토어는 개발자를 필요로 하고 다시 앱 개발자는 SDK(Software Development Kit)를 필요로 한다. MS가 휴대폰을 판매하고 싶다면 SDK로 작업해 앱을 개발할 수 있는 프로그래머들이 필요하다.
 
MS는 11월 초 윈도우 폰 8 SDK를 공개했다. 프로그래머들이 가장 먼저 주목할 것은 지원 범위가 매우 넓다는 것이다. SDK는 단지 화면에 버튼 몇 개를 추가하기 위한 툴이 아니다. 스마트폰의 다양한 역할에 적합한 깔끔한 사용자 인터페이스(User Interface)를 개발할 수 있도록 지원한다.
 
윈도우 폰 8의 개발언어와 런타임
좋은 소식은 새로운 버전의 SDK에는 윈도우 폰 8용 앱을 개발하는데 필요한 세부 정보를 확인할 수 있는 광범위한 문서가 포함되어 있다는 것이다. SDK를 활용하는데 필요한 모든 것을 얻을 수는 없지만 수백 개의 예제도 함께 제공한다. MS는 프로그래머들이 새로운 예제를 요청하고 다름 사람의 요청에 대해 투표할 수 있는 개별적인 포럼을 만들었다. 이는 멋진 피드백 방식으로 MS가 개발자들의 요구를 제품에 반영하는데 큰 도움이 될 것이다.
 
대부분의 예제는 개발자들이 가장 먼저 선택하는 언어인 C#으로 작성되어 있다. 위젯으로 구성된 프레젠테이션 레이어(presentation layer)는 XAML로 작성된 반면 이벤트 발생에 사용되는 객체들은 C# 코드가 사용됐다. MS는 이것은 '관리형 앱'(managed app)이라고 부른다. 가장 중요한 것은 적절한 XAML 위젯 레이아웃을 선택해 모든 것을 문제없이 보이도록 하는 것이다. XAML 파일에 적절한 위젯을 배치하고 OS가 나머지를 처리하도록 하는 것만으로 꽤 괜찮은 결과물을 얻을 수 있다. C#은 객체에서 데이터를 입출력하고 이런 객체를 코드의 다른 부분과 교환한다.
 

   윈도우 폰 SDK 8.0에는 윈도우 폰용 비주얼 스튜디오 2012 익스프레스과 익스프레스 블렌드 UI 디자인
   툴킷, 윈도우 폰 8과 윈도우 폰 7.1 에뮬레이터, 다양한 템플릿 등이 포함돼 있다.
 
C# 외에 C++와 비주얼 베이직도 선택할 수 있다. 빠른 성능이 필요한 게임 개발자라면 아마도 네이티브 C++ 앱을 선택할 것이다. 윈도우 폰 8에 닷넷 프레임워크가 적용되면서 앱의 성능과 응답성이 크게 향상됐는데 이는 새로운 비동기식 프로그래밍 모델과 더 효율적인 실행시간 엔진 덕분이다. MS는 윈도우 폰 8 앱들이 더 빨리 실행될 것이라고 설명했는데 이는 윈도우 폰 7 기기의 경우 기기에서 컴파일하지만 윈도우 폰 8 앱은 윈도우 스토어 클라우드에서 컴파일이 이뤄지기 때문이다. 그러나 필자는 이 부분을 경험하지 못했다.
 
C#, 비주얼 베이직, C++보다 더욱 흥미로운 것은 자바스크립트와 HTML의 등장이다. MS가 공개한 문서에 따르면 HTML은 완전히 성숙한 '앱 모델'(정확한 의미가 무엇이든)은 아니다. 그러나 XAML을 이용하는 앱 내에 인터넷 익스플로러(IE)를 임베디드하는 것이 가능해 졌고 IE가 나머지를 처리하게 된다. 윈도우 폰 8에는 IE10이 탑재되는데 이는 곧 HTML5의 많은 새로운 기능들을 이용할 수 있다는 것을 의미한다.
 
이에 따라 필자는 앞으로 자바스크립트와 HTML 형태로 많은 앱들이 출시될 것으로 생각한다. 센차 터치(Sencha Touch)나 j쿼리 모바일(jQuery Mobile) 등으로 개발된 HTML5 앱을 아이폰, 안드로이드, 윈도우 폰 8 기기로 포팅하는 것은 꽤 간단하다. 실제로 센차 개발자들은 윈도우 폰 8 SDK 개발 초기부터 이를 사용해 볼 수 있었다. 아마도 MS는 이런 방식으로 크로스 플랫폼(Cross Platform) 앱을 간단하게 개발할 수 있다는 것을 알고 있었던 것으로 보인다.

현재 자바스크립트와 HTML을 윈도우 폰 8 앱으로 변환할 수 있는 아파치 코르도바(Apache Cordova) 최신판이 나와 있는 상태다. 코르도바로 기본적인 HTML5 앱을 만들어 본 개발자라면 누구나 몇 분만에 포팅할 수 있을 것이다.
 
한편 SDK에 포함된 무료 버전의 비주얼 스튜디오에는 수십 개의 코딩 템플릿이 들어있다. 데이터를 뽑아내 목록으로 표시하는 기능을 구현하려면 이미 많은 부분이 개발돼 있는 템플릿을 사용하면 된다. 통합개발환경(IDE) 덕분에 SDK를 얻고 시뮬레이터 실행결과를 내는 것이 훨씬 수월해졌다.

어떤 이유 때문인지 모르겠지만 필자가 사용하는 키보드로는 텍스트 입력이 안됐지만 윈도우 폰 8 시뮬레이터가 안드로이드나 블랙베리 기기보다 훨씬 응답성이 좋다는 것은 분명한 사실이다. (그래서 필자는 시뮬레이션 된 휴대폰의 키보드를 사용해야 했다) 이 시뮬레이터를 사용하려면 인텔(Intel)의 i 시리즈 등 SLAT가 지원되는 CPU에서 윈도우 8을 설치해 실행해야 한다.
 

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.