지금은 모바일 웹을 준비해야 할 시기


모바일 시장에서 두각을 나타날 만한 아이디어를 갖고 있는 개발자가 성공적으로 투자를 받아 회사를 창업했다고 하자. 멋지게 해당 서비스를 기획하고 실제 개발을 해야 하는 상황에 직면했다. 아마도 이러한 문제에 직면할 것이다. 도대체 어떤 플랫폼용으로 만들 것인가? 라는 문제이다. 앱스토아라는 애플리케이션 마켓플레이스가 가장 활성화되어 있는 애플용이 좋을 까? 아니면 전 세계에서 가장 많은 핸드폰을 판매하고 있는 노키아나 삼성의 핸드폰을 대상으로 할 것인가?
아마도 여러 복합적인 의사 결정에 따라 애플 아이폰 SDK나 심비안 SDK 또는 윈도우 모바일 SDK 중의 하나를 이용하여 어플리케이션을 개발하게 될 것이다. 이러한 현재의 모바일 어플리케이션 개발 환경은 개발자와 개발회사에 너무도 많은 부담을 지우고 있다.  
 
먼저 가장 근본적인 고민은 모바일 플랫폼이 너무 많다는 것이다. 
현재 공개된 대표적인 모바일 플랫폼만 하더라도 애플 아이폰 SDK, MS의 윈도 모바일 SDK , 구글 안드로이드SDK , 심비안 SDK , 팜의 Mojo SDK 등 다수이다. 이들 SDK중 하나를 선택하는 것도 쉬운 일은 아니다. 설령 , 여러가지 상황을 고려해서 플랫폼을 선택했다고 하더라고 해당 플랫폼에 최적화된 어플리케이션을 개발하기 위해서는 해당 플랫폼에 정통한 모바일 어플리케이션 개발자가 필요하다. 일반적으로 웹이나 PC 플랫폼상에서 어플케이션을 개발하는 것보다 모바일 플랫폼에서 개발할 때  디바이스 자체의 특성을 잘 이해해야 좋은 성능과 품질의 어플리케이션을 개발할 수 있다.

일단 여러 우여곡절 끝에 하나의 모바일 어플리케이션을 개발했다고 치자. 시장 확대를 위해서는 다른 플랫폼용으로 해당 모바일 어플리케이션을 포팅해야 한다. 말이 포팅이지 거의 새롭게 개발하는 수준이다. 이를 위해서는 숙련된 개발자를 확보해야 하는 등 많은 비용이 든다. 개발 후에는 유지보수를 위해 또 비용이 발생한다. 참으로 비극적인 상황이 아닐 수 없다. 실제 더 우울한 것은 동일한 모바일 플랫폼이라고 하더라도 버전에 따라 호환이 안되는 경우도 다수 발생하기 때문에 많은 버전을 개발하고 관리해야 만 한다.

이러한 상황을 해결하고 보다 손쉽게 모든 모바일 플랫폼상에서 구동되는 모바일 어플리케이션을 개발할 수 없을까?

물론 몇가지 방법을 상상할 수 있을 것이다. 먼저 모바일 플랫폼을 하나로 통합하고 이 기반하에 개발하는 것이다. 마치 PC 플랫폼이 윈도우로 통일되었듯이 모바일 플랫폼들을 하나의 특정 플랫폼으로 통합하는 것이다. 그러나 이 방법은 불가능하다. 사용자도 플랫폼 통합에 관심이 없겠지만 업체들 입장에서도 이해관계가 다양하기 때문에 통합은 불가능하다. 

또 하나 생각해 볼 수 있는 방법으로는 모든 모바일 플랫폼상에서 구동되는 통합된 API를 이용하는 것이다. 마치 노키아가 심비안 상에 S60 플랫폼을 통해 개발하듯이 모든 모바일 플랫폼상에 운용되는 어플리케이션을 개발할 수 있는 SDK를 개발한 후 이용하는 것이다. 그러나 이 방법도 하부에 있는 모바일 플랫폼에 의존적이기 때문에 완벽한 이식성을 제공하기 어려울 뿐만 아니라 이러한 공통 API를 설계 개발하는 것은 무척 어렵다. 왜냐하면 모바일 플랫폼은 디바이스 의존적인 부분이 강하기 때문이다. 현재 차이나모바일, 소프트뱅크, 보다폰 세개의 이동통신사업자가 만든  컨소시엄인 JIL(Joint Innovation Lab)은 이러한 접근 방법을 사용한다. JIL(www.jil.org)JIL JavaScript Extension을 이용하여 모바일 디바이스를 제어하는 위젯을 개발하고 이를 구동하는 런타임 환경을 제공한다.  이 위젯은 모바일 플랫폼과는 무관하게 구동된다. 그러나 JIL은 모바일 어플리케이션을 위한 것이 아니라 위젯 개발을 위한 개발 환경이다.


또 하나의 방법은 개발과 포팅 환경을 통합하여 하나의 통합된 개발 환경에서 개발을 하고 이를 바탕으로 원하는 플랫폼으로 보다 손쉽게 포팅을 하게 해주는 것이다. 무척 현실적인 방법이나 모바일 플랫폼간의 포팅은 쉽지 않아보인다. 실제 이클립스 펄서(Pulsar)는 이러한 접근 방법을 사용한다. 이클립스 펄서는 이클립스 툴 기반의 모바일 어플리케이션 개발 환경으로 모바일 업체들이 자체 SDK를 펄서 명세에 맞춰 공급하면 플러그인 방식으로 다운로드하여 사용할 수 있다. 현재 모토로라에서 제공하는 자바 ME SDK과 노키아 포럼의 S60 SDK, 그리고 모바일용 eRCP(embeded Rich Client Platform)를 제공하고 있다. 현재 수준은 모바일 플랫폼 업체들의 SDK를 이클립스 기반으로 통합하여 단일 환경에서 개발할 수 있게 해주는 수준이다.
 
지금까지 고민해 본 방법은 마치 데스크탑상의 윈도우 플랫폼에서 구동되는 윈도우 프로그램을 개발하는 것처럼 모바일 디바이스 상에서 구동되는 모바일 어플리케이션을 개발하는 것이다. 그러나 생각을 좀 바꿔 보면 특정 모바일 플랫폼 종속에서 벗어나는 모바일 어플리케이션을 개발할 수 있다. 바로 웹 기반의 모바일 어플리케이션을 개발하는 것이다.

모바일 웹 어플리케이션은 모바일 다바이스상 설치되어 운영되는 모바일 어플리케이션이 아니라 네트웍을 통해 언제 어디서나 접속하여 다운로드를 받은 후 웹 브라우져를 통해 사용할 수 있다. 이러한 방법을 모바일 클라우드 기반의 어플리케이션이라고도 한다.

이러한 클라우드 기반의 모바일 웹 어플리케이션 개발에 있어 해결해야 할 문제로 모바일 어플리케이션의 킬러 분야인 게임 분야에서 우수한 프로그램의 개발이 가능한가? ,  네트웍이 불가능한 상황에서 웹 어플리케이션을 어떻게 구동할 것인가?, 그리고 웹 프로그래밍을 통해 디바이스의 제어가 가능한가? 등이 있다.

먼저 결론을 말하자면 이러한 문제들은 일부는 해결되었고 일부는 해결되어 가고 있으며 모바일 웹이 모바일 플랫폼의 주류중 하나가 될 것이다. 먼저 이러한 흐름의 중심에는 W3C의 HTML5 표준이 있다. 기술적인 내용을 살펴보는 것에 앞서 표준은 산업체간의 이해관계가 걸린 전쟁이라는 것을 이해해야 한다. 단순히 업체간의 협의에 의해 결정되는 것이 아니라 철저한 이해관계에 의해 움직인다. 현재 HTML5 표준을 강력하게 추진하고 있는 업체는 구글과 애플, 그리고 팜 , 오페라 등을 들 수 있다. MS의 반대 진형이 강력히 추진하고 있는 상황이라고 할 수 있다. 물론 실세는 구글이며 W3C 표준에 자신들의 기술을 반영하여 웹 표준을 리드하고 있다.

Gears이러한 HTML5에는 앞서 언급한 모바일 웹 어플리케이션을 개발할 때 발생하는 문제점들의 해결 방안을 상당수 포함하고 있다. 대표적인 것이 게임 처럼 복잡한 그래픽 처리를 가능하게 하는 Canvas 태그와 네트웍이 불가능한 상황에서도 디바이스상의 스토리지를 이용할 수 있여 응용 프로그램을 구동하고 이를 온라인시 동기화 시키는 것을 가능하게 하는 기능 등이 포함되어 있다. 이 스펙은 구글의 오픈소스 프로젝트인 구글 Gears를 HTML5에 포함시킨 것이다. 또한 최근에 W3C는 Device API Working Group을 발족하여 웹이나 가젯 등의 어플리케이션에서  다바이스를 제어하는 표준API를 제정에 착수하였다.

W3C의 Device API외에 자바스크립트로 모바일 디바이스를 제어할 수 있도록 해주는 표준으로 BONDI(http://bondi.omtp.org)가 있다. BONDI는 이동통신 사업자들의 포럼인 OMTP(Open Mobile Terminal Platform)에서 제정한 런타임 플랫폼으로 웹 어플리케이션이나 위젯 등에서 모바일 디바이스의 기능을 안전하게 제어하게 해주는 모바일 웹 플랫폼이다.

BONDI는 HTML, JavaScript, CSS 등 표준 웹 개발 기술로 작성된 웹 어플리케이션에서 모바일 디바이스의 어플리케이션 , 카메라, 커뮤니케이션 로그, 이미지 갤러리, 위치 정보, 메시징, 스토리지, 개인정보 관리(PIMS) , 디바이스 정보 등을 제어할 수 있게 해주는 모 바일 웹 플랫폼이다. 이를 위해 BONDI는 모바일 디바이스를 제어할 수 있는 자바스크립트 EXtension를 제공한다. 현재 1.0 스펙까지 출시되었고 참조 구현체와 SDK를 배포하고 있다. 현재 BONDI API와 노키아 API가 W3C Device API에 제출되어 있는 상태이기 때문에 W3C Device API에 유사 표준이 포함될 것으로 예상된다.

이러한 HTML5, Device API,  BONDI 등의 이면에는 여러 업체들의 복잡한 이해관계가 존재한다. 물론 이러한 이해관계의 끝에는 모바일 웹 어플리케이션이 존재한다. 실제 표준을 진행하는 과정에서 자신의 기술과 스펙을 표준화시키는 것은 아주 중요하다. 바로 그것이 경쟁력이기 때문이다. 이를 위해서는 먼저 자신의 기술을 확보해야 하는 것이 필수이다.

현재 모바일 웹을 가장 적극 채용하고 있는 업체는 구글과 팜사이다. 구글은 올해 5월 구글 개발자 컨퍼런스인 Google I/O에서 HTML5를 기반 기술로 적극 추진한다고 공표했고 새롭게 개발하고 있는 Crome OS를 HTML5 기반으로 개발하고 있다. 또한 과거 PDA 황금기에 시장을 주도했었던 팜사는 Palm Pre라는 새로운 스마트폰을 출시하면서 웹 OS라는 혁신적인 개발 환경을 발표했다. 웹 OS는 Webkit과 dojo를 기반으로 한 Mojo라는 웹 SDK를 제공한다. Mojo는 CSS,HTML,Javascript만을 이용하여 모바일 어플리케이션을 개발할 수 있다.

또한 브라우져의 경우에도 파이어폭스3.5 , 오페라 9.6 , 사파리 4 등에서 동영상, 오디어 등 HTML5의 주요 기능을 제공하기 시작했으며 지원 기능은 시간이 흐를 수록 늘어날 것이다.

이러한 모바일 어플리케이션 개발 환경이 웹 중심으로 수렴되는 것은 모바일 어플리케이션 개발에 있어 기존 디바이스 의존적인 방법보다 높은 생산성을 주는 것과 더불어 긍정적인 많은 변화를 가져다 줄 것이기 때문이다. 어떤 변화들이 올 지 예상해보자.

- 중.저가형 스마트폰 시장이 보다 빠르게 형성될  수 있다.
기존 스마트폰 시장은 주로 고가 제품이 주를 이루고 있다. 모바일 어플리케이션을 구동하기 위해서는 고성능의 사양이 필요하기 때문이다. 그러나 모바일 웹 어플리케이션은 웹 브라우져가 구동되는 환경에서면 수행이 가능하기 때문에 중.저가 스마트폰 시장이 보다 빠르게 형성되고 주류가 될 수 있다.

- 모바일 웹 어플리케이션이 일반화가 되면 모바일 어플리케이션의 생태계도 변하게 된다.
애플 앱스토아를 비롯해 현재 모바일 마켓플레이스를 통해 제공되는 대부분의 모바일 어플리케이션은 디바이스에서 구동되는 순수 모바일 어플리케이션들이다. 마치 윈도우용 프로그램의 라이센스를 구매하여 사용하는 것과 동일한 방식으로 모바일 마켓플레이스에서 라이센스를 구매하고 이를 디바이스에 설치한 후 사용을 한다. 그러나 모바일 웹은 이러한 방식의 변경을 요구한다. 모바일 웹 어플리케이션은 인터넷을 통해 언제,어디서나 접속을 하여 사용할 수 있기 때문에 과금도 라이센스를 구매하는 방식이 아니라 사용한 만큼 비용을 지불하는 방식인 SaaS(Software As As Service) 모델로 전환될 것이다.
  
이에 따라 앱 스토아 같은 기존의 모바일 마켓플레이스도 많은 영향을 받을 것이며 후발 업체들의 경우 새로운 기회를 맞게 될 것이다.  이러한 측면에서 가장 개방되고 우수한 클라우드를 보유하고 있는 구글과 팜사의 웹OS가 가장 많은 기회를 얻을 수 있다.

- HTML5, CSS, 자바 스크립트로 개발된 모바일 웹 어플리케이션이 W3C의 Device API 등을 통해 직접 디바이스를 제어하게 된다면 아주 재미나고 놀라운 것들이 가능하다. 가령, 웹 서버와 Device API를 지원하는 냉장고용 제어 프로그램을 개발하면 사용자는 핸드폰의 브라우져를 통해 냉장고에 접속한 후 해당 프로그램을 사용할 수 도 있으며 특정 상품의 재고가 부족하면 자동으로 특정 웹 쇼핑몰에 주문을 내게 할 수도 있다.

HTML5 표준은 2012년 정도에 완성될 것으로 예상되고 있다. 그러나 일반적으로 표준에 앞서 관련 업체들의 모바일 웹 관련 기술은 더욱 빠르게 발전할 것이다. 과거 우리는 IBM의 호스트 환경에서 데스크탑 기반의 클라이언트/서버 환경으로, 그리고 다시 웹으로 변화를 할 때 마다 이를 미리 준비하지 못할 경우 막대한 비용을 지불해야 만 했다. 이처럼  모바일 개발자들과 디바이스 개발자들은 다가올 모바일 웹 환경을 위해 미리 준비를 해야 할 것이다.

이 글은 ZDNET에 기고한 글 입니다.

Posted by 박재현

댓글을 달아 주세요

  1. Favicon of https://emotionbank.tistory.com BlogIcon 감정은행 2009.09.01 13:30 신고  댓글주소  수정/삭제  댓글쓰기

    잘 읽었습니다. 모바일 플랫폼에 대한 고민은 정말 해결점이 없어보이네요...쩝..

  2. Favicon of http://eliot.tistory.com BlogIcon 상하이신 2009.09.02 18:16  댓글주소  수정/삭제  댓글쓰기

    좋은 글 잘 읽었습니다. 제목이 제 생각과 같아서 내용을 보니 더욱 공감이 가네요^^

  3. Favicon of http://hackperl.tistory.com BlogIcon 창민짱 2009.09.02 19:51 신고  댓글주소  수정/삭제  댓글쓰기

    훌륭한 통찰력이십니다.

  4. 하오마루 2010.11.10 15:08  댓글주소  수정/삭제  댓글쓰기

    모바일웹은 사용성이 떨어져서 단순한 화면을 가진 app에 국한 될 것으로 보입니다. html5에서 부지런히 사용성 개선을 위해서 노력중이나 html가지고 될까 하는 회의가 듭니다. 사실 모바일웹은 이전에도 있었으나 웹 스토어방식이 현저히 사용성이 좋아서 더 선호하는 것입니다. html에 canvas추가되었어도 간에 기별도 안갈것 같은데요..


사용자 삽입 이미지
최근에는 여러 이슈들이 있는 것 같습니다. 오라클의 선 인수, 한컴의 공개 매각 진행 , IBM의 클라우드 사업에 대한 본격적 참여, 안드로이드 1.5 등등... 특히, 제가 과거 한컴 씽크프리의 CTO를 했던 전력때문인지 여러 곳에서 한컴 인수에 대한 의견을 많이들 묻고 합니다. 물론 대답하기가 당연히 곤란하기에 그냥 웃고 말았습니다. ^-^

하여간 어차피 중요한 것은 대세가 아닐 까 싶습니다. 이미 우리가 살고 있는 이 세상은 웹이란 거대한 흐름에 의해서 많은 변화를 가져오고 있기 때문입니다. 이러한 거래한 흐름을 한 단어로 표현한다면 연결(Link)라고 표현할 수 있습니다. 웹의 링크에 대한 과학적이자 철학적 분석은 바라바시의 링크 라는 책을 참조하시면 좋을 것 같습니다. 바라바시는 웹 상에서 노드와 노트간의 연결에 대해 많은 이해를 도와주고 있습니다.  결국 웹은 모든 것을 빨아드리며 연결시켜 나가고 있습니다. 아마 이것을 더욱 가속화하는 것이 바로 스마트폰 같은 모바일 디바이스(이하 디바이스)일 것 입니다.

이렇듯 디바이스와 웹간의 상호연결성은 계속해서 확장될 것이며 디바이스는 보다 많은 서비스를 웹과의 상호작용을 통해 제공할 것이며 궁극적으로는 디바이스 자신 또한 웹 컨텐트를 생성해 내는 노드가 될 것 입니다. 실제 이미 안드로이드 OS는 웹 서버처럼 서비스를 감지하고 제공할 수 있는 모델을 제공하고 있으며 이러한 기능들을 통해 디바이스가 서로 상호작용하게 될 것입니다.

이러한 환경에서는 웹상의 노드에 위치하고 있는 서비스간의 데이타 동기화가 중요한 부분으로 대두됩니다. 가령, 중앙의 웹에 자신의 데이타와 프로그램을 모두 올려놓고 디바이스를 통해 필요한 데이타와 프로그램을 부분적으로 이용하고 동기화시키는 것이 필요합니다. 마찬가지로 집에 있는 PC 에서도 동일한 데이타와 프로그램이 필요해집니다.

다소 미흡하지만 이러한 동기화에 대한 기능 명세에 대한 표준화가 있습니다. 바로 OMA DS 표준 또는 Sync ML 입니다. 이 표준은 디바이스간 데이타 동기화에 대한 표준으로 Sync ML 과 6가지 동기화 모델을 제시하고 있습니다. - Fast Sync , Slow Sync , One way Sync from Server , One way Sync from Client , ㅊ , Refresh Sync from Server.

간략히 보면 Fast Sync가 client가 server에게 변경된 데이타만을 동기화하도록 요청하는 데 반해 Slow Sync는 모든 데이타를 동기화한다는 면에서 다릅니다. 또한  One way Sync from Server는 서버가 클라이언트에게 변경된 데이타에 대한 동기화를 요청합니다. 반대로 One way Sync from Client는 클라이언트가 서버에게 동기화를 요청합니다. 마지막으로 Referesh Sync from Server는 서버가 클라이언트에게 모든 데이타의 동기화를 요청하고 반대로 One way Sync from Client는 클라이언트가 모든 데이타의 동기화를 서버에 요청합니다.

실제 OMA DS 표준은 디바이스와 다른 디바이스간의 2 Way 방식의 동기화만을 명시하고 있다는 점에서 제약을 가지고 있습니다. 다시 말해, 실제 수 십대에서 수 백대의 디바이스상에서 다양한 서비스들이 데이타를 동기화하기 어렵습니다. 이를 위해서는 약간의 확장이 필요합니다. ^-^

이러한 동기화 기능을 이용하기 위해서는 기본적으로 Device에 OMA DS 모듈이 탑재되거나 OMA DS 서버에서 제공하는 OpenAPI를 디바이스에서 이용해야 합니다. 실제 디바이스 분야에서는 이미 OMA DS나 독자 싱크 방법을 사용하여 오래전 부터 디바이스상의 데이타를 동기화하는 기능들을 지원하고 있습니다. 가령,  심비안 , 블랙베리 , 안드로이드(현재 개발중) 등은 OMA DS를 사용하고 있으며 MS Windows CE의 ActiveSync를 사용하여 디바이스상의 데이타를 동기화하고 있습니다.

디바이스간의 2 Way 기능을 인트라넷까지 확장하여 기업의 리거시 데이타를 쉽게 모바일 웹으로 개발하기 위한 프레임웍으로 최근 오라클에 팔린 선은  GlassFish Mobile Framework 1.0을 릴리이즈 하였습니다. 이 플랫폼에는 서버측의 GlassFish와 JavaME상의 디바이스 응용 프로그램을 SyncML을 통해 동기화시켜 주는 서비스를 제공해 주고 있습니다. 특히, 재미난 기능으로는 Device상에서 Rest기반의 API를 호출할 수 있게 해주는 JerseyME 라이브러리를 내장하고 있습니다. 디바이스상의 개발자들은 JersyME를 사용하여 Rest API를 직접 호출하여 사용할 수 있습니다. 또한 JerseyME는 Device상에서 Cache 기능을 제공하기 때문에 서버와 연결이 되지 않은 오프라인 상태에서도  디비이스 응용 프로그램을 구동시킬 수 있는 기능을 제공하고 있습니다.

모바일 디바이스의 성장과 더불어 웹 노드간의 동기화는 보다 중요한 요소로 자리잡을 것 입니다. 조만간 국내에서도 멋진 플랫폼이 나올 예정이니 한번 기대해보세요. ^-^

Posted by 박재현

댓글을 달아 주세요

  1. 2010.02.10 20:56  댓글주소  수정/삭제  댓글쓰기

    비밀댓글입니다


사용자 삽입 이미지
안드로이드 1.5의 프리뷰 버전이 릴리이즈되었습니다. 

http://developer.android.com/sdk/preview/


1.5에서는 UI의 전면적인 개선과 더불어 단말상의 반응 속도 및 화면 전환 속도 등 반응 속도를 개선하고 홈스크린 위젯, 가상 키보드가 추가되었습니다. 최근의 터치 인터페이스 등 모바일 디바이스의 인터페이스 트렌드를 반영하여 MID , Netbook 등 다양한 모바일 디바이스 개발시 미려한 UI 개발이 가능하게 되었습니다.  안드로이드 1.5의 주요한 기능들은 다음 링크를 참조하세요.

http://developer.android.com/sdk/preview/features.html


이들 주요 기능 중 구글의 주요한 전략으로 웹과 연동되는 주요한 기능들에 대해 좀 정리해 보고자 합니다. 특히, 웹과 연동되는 API를 통해 보다 상상력이 풍부한 어플을 개발할 수 있기 때문에 디바이스 개발 플랫폼과 웹 플랫폼간의 연동은 아주 중요하다고 생각합니다. 특히, 디바이스상에서 처리할 수 없는 기능들은 더욱 그러합니다.

- 음성인식 프레임웍
- LocationManager
- 구글 어플리케이션 연동
   Presence : Contacts, SMS, MMS, GMail, Email 어플리케이션에서 구글 톡의 Presence 정보 보기 API
   Gmail 메세지의 아카이브, 삭제, 레이블 같은 배치 작업
   유튜브 비디오 업로드 API 
   피카사 사진 업로드 API

아마 위와 같이 구글 웹 플랫폼을 보다 효과적으로 활용하는 API들이 제공될 것으로 생각합니다. 기존의 다른 SDK와 차별화하며 상상력이 풍부한 어플을 개발하는 데 있어 웹 만큼 신선한 재료가 없기 때문입니다.

또한 안드로이드 1.5는 애플의 아이폰SDK, 심비안 등과의 SDK 경쟁에서 한발 나가가겠다는 구글의 의도가 였보입니다.

 지금은 스마트폰 SDK 전쟁중

2008년 12월 5일 SDK1.0 릴리이즈2가 발표된 이후에 불과 4달만에 1.5가 발표되었으니 그 속도가 기존의 심비안과 애플의 아이폰SDK보다 빠릅니다.아마 오픈소스 개발 방법론의 파워 아닌가 싶습니다. 열심히 다운로드 받고 있는 데 이모저모 테스트를 좀 해 봐야 겠네요. SDK가 159M인데 애플SDK에 비하면 감사하네요.^-^



Posted by 박재현

댓글을 달아 주세요

  1. Favicon of https://wisefree.tistory.com BlogIcon 박재현 2009.04.17 01:23 신고  댓글주소  수정/삭제  댓글쓰기

    설치 후 실행을 하면 "Failed to find an AVD compatible with target 'Android 1.5'. Launch aborted." 이런 에러가 발생합니다. 이런 경우에 AVD(Android Virtual Device)가 생성이 안되어 있어서 그렇습니다. 아무 생각없이 c:>android create avd --name my_avd_name --target 1 , c:>android create avd --name my_avd_name --target 2라고 해서 AVD를 생성하면 됩니다.


최근에 애플은 아이폰 SDK 3.0을 소개를 했습니다. 각각의 기능들을 다른 SDK들과 비교한 자료가 눈에 띠어 공유해 봅니다. - http://i.gizmodo.com/5173865/giz-explains-what-makes-the-five-smartphone-platforms-different. 표를 통해 각 SDK간의 주요 차이를 일목요연하게 정리해 볼 수 있을 것 같습니다.

사용자 삽입 이미지

기능 위주의 비교와 더불어 현재 각 SDK들은 놀라운 속도로 기능과 성능을 업그레이드하고 있습니다. 가히 전쟁이라 할 수 있습니다. 아래 일정은 최근 심비안에서 발표한 2009년 이후의 Release 일정입니다.

사용자 삽입 이미지

2010년까지 3번의 Major Release가 잡혀있는 걸 보면 상당한 변환가 기대됩니다. 또한 기존 심비안 개발자에게 안정적인 일정을 미리 제공함으로써 커뮤니티 개발자의 동요를 막는 효과가 있을 것 입니다. 이처럼 현재 모바일 SDK는 전쟁에 있어 기능의 차별화 더불어 속도는 가장 중요한 경쟁력인 것 같습니다. 이런 걸 디지탈 사시미전략이라고 하죠...^-^  - 디지탈 사시미 전략과 소프트웨어 개발


Posted by 박재현

댓글을 달아 주세요

  1. Favicon of https://okgosu.tistory.com BlogIcon okgosu 2009.03.24 03:24 신고  댓글주소  수정/삭제  댓글쓰기

    '디지탈 사시미 전략' 멋진 말입니다...
    잘 지내시죠?

    with okgosu (-..-)a

  2. Favicon of https://wisefree.tistory.com BlogIcon 박재현 2009.03.24 21:47 신고  댓글주소  수정/삭제  댓글쓰기

    네, 잘 지내고 있습니다. 요즘 근황이 어떤지 메일 한번 주세요..^-^




모바일 개발자들에게 있어 가장 큰 어려움이 무엇일까요? 아마도 각기 다른 운영체제와 개발 환경(SDK)이 가장 큰 어려움일 것입니다. 잠시 2008년도 스마크폰 판매 현황을 보면 그 어려움을 짐작할 수 있습니다.

2008년 스마트폰의 판매대수를 보면 1억 3천 9백만대 가량이다. 이중 심비안이 7천 3백만(53.4%) , RIM이 2천 3백만(16.6%), MS Mobile이 1천 6백만(11.8%) , 맥OS가 1천1백만대(8.2%) , 리눅스 1천 1백만대(8.1%) , 팜 2백 5십만대(1.8%) , 기타 백오십만대(1.1%) 이다.

이렇듯 다양한 플랫폼과 개발환경에서 무엇을 주전공으로 선택할 것인가는 아주 중요합니다. 시장이 보여야 전공도 의미가 있으니까요!  과거 자바가 Write Once, Run Everywhere 라는 캣치프레이즈를 내세워 개발자를 유치하여 성공한 것처럼 현재 모바일 개발자들에게도 Write Once, Run Everywhere의 환경이 절대적으로 필요한 상황입니다. 한번만 모바일 어플리케이션을 작성해서 애플스토어와 구글 마켓 등 다양한 곳에서 팔 수 있다면 얼마나 환상적이겠는지요^-^

2009/03/04 - [Mobile Service] - 어플리케이션 마켓플레이스 춘추전국시대, 인디스토아가 뜬다.


며칠 전 , 상당히 의미있는 소식을 접했었습니다.  3월 10일 Eclipse Foundation에서  Pulsar를 발표하였습니다. Pulsar는 표준 Mobile Application developments tools platform을 정의하기 위한 새로운 산업계 협의체입다. 여기에는 Motorola, Nokia, Genuitec 등에 의해 주도되고 있으며 IBM, RIM, Sony Ericsson 등이 members로 참여하고 있습니다.

Pulsar 는 기존의 JavaME을 비롯한 native Mobile platform을 지원할 것이라고 합니다. 다시 말해 Pulsar는 다양한 모바일 디바이스의 SDK와 호환되는 패키지를 개발.배포할 수 있는 플랫폼을 제공한다는 것 입니다. 예를 들어, 자바나 C++같은 기존의 표준 언어로 개발을 한 후 , 심바안용 어플리케이션이나 안드로이드용 어플리케이션으로 패키징을 하여 배포할 수 있게 해 줍니다.  현재 Pulsar는 2009년 6월말 이클립스 갈릴레오 버전에 포함되어 첫번째 릴리이즈될 것으로 알려져 있습니다.

Pulsar는 다른 모바일 SDK와의 호환을 통해 개발 환경을 하나로 통합하는 것을 목표로 하고 있습니다. 이러다 보면 특정 SDK에 특화된 기능은 사용하지 못하거나 별도의 작업을 해야 하는 상황에 직면할 수도  있습니다. 또한  Apple, Microsoft, 구글 Android와 등은 이미 선도기업으로서  Pulsar에 큰 매력을 갖지 못할 것 입니다. 그러나
Pulsar가 해결하려는 문제는 모바일 개발자들이 겪고 있는 개발 환경상의 어려움을 해결하기 위한 첫번째 오픈소스 커뮤니티의 노력이며 반드시 해결돼야 할 문제입니다. 우리는 이미 오픈소스 커뮤니티에서 의외의 기적같은 결과들을 만들어내는 것을 수 없이 보아왔습니다. Pulsar가 이러한 기적같은 결과물을 내길 희망합니다.^-^.

자바로 코딩해서 심비안 어플리케이션으로 패키징을 하는 그날을 기대하며! 메일링 리스트에 가입을 했는 데 좋은 소식이 오면 공유토록 하겠습니다.

앗! 벌써 새벽 2시..윽 출근하려면 억지로 라도 자야 할 듯 하네요^-^

Posted by 박재현

댓글을 달아 주세요

  1. 선데이모닝 2009.03.20 20:20  댓글주소  수정/삭제  댓글쓰기

    Pulsar 정말 끌리는데요

  2. Favicon of https://wisefree.tistory.com BlogIcon 박재현 2009.03.23 01:14 신고  댓글주소  수정/삭제  댓글쓰기

    시간은 좀 걸리겠지만 정말 필요한 시도이고 이클립스 커뮤니티에서 진행하는 일이라 결과 또한 기대가 됩니다^-^. 아마 상황에 따라서는 구글과 심비안이 좀 적극적인 함께 해준다면 좋은 결과가 있을 것 입니다.