요즘 구글의 안드로이드 플랫폼, 애플의 iphone 등 기존의 단말 플랫폼의 한계를 벗어나는 새로운 단말 플랫폼들이 나타나고 있는 상황입니다.. 어찌보면 단말 플랫폼의 패러다임이 변하고 있다고 볼 수 있습니다. 기존의 마이크로소프트의 윈도우 모바일이나 노키아의 심비안 등도 새로운 플랫폼들과 경쟁하기 위해서 서비스 플랫폼등과 같은 다양한 것들을 준비하고 있는 것 같습니다.

 저는 이 시점에서 모바일 플랫폼 상에서의 Native Application과  Web Application을 비교해 보고 싶네요. 지금 시점에서의 저의 고민거리 중의 하나이기도 합니다.

Native Application

1. 개발을 위해 필요한 것들 : 
플랫폼에 의존적인 개발환경들.
  애플 아이폰 : 개발언어 Objective-C, 그리고 현재 mac os 에서만 돌아가는  iphone sdk (xcode 등)
  구글 안드로이드 플랫폼 : 개발언어 Java, 그리고 안드로이드sdk, 현재 윈도우, 리눅스용 둘다 존재함.

2. 어플리케이션 배포의 관점:
 과거의 경우 모바일 환경에서는 소프트웨어 배포가 하나의 골치거리였다. 기존의 모바일 어플리케이션의 경우는 WAP을 통해서 다운을 받을 수는 있었지만 기본적으로 다양한 어플리케이션을 배포 할 수 있는 플랫폼이 존재하지 않았고 그로 인해 사용자에게 많은 불편을 야기하였습니다. mp3 배포의 경우에도 애플사의 itunes는 새로운 배포 플랫폼으로 많은 이슈를 만들었지만 애플사는 itunes를 이용하여 iphone의 native 어플리케이션을 배포할 수 있도록 만들었고, 그것을 통하여 새로운 비즈니스 기회까지 창출하였습니다. 결론적으로 소프트웨어 배포가 기존에 비해 상당히 쉬워졌고, 다른 모바일 플랫폼 제공업체들도 애플의 배포 플랫폼을 참고 하여 비슷한 배포 플랫폼을 제공하지 않을까 싶습니다.

3. 장점 :
 빠른 동작 속도,
 네트워크 접속이 불가능한 지역에서도 동작 가능,
 데이터 통신이 필요한 어플리케이션일 경우라도 어느 정도 기본적인 동작을 수행할 수 있다.
 지속적인 네트워크 연결이 필요하지 않음으로 인해서 전원관리 측면에서도 효율적이다.

4. 단점 :
 하나의 플랫폼에 종속적으로 어플리케이션을 개발하였을 경우, 어느 정도의 알고리즘은 공유할 수 있으나 완벽하게 재사용 불가능하므로 다양한 플랫폼을 지원하기 위해 많은 개발 리소스를 필요로 한다(웹 어플리케이션 대비). 결국 하나의 서비스를 여러개의 플랫폼에 제공하기 위해서는 그 만큼 개발자의 고생이 필요해진다.


Web Application

1.  개발을 위해 필요한 것들 :
 웹브라우져에 의존적인 개발환경들 :  현재 아이폰의 모바일 사파리와 구글 안드로이드의 웹브라우져는 모두 Webkit을 기반으로 동작하고 있다.
 서버 측 언어 한개 : PHP, ASP.net rails 등 중에서 택1
 그리고 웹페이지 개발에 필요한 javascript(AJAX), HTML, CSS 정도의 기술.

2. 어플리케이션 배포의 관점 :
 웹어플리케이션은 브라우져를 통해서 주소창에 서비스 제공 주소만 입력하면 접근이 가능하므로 네이티브 어플리케이션에 비해서 쉽게 서비스에 접근할 수 있는 장점을 가지고 있다. 간단한 북마크를 저장해서 지속적으로 쉽게 서비스에 접근 가능할 수 있다.

3. 장점 :
 하나의 웹 어플리케이션의 개발로도 다양한 플랫폼에 적용가능하다. 완벽하게 재사용 불가능하더라고 단말플랫폼의 성향에 맞게 소소한 UI 작업만을 통해서 여러 플랫폼을 지원해줄 수 있다.

4. 단점 :
 네트워크 접속이 불가능한 지역에서는 동작 자체가 불가능하다. 동작하는 동안 계속적인 네트워크 연결이 이루어짐으로 전원관리 측면에서 사용자에게 불리하다. 특히 모바일 어플리케이션일 경우 전원 사용시간에 사용자가 상당히 민감하므로 부정적으로 비춰질 수 있다.
 
결론
 
 간단하게 웹어플리케이션과 네이티브어플리케이션을 비교해보았습니다. 기존의 저의 입장은 웹어플리케이션을 제공하는 것이 상대적으로 조금이나마 유리한 위치를 차지하고 있다고 생각했었으나, 현재는 입장이 불분명합니다.

 입장이 중립적인 위치로 변한 가장 큰 이유는 역시 애플에서 제공한 네이티브 어플리케이션의 배포 플랫폼(itunes를 통한 어플리케이션 설치)입니다.
 간단한 어플리케이션의 설치는 또 하나의 장점입니다. 사용해 보면 알겠지만 어플리케이션 설치라고 표현하기도 좀 민망할 정도로 간단합니다. 그냥 어플리케이션을 선택에서 구매하고 기존의 음악 파일을 동기화 하듯이 구매한 어플리케이션을 선택하고 동기화만 시키면 아이폰에서 어플리케이션을 사용할 수 있습니다.  
 그리고 개발자에게 새로운 비즈니스 기회를 제공하는 것 또한 큰 매력입니다. 어느 정도 비슷한 노력이 필요하다면 돈을 벌 기회를 마다할 필요가 없지 않을까 싶습니다.
 이런 이유들로 인해 저는 아직도 고민중입니다. 결국 상황에 따라 해결책도 달라지겠지만 쉽게 결론이 날 것 같지는 않습니다.

2008/11/10 22:00 2008/11/10 22:00
from Webdev/Mobile Web 2008/11/10 22:00

Trackback Address :: http://smith17.net/tc/trackback/105

댓글을 달아 주세요

[로그인][오픈아이디란?]