네이티브앱

해시넷
218.146.11.146 (토론)님의 2019년 9월 4일 (수) 15:32 판 (단점)
이동: 둘러보기, 검색

네이티브 앱라는 용어는 아이폰에서 없었다. 2007년 초반부터 일반 앱개발에 웹기술을 활용한 방법이 나오자, 순수한 네이티브 코드로 작성한 앱과 Webkit기반 웹기술을 일부 활용한 앱을 기술적으로 구분하기 위해 네이티브앱과 하이브리드앱으로 나눠 부르게 되었다. 모바일 기기에 최적화 된 언어로 개발 된 앱으로 안드로이드 SDK를 이용해 Java(자바)언어로 만드는 앱과 iOS 기반 SDK를 이용해 Objective-C, Swift(스위프트)로 만드는 대부분의 앱이 여기에 속한다.

특징

장점

  • 특정 플랫폼에 최적화된 언어로 개발되기 때문에 카메라, GPS 등 그 플랫폼을 이용한 디바이스의 최신 기능을 활용할 수 있다.
  • 모바일 운영체제에 있는 커널과 UI 프레임 워크가 제공하는 서비스를 직정 호출해 실행하므로 실행속도가 빠르고 안정적이다.
  • 인터넷이 사용 가능하지 않는 환경에서도 일부 기능을 작동이 가능하다.
  • 고성능의 그래픽 처리가 가능하다
  • 모바일기기의 최적화되어 있는 앱니다.

단점

  • 특정 디바이스 및 운영 체제에서만 작동하기 때문에 제한적인 환경을 가지고 있다.
  • 다른 방식들보다 높은 수준의 기술력이 요구된다.
  • 개발기간이 오래걸리며, 개발 비용도 다른 앱들에 비해 많이 든다.
  • 배포 시 각 앱 스토어의 승인절차를 거쳐야 하므로 배포 속도가 느리다.
  • 안드로이드와 같이 버전별, 제자소 별 제품마다 다른 해상도를 제공을 하게 되면 단편화가 심각하다.

대안

디바이스의 최신 기능과, 해당 디바이스에서 빠르고 안정적으로 이용할 수 있지만, 개발 비용과 시간이 많이 들며, 업데이트 또한 오래 걸린다. 하지만 이런 네이티브 앱과 완전히 상반된 것이 웹 앱이다. 성격에 따라 달라도 보통 네이티브 앱은 데이터를 디바이스 상에 저장한다. 하지만 웹 앱은 데이터를 원격지에 저장하고, 이를 브라우저 인터페이스를 통해 디바이스에 구현한다. 일반적인 웹사이트를 스마트폰 등 모바일 디바이스의 크기에 최적화 시켜놓은 것이라고 이해할 수 있다. 개발 비용이 적고 업데이트는 빠르지만, 디바이스의 하드웨어 기능을 활용할 수 없고, 작동과 반응이 느리다. 네이티브 앱과 웹 앱의 장점을 결합시킨 것이 하이브리드 앱이다. 웹 앱을 네이티브 앱으로 포장한 개념이며, 개발은 웹 기술로 하고 외부만 네이티브 앱 언어로 씌우는 형태이다. 이를 위해서 폰갭과 같은 하이브리드 앱 프레임워크가 등장하게 되었다.[1]

활용

심삭 센서나 GPS, 가속도계, 탭틱 엔징 등 애플 워치에 탑재된 다양한 하드웨어적 기능을 서드파티 앱이 이용하지 못해서 애플 워치의 잠재적인 가능성이 발휘되지 않았다. 하지만 애플워치 2를 통해 이러한 하드웨어를 직접 이용할 수 있게 되면서[2], 서드파티 개발자들이 이를 십분 활용한 창의적인 앱을 개발할 수 있게 되었다. 고성능 그래픽 처리로 2D 및 3D 게임이나 증강현실에서 쓰이고, 다음세대재단이 제작한 소리아카이브 아이폰 앱이 네이티브 앱이라고 할 수 있다.[3] 또한 네이티브 앱으로 만들어진 카카오뱅크도 과도한 트래픽에 실시간 대응이 가능했었다.[4]기존의 설치 되어 있는 카메라, 블루투스 기능, GPS 등의 앱들이 대부분은 네이티브 앱이라고 볼 수 있다.

참고자료

각주