망고로 다시 태어나는 Windows Phone 7 이야기
![]() |
김영욱 차장 iwinkey@hotmail.com 국내 유수의 대기업 프로젝트에 참여했던 풍부한 경험과 마이크로소프트 MVP로서 다양한 활동을 바탕으로 .NET과 관련된 개발 기술에 전념하고 있다. 현재 한국마이크로소프트에서 Evangelist로 근무하고 있다. |
지난 4월에 라스베거스에서 열렸던 MIX11 행사에서 원도우폰7의 새로운 업데이트에 대한 발표가 있었다. 이 업데이트에서는 멀티테스킹을 비롯해서 다수의 새로운 기능들이 소개되었는데 이전에 보지 못했던 완전 새로운 기능들도 있고 또 이전에 아이폰이나 안드로이드에서 볼 수 있었던 기능들이 원도폰에 포함된 경우도 있었다. 원도우CE 시절부터 마이크로소프트사가 모바일 운영체계에 꾸준히 투자를 하고 관련된 제품들을 출시해 왔던 것도 사실이지만 최근 일련의 시장의 변화를 수용하기 위해서 처음부터 코드를 다시 쓰다시피 한 원도우폰7은 개발자들의 입장에서 볼 때에는 첫 번째 버전이라서 그런지 기능적으로 부족한 부분들이 있었다. 하지만 이번에 소개된 업데이트를 통해서 독특한 자신의 컨셉을 유지한 체로 다른 경쟁 제품과 경쟁할 수 있는 모바일 운영체계로 거듭나게 될 수 있게 되었다. 원래 이번 호에서는 원도우폰7의 사용자 인터페이스를 좀 더 자세히 설명하려고 했는데 이번 호에서는 MIX11에서 소개된 새로운 변화를 우선 설명해 드릴까 한다.
코드네임 망고 (Mango)
애플의 영향인지는 모르겠지만 요즘 모바일 세상에서는 먹거리들이 한창이다. 거기에 마이크로소프트도 가세하려는 것인지는 모르겠지만 지난 MIX11 행사에서 발표된 업데이트의 이름도 달콤한 과일 이름인 망고였다. 망고 업데이트는 내부적으로는 업데이트라고 하기에는 너무 큰 변화들이 포함되어 있어 있어서 업데이트가 아니라 새로운 버전이 아닐까 하는 추측이 많았다.
<그림1>망고 업데이트를 통해서 새로 지원되는 언어들
지금 북미 지역과 서유럽 그리고 호주와 싱가폴 등 원도우폰7이 출시된 국가들의 공통점은 알파벳 문화권이라는 점이다. 다르게 이야기 하면 한국, 중국, 일본등 동아시아 국가들의 언어는 아직 지원되지 않고 있다. 물론 한글을 볼 수는 있지만 입력할 수 있는 입력기가 제공되지 않고 있으며 주소록 등에서도 영어로만 정렬이 된다. 그래서 남들 보다 일찍 원도우폰7을 사용하고 있는 국내 사용자들은 원도우폰7을 사용하기 위해서 여러 가지 불편을 감수하고 있는데 단문 서비스나 웹 검색 그리고 트위터나 페이스북 등의 서비스를 사용할 때 아예 영어를 사용하는 등의 불편함을 감수하면서 사용해 왔다. 그래서 이를 해결해 주는 앱들이 마켓플레이스에서 등장 했는데 망고 출시와 더불어 이런 앱들은 필요가 없어질 것으로 보인다.
<그림2>원도우폰7에서 한글을 지원하는 대표적인 앱 Korean SNS
망고를 통해서 개발자가 제일 처음 볼 수 있는 변화는 바로 언어를 비롯한 아시아권에 대한 지원이라고 볼 수 있다. 망고에서는 우리나라를 비롯해서 중국, 일본 등 아시아권의 16개 언어가 추가되게 되었다. 언어에 대한 추가는 아시아권에 원도우폰7을 출시하기 위한 필수적인 요구사항으로 올해 하반기에는 한국, 일본, 중국 등 아시아권의 국가에서도 정식으로 출시된 원도우폰7을 볼 수 있게 될 예정이다. 필자가 기대를 가지고 있는 부분은 언어에 대한 지원과 더불어 해당 국가에 지원되기 시작하는 개발자 프로그램이다.
원도우폰7의 경우 개발자들이 사용할 수 있는 개발자 프로그램은 현재 앱 허브 사이트인 https://create.msdn.com 에서 가입하고 필요한 툴들을 다운로드 받을 수 있다. 하지만 원도우폰7이 정식으로 출시된 국가에 한해서면 개발자 프로그램을 지원받을 수 있기 때문에 한국 개발자들은 현재 정식으로 지원을 수 없다. 물론 지금도 열정이 가득한 개발자들은 미국 등지에 있는 친척이나 지인들의 개인정보를 도용해서 통해서 지원받는 경우도 있긴 하지만 그래도 정식으로 지원받는 것이 아니었기 때문에 많은 불편함을 감수하고 있는 실정이다.
<그림3>앱 허브 사이트 https://create.msdn.com
개발자 프로그램을 공식적으로 지원받지 못해도 원도우폰7을 개발해 볼 수 있다. 관련된 개발 툴들을 다운받아 보면 포함되어 있는 애뮬레이터를 통해서 앱을 실행시키거나 디버깅 할 수 있으며 이베이 등에서 언락(Unlock)된 폰을 구입하는 방법도 있다. 하지만 앱을 정식으로 마켓플레이스에 배포해서 사용들이 사용하게 할 수 있는 방법이 없기 때문에 결국은 개발자 지원 프로그램이 정답 일 수 밖에 없다.
망고 업데이트를 통해서 누릴 수 있는 UX상의 변화도 많은데 굳이 사용자 인터페이스라고 표현하지 않고 UX(user experience)라고 표현한 이유는 사용자의 경험적인 요소가 비약적으로 변화 할 수 있기 때문이다.
<그림4> 앱 검색 방법의 변화 <그림5>멀티 테스킹 사이의 전환
원도우폰의 경우 아이폰이나 안드로이드와는 달리 시작화면에 앱 아이폰의 목록이 나타나지 않고 라이브 타일만 노출되어 있다가 좌측으로 밀거나 혹은 앱 목록을 보여주는 화살표를 선택하면 그때 앱 목록이 나타난다. 아이폰이나 안드로이드는 앱 목록을 페이지 단위로 넘기면서 볼 수 있게 되어있고 아이폰은 또 이를 폴더 단위로 정리할 수 있게 되어있는 반면 윈도우폰7은 하나의 목록으로 관리하기 때문에 앱 개수가 많아졌을 경우 이를 어떻게 처리할까에 대한 고민이 있었다. 망고에서는 우선 두 가지 방법을 새로 제공하고 있는데 <그림4>에서 보는 바와 같이 앱 목록을 알파벳으로 검색하는 방법이 있고 두 번째로 돋보기 모양의 아이콘을 선택해서 앱 이름을 직접 입력해서 검색하는 방법이 있다.
망고의 변화된 내용 중에 UX상의 작은 변화가 앱 검색 방법이라고 한다면큰 변화는 멀티테스킹의 지원이라고 할 수 있다. 아이폰도 iOS 3.x을 사용 할 경우에는 멀티테스킹이 지원되지 않았다. 때문에 이 시절 아이폰의 홈 버튼을 누른다는 것은 곧 해당 앱의 종료를 의미했다. iOS는 주어진 시간만큼은 해당 앱에게 현재 작업 내용을 정리할 수 있는 시간을 주고 해당 앱을 바로 종료해 버렸다. 만약 주어진 시간 안에 작업을 정리하지 못하면 해당 데이터는 유실되고 앱은 강제 종료되는 비극을 맞이 하게 되었다. 이런 살벌한 실행 환경이 필요했던 이유는 멀티테스킹이 다양한 기능을 확장 시킬 수 있는 요소가 되기도 하지만 제한된 모바일 환경에서 전체적인 반응속도의 저하나 배터리 소모량 증가와 같은 문제를 함께 야기하기 때문이다.
앱에 대해서 별다른 제재 조치가 없는 안드로이드의 경우는 멀티테스킹으로 인한 성능 저하를 쉽게 체험할 수 있다. 원도우폰7의 경우 지금은 멀티테스킹이 제공되지 않지만 망고와 함께 제공될 예정이다. 하지만 앞서서 언급한 성능과 전원관리라는 측면을 어떻게 관리할 것인가 하는 고민을 함께 했으며 그 결과 제한되고 관리되는 형태의 멀티테스킹을 제공하는 방법을 선택했다.
<그림6>UX와 관련해서 바뀐 변화 점.
우선 음악재생, 파일 다운로드와 같이 멀티테스킹이 꼭 필요한 작업들을 먼저 선정하고 이를 윈도우폰7 운영체계 상에서 관리하고 제어하는 방식으로 멀티케스킹을 지원할 예정이다. 이런 식의 문제 해결은 모바일 운영체계 중에서는 가장 진보한 형태가 될 것으로 보인다.
윈도우폰7이 다른 모바일 운영체계와 가장 다르게 보이는 점은 바로 메트로 사용자 인터페이스 때문이다. 다른 모바일 운영체계의 경우에는 해당 앱의 기능을 축소해 놓은 듯한 아이콘을 통해서 사용자에게 간단한 정보만 줄 수 있지만 윈도우폰7은 앱의 아이콘과는 별도로 라이브 타일을 만들어서 시작 화면에 배치할 수 있다. 라이브 타일은 넉넉한 크기로 인해서 사용자들에게 충분한 정보를 줄 수 있는데 망고를 통해서 라이브 타일의 내용을 다룰 수 있는 Live Agents가 추가로 제공된다.
MIX11에서는 호주에 있는 항공사인 퀀타스 항공사의 앱을 선보였는데 비행 스케즐 목록에서 관심이 있는 일정을 시작 화면에 라이브 타일로 배치하고 라이브 타일을 통해서 필요한 정보를 얻는 데모를 보여 주었다.
<그림7>MIX11에서 선보인 퀀타스 항공 앱 <그림8>라이브 타일에 배치된 항공 스케즐
물론 지금의 윈도우폰7에서도 앱의 아이콘을 선택해서 라이브 타일에 배치하는 것은 가능하지만 앱 안의 기능들을 필요한 만큼 라이브 타일에 배치할 수 있게 된 것이 망고를 통해서 얻어지는 큰 변화 포인트이다.
또 라이브 타일 안에서 이미지나 텍스트의 업데이트를 Live Agents를 통해서 지원받을 수 있게 되어서 라이브 타일과 관련된 개발이 훨씬 간단해지면서 강력해지는 계기가 되었다.
개발자들의 입장에서는 소켓이나 새로 추가되는 컨트롤 등에도 관심이 많이 갈 것 같다.
망고에서는 소켓이 지원되어서 다양한 분야의 개발이 가능해 질 예정이다. 소켓과 멀티테스킹을 이용하면 카카오톡과 같은 형태의 메신저 개발이 가능해 진다. 또 항상 준비되어 있는 상태에서 특정 상황에 맞게 푸쉬를 해주는 형태의 다양한 솔류션들이 개발 가능해진다.
데이터를 저장하는 방법도 달라질 예정인데 지금은 단순히 파일 저장공간만 제공되는데 비해서 이번 업데이트를 통해서 Microsoft SQL Server의 모바일 버전인 SQL CE버전이 제공될 예정이다. 또 일정과 주소록 등에 접근할 수 있는 객체들이 추가로 제공되는 등 개발자들의 숨통을 열어 주는 멋진 기능들이 대부분 제공 될 예정이다.
<그림10> 웹 서비스를 통해서 벨소리를 다운받는 데모
센서나 하드웨어에 대한 지원도 대부분 해결이 될 예정이다. 로우 레벨에서의 카메라 지원과 더불어 나침반 센서, 자이로 스코우프도 지원될 예정이다.
그리고 추가적인 벨 소리를 웹 서비스를 통해서 다운로드 받는 방법도 제공 될 예정이라고 한다. 하지만 추가적인 벨 소리를 통신사에서만 제공할 수 있는 것인지 혹은 필요하다면 누구라도 제공 할 수 있는 것인지 하는 것은 밝혀지지 않았다. 국내의 경우 벨 소리 시장 규모가 상당한 것으로 알려져 있는 것이니만큼 이 부분은 중요한 이슈가 될 것으로 보인다.
필자는 최근에 학부모가 되면서 복합기를 한대 구입하려고 대형 마트를 찾은 적이 있었다. HP 모델이 최종적으로 선정되면서 현장에서 윈도우폰7으로 바로 최저가 검색을 했더니 인터넷 쇼핑이 배송비를 포함하고도 9,000원이나 또 저렴한 것을 찾아내고 마트에서는 식료품만 사가지고 돌아온 적이 있었다. 갑자기 왠 쇼핑이야기냐고 하는 분들이 있을 것 같긴 하지만 실제로 필자와 같이 이동중에 혹은 야외에서 모바일 웹 서핑은 생각보다 강력하게 활용되는 시나리오가 많다.
기존에 모바일 웹 브라우저는 오픈소스 기반인 웹 킷을 기반으로한 사파리와 크롬이 강세였다.
<그림6>망고에 포함될 예정인 모바일 인터넷 익스플러 9
특히나 모바일 버전의 인터넷 익스플러는 크롬에 비해서는 보여주는 내용이나 속도에 있어서 사용하지 못할 정도로 많이 떨어지는 제품으로 인식되었다. 하지만 원도우폰7에 포함되어 있는 버전의 경우 정말 많이 좋아졌다. 속도나 HTML을 분석해서 랜더링 하는 기술에 이르기까지 참 짧은 시간에 많은 변화를 가져왔다는 생각이 든다.
망고에서는 웹 브라우저의 버전업도 함께 포함될 예정인데 바로 모바일 버전의 인터넷 익스플러 9이 포함될 예정이기 때문이다. PC 버전의 인터넷 익스플러9 버전의 경우 HTML5의 지원과 더불어 GPU와 Dual Core를 지원하는 등 하드웨어를 통한 가속 기능이 눈에 띄었는데 모바일 버전에서도 동일한 장점을 그대로 누릴 수 있게 될 예정이다.
스마트폰으로 촉발된 스마트 경쟁은 타블릿 패드와 함께 웹 개발자가 지원해야 하는 시장이 다양해지고 있다는 것을 의미한다. 이런 환경에 HTML5를 통한 새로운 표준과 유연함의 제공은 필수적인 요소로 각광 받게 될 예정이다. 그래서인지 몰라도 아직 최종안이 나오지도 않은 HTML5을 이용하는 브라우저들 이외에도 다양한 툴과 플랫폼이 활성화 되고 있다.
모바일 개발자들의 경우 대부분 모바일 환경을 컴퓨터 상에서 흉내내는 에뮬레이터에서 개발을 하는데 모든 것을 다 에뮬레이터에서 개발하더라도 G센서를 이용하는 기능이나 GPS를 사용하는 기능은 직접 실제 폰을 이용해야만 했다. 원도우폰7의 경우는 망고와 더불어 개발 툴 내에서 G센서 및 GPS 에뮬레이션까지 모두 지원되면서 개발의 편의성이 더하고 있다. 더불어 강력한 프로파일링 기능은 좀 더 복잡한 기능을 개발 할 경우에 체계적인 디버깅과 최적화 작업을 할 수 있게 해 줄 것이다.
<그림7>G센서 에뮬레이터가 포함된 윈도우폰7 개발 툴
정리
원래 이번 호에서는 윈도우폰7 디자인 가이드에 대해서 한번 더 다뤄보려고 했지만 망고라는 걸출한 업데이트 소식이 전해지면서 망고에 대한 이야기로 마무리 해 보았다. 다음 호에는 마무리 못했던 원도우폰7 디자인 가이드에 대해서 전해 드리려고 한다. 원도우폰7 개발툴을 설치해보고 떠오르는 아이디어들을 잘 구현해 보는 즐거운 시간이 함께 하시길 바란다.
---(*)---