회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
최초의 스마트폰 ‘IBM 사이먼’
회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
최초의 스마트폰 ‘IBM 사이먼’
14년 뒤 2007년 아이폰이 등장했습니다. 아이폰의 등장은 어쩌면 혁명 그 자체였습니다. 단지 애플의 감성을 극대화 한 정교한 터치스크린만을 얘기하는 게 아닙니다. 아이폰에서 구현할 수 있는 다양한 응용프로그램은 스마트폰의 시대를 열었습니다. 이전의 휴대전화는 제조회사에서 직접 만들어 내장한 응용프로그램에 한정돼 있었습니다. 그러나 아이폰은 '애플리케이션'(앱)을 통해 그 무한한 가능성의 지평을 연 것이지요. 실제로 아이폰이 나온 지 3년 만인 2010년 애플의 앱스토어에는 24만개의 앱이 올라왔습니다. 앱으로 게임도 할 수 있고, 은행 계좌를 확인할 수 있고, 뉴스도 읽을 수 있었습니다. 애플리케이션 설치를 통한 기능의 무한대 확장은 우리의 삶을 바꿔놓았습니다.
바로 여기서 '네이티브앱'(Native App)이 등장합니다. 토착앱, 현지앱 정도로 해석할 수 있지요. 바로 스마트폰에 설치돼 이를 기반으로 구동되는 앱을 말합니다. 또다른 말로 '설치형 앱'이라고 합니다. 스마트폰에서 인터넷을 거치지 않고 바로 실행할 수 있는 앱입니다. 자신이 좋아하는 애플리케이션을 스마트폰에 설치하고 언제든 자유롭게 이용할 수 있고, 아이콘의 터치만으로 간단히 작동되는 게 장점입니다.
물론 네이티브앱을 만들려면 모바일 운영체제(OS)에서 제공하는 툴을 활용해야 합니다. 소스코드를 작성하고 이를 스마트폰이 인식할 수 있도록 컴파일(인간이 작성한 컴퓨터 언어를 스마트폰이 이해할 수 있도록 해석하는 것)해야 합니다. 네이티브앱은 스마트폰의 OS가 제공하는 툴과 언어들 기반으로 하기에 높은 사양의 그래픽과 성능을 보입니다. 그런 만큼 앱의 구동 속도도 빠릅니다. 아울러 스마트폰 전체에 접근할 수 있는 권한을 가질 수 있기에 주소록과 캘린더 등 고유의 정보도 사용할 수 있습니다. 그러나 구글이나 아이폰 등 OS별로 앱을 개발해야 하기에 앱을 만들 때 기간이나 비용이 많이 드는 편입니다.
이러한 단점을 극복하고자 '웹앱'(Web App)을 개발했습니다. 모바일 웹을 통해 특정 홈페이지에 들어가기만 해도 앱처럼 구현되는 일종의 유사 앱입니다. 실제로 웹앱은 굳이 스마트폰에 앱을 설치할 필요가 없습니다. 웹 메일과 온라인 전자상거래, 인터넷 게시판, 블로그나 MMORPG 게임 등을 웹앱으로 구현하는 경우가 많습니다. 웹앱은 웹 기술만을 이용해 풀 스크린 모드와 애니메이션 효과, 터치 상호작용, 비동기 통신, 로컬 저장소 등을 구현합니다. 사용자 입장에선 앱을 스마트폰에 설치하지 않아도 되고 주기적으로 업데이트할 필요도 없습니다. 개발자 입장에서도 장점이 있습니다. HTML5와 같은 표준 웹 언어로 만들기에 제작 비용도 저렴하고, 개발 기간도 비교적 짧습니다. 물론 단점도 있습니다. 기능상 제한이 많이 따른다는 점입니다. 웹앱은 처음부터 스마트폰에 최적화해 만들 수가 없어 느릴 수밖에 없습니다. 또 스마트폰에 저장된 정보나 카메라 등 스마트폰의 고유의 기능을 이용할 수 없는 게 한계로 꼽힙니다.
그래서 등장한 게 '하이브리드앱'(Hybrid App)입니다. 두 방식의 장점을 살렸습니다. 네이티브앱에 웹뷰(View)를 띄워 웹앱을 실행시키는 것이 일반적이며 양쪽의 API(Application Programming Interface·프로그래머가 사용할 함수 라이브러리에 접근하기 위한 규칙들을 정의한 것)를 모두 사용할 수 있는 게 큰 장점입니다. 이 때문에 다양한 프로그램 개발이 가능합니다. 웹 기술로도 모바일 기기의 고유 정보와 상호작용을 할 수 있도록 하고, 앱 스토어에 올려 판매할 수도 있게 됩니다. 기본 기능은 HTML5 등의 웹 문서로 구현되기 때문에 빠르고 편리하게 앱을 유지보수 할 수 있습니다. 물론 하이브리드앱도 단점이 있습니다. 네이티브앱보다 사용자 편리성과 디자인이 취약하며 성능은 떨어질 수밖에 없습니다. 또 앱에 웹 브라우저를 실행해 콘텐츠를 제공하기 때문에 인터넷 속도에 따라 앱의 속도 자체가 느려질 수도 있습니다.
이처럼 우리의 삶을 변화시킨 스마트폰 앱은 진화에 진화를 거쳐 왔습니다. 앞으로도 기술 환경이 진보를 거듭할수록 또다른 앱 구동방식은 등장할지도 모릅니다. 앱을 조금이라도 더 편리하고 효율적으로 개발하려는 프로그래머분들의 수고에 경의를 표합니다.