네이티브 앱 vs.웹 앱 - 사용자 경험(UX)에 비추어 본 모바일 앱의 발전 방향

앱을 개발하기 앞서

네이티브앱 웹앱 그리고 하이브리드앱은 각각 장단점을 갖는다. 개발자인 나의 입장으로서는 안드로이드, 아이폰 그리고 더 많은 형태의 플랫폼을 지원하기 위해서 웹앱으로 만들어버리는 게 편하다.

그런데 문득 드는 생각이 과연 개발의 관점에서의 장점만을 추구하는것이 맞을까? 이 후 이 앱을 사용할 사용자들의 편리성, 직관이 더 중요하지 않을까?

 

아래 내용은 Charland가 저술한 "Mobile Application Development: Web vs. Native"에 관해 번역 정리한 내용이다. 

 

 


 

Mobile Application Development: Web vs. Native

웹 앱의 개발, 배포가 네이티브 앱보다 저렴하지만 과연 UX도 네이티브 앱에 필적할까?

 

 

애플이 아이폰을 출시하면서 모바일 디바이스의 모든 것이 바뀌었으며 모바일에 대한 사용자의 기대UX 또한 완전히 변해버렸다. 3년후, 네이티브 앱은 엄청나게 유행했고 (보통 성능의 이유로) 모바일 웹은 네이티브 앱에 비해 뒤떨어졌다.

 

 

 

문제발생

여기에는 2가지 문제가 있다. 첫째, 각 플랫폼에 맞는 다른 네이티브 앱을 만드는 것은 매우 비효율적이다. 가령 개발 상황이 완전히 다른 아이폰 앱과 안드로이드 앱을 만들기 위해서는 2배의 노력이 필요한 것처럼. 둘째, 네이티브 앱이 빠르다는 성능 문제는 3D 게임이나 이미지 프로세싱을 하는 앱에서나 적용되는 말인데,  웹 기술을 이용하는 잘 만들어진 사업 어플리케이션에서는 이것이 문제가 되지 않는다.

 

 

 

Native Code vs Web Code

실제 플랫폼 SDK 차이에서 비롯된다. 이는 툴, 빌드 시스템, API, 각 플랫폼에 맞는 디바이스들의 차이가 생긴다. 이러한 시스템이 가지는 하나의 공통점은 네이티브 코드로부터 프로그래밍 방식으로 접근할 수 있는 모바일 브라우저가 있다는 것이다. 각 플랫폼은 네이티브 코드로부터 자바스크립트 인터페이스로 브라우저에 접근 가능하게 한다. JavaScript 가상 머신 기술은 브라우저 전쟁에 대한 새로운 최전선이며 모든 주요 기업들이 자바스크립트에 투자하고 있다. 트렌드는 낮은 레벨에서 실행되는 웹 기술 스택이며 이는 수많은 디바이스에 존재한다.

 

 

 

User Interface Code

대부분의 네이티브 플랫폼은 훌륭한 사용자-인터페이스 컨트롤과 경험을 가진다. 반면 웹의 사용자 인터페이스는 네이티브 코드가 접근할 수 있는 가장 아래 단계에 속한다. (그렇지만 계속해서 웹 기술과 네이티브 코드의 간극이 메워지고 있다)

 

 

 

User Experience

네이티브와 웹 어플리케이션에 영향을 미치는 것은 사용자가 소프트웨어 어플리케이션에서 경험하는 모든 것들을 뜻하는 UX(User Experience)이다. 이는 변경되거나 컨트롤 될 수 없는 요소인 "context"와 어플리케이션에서 컨트롤될 수 있는 요소인 "implementation"으로 나뉜다. context는 플랫폼 수용력, UI 규제, 어플리케이션이 사용되는 환경을 포함하며 implementation은 성능, 디자인, 플랫폼 특성과 통합을 뜻한다. 최상의 UX를 제공하기 위해 implements는 사용자의 특정 context에 의해 설정된 기대를 지원하는 코드와 디자인을 제공해야한다.

 

 

 

결론

네이티브와 웹의 논쟁 속에서 균형을 잡아야한다. 모든 기술이 브라우저로 가능하게 될 때까지 "PhoneGap"과 같은 하이브리드 앱이 격차해소에 도움이 될 것이다.

 

 

 

출처 : https://dl.acm.org/doi/10.1145/1966989.1968203
반응형
그리드형

댓글

❤️김세인트가 사랑으로 키웁니다❤️