[네트워크] 애플리케이션의 종류

박채은·2022년 11월 29일
0

네트워크

목록 보기
1/6

네이티브 앱

  • 특정 기기에 설치해서 사용하는 애플리케이션을 네이티브 앱이라고 부름
  • 모바일 기기에 최적화된 네이티브 언어(개발 언어)로 개발된 앱
  • 스토어에 등록된 대부분의 앱은 네이티브 앱이다.
  • 개발 : 해당 운영체제에 최적화되어 있는 개발 도구(SDK)로 제작
    • 안드로이드 SDK : Kotlin, JAVA
    • iOS SDK : Swift 등
  • 실행 : 스토어에서 다운해서 설치(PC로 접속 불가)

장점

  • 좋은 성능, 빠른 속도, 안정성(각 운영체제에 최적화된 방식으로 만들어지기 때문에)
  • 인터넷 없이 사용 가능
  • 디바이스 접근 권한 O
    ex) 카메라, 마이크, 푸시 알림, GPS 등의 최적화

단점

  • 실행 환경(운영 체제)에 종속되어 있음
    = 각 운영체제별로 개발해야 한다.
    = 개발 비용, 시간이 많이 든다.
  • 스토어의 심사 과정이 필요(스토어의 심사 과정은 매우 까다로움)
  • 업데이트 할 때마다, 스토어를 통해야 한다.

모바일 웹웹 앱은 모두 웹 애플리케이션이다.
따라서 약간의 차이점은 있지만, 장점/단점은 동일하다.

모바일 웹

  • 모바일 화면에 맞게 구성한 웹
    (PC 웹 페이지를 그저 모바일에 맞게 줄인 형태)
  • 개발 : 웹 개발 방식과 동일(html, css, javascript)
  • 실행 : 웹 브라우저

웹 앱

  • 형태와 구동 방식이 마치 네이티브 앱 같지만, 웹 기술을 활용해서 만들어진 앱
  • 개발 : 웹 개발 방식과 동일(html, css, javascript)
  • 실행 : 웹 브라우저(단일 페이지 방식)

장점

  • 운영체제 별로 개발할 필요 X
    -> 비용, 시간 절감
  • 스토어의 심사과정 X

단점

  • 인터넷 없이 사용할 수 없다.
  • 디바이스 접근 권한 제한 (모바일 운영체제에서 제공하는 기능들을 활용하지 못할 수도 있다.)
  • 사용자가 검색 또는 URL을 통해서 들어와야 한다는 불편함이 있다.
    (= 사용자 접근성이 떨어진다.)
  • 네이티브 앱에 비해, 상대적으로 속도가 느리고 안정성도 떨어진다.

모바일 웹 vs 웹 앱

공통점

둘 다 모바일에 설치하는 앱이 아니므로 카메라나 음성 등 디바이스 자체 기능에 접근이 제한된다.

차이점

1. 모바일 웹

  • PC를 기준으로 제작된 뒤 모바일 화면 규격에 맞게 폰트나 이미지 등을 바꾼 것
  • 풀 브라우저 방식 사용 (화면의 일부분이 바뀔 때마다 전체를 서버에서 새롭게 불러옴) => 느리다

2. 웹 앱

  • 처음부터 모바일을 기준으로 제작되기 때문에 모바일 이용자에게 훨씬 편안한 환경을 제공한다.
  • 단일 페이지 방식 사용 (변경이 필요한 부분만 바꿈) => 빠르다

웹 앱은 모바일 웹보다 좀 더 모바일에 최적화된 앱이다.


하이브리드 앱

  • 네이티브 앱과 웹 앱의 개발 방식을 모두 사용
  • 겉으로 보기엔 앱이지만, 실제로는 웹을 기반으로 한 앱
  • 개발 : 웹 앱을 모바일 운영체제로 패키징
    (내부 페이지에는 웹 개발, 외부 앱 패키징에는 앱 개발 방식을 사용)
  • 실행 : 스토어에서 다운 및 설치

ex) 네이버, 크롬, 다음

장점

  • 웹 기술을 기반으로 제작되지만, 모바일 API도 사용할 수 있으므로 디바이스 자체 기능을 활용할 수 있다.
  • 네이티브 앱에 비해 개발 비용, 시간이 절감
  • 하나의 코드로 iOS, 안드로이드 모두에 사용 가능

단점

  • 네이티브 앱에 비해 느린 속도, 성능
  • 웹 페이지를 불러오기 때문에 네트워크에 따라 앱의 성능도 떨어진다.
  • 스토어의 심사 과정 O

네이티브 앱 vs 웹 앱

1. 실행 환경의 종속성

  • 네이티브 앱은 바로 OS에 맞닿아 있고, 웹 앱은 브라우저를 거쳐 OS에 닿는다.
  • 네이티브 앱은 바로 OS에 맞닿아 있기 때문에, OS와 기기에 내장된 여러 기능을 쉽게 활용할 수 있고, 웹 앱은 그렇지 않다.

2. 스토어 사용 유무(설치/배포)

  • 네이티브 앱은 스토어를 사용해야 한다. 하지만 스토어의 심사는 매우 깐깐하므로 등록하는데에도 많은 시간이 걸린다. 또한, 사용자가 이를 설치하고 업데이트를 해줘야 한다.
  • 웹 앱은 이런 과정이 필요 없다. 웹 앱은 수정된 것이 바로 반영이 되고 스토어를 사용하지 않는다.

3. 인터넷 사용 유무

  • 네이티브 앱은 인터넷 없이도 사용할 수 있다.(인터넷이 필요한 부분은 작동이 안 되겠지만 앱 자체가 실행 불가능한 것은 아님)

웹 앱은 간단한 기능과 적은 투자를 하는 서비스에게는 좋은 대안이다!
(네이티브에 비해 성능은 떨어지지만, 간단한 기능의 서비스를 런칭하기에는 웹 앱이 더 편리하다!)

속도: 모바일 웹 < 웹 앱 < 네이티브 앱


[참고]
https://m.blog.naver.com/acornedu/221012420292
https://blog.codef.io/app_kinds/
https://brunch.co.kr/@rlatjrwn9086/61
https://chaeyeon-chaeyeon.tistory.com/20
https://brunch.co.kr/@toqha7822/3

0개의 댓글