Native
: 각 운영체제에서 기본적으로 개발하기 위해 제공하고 권장되는 방법
📍 종류
- Xcode
- Android Studio
📍 장점
- 가장 빠른 성능
- 플랫폼 신기술을 가장 빠르게 적용할 수 있다.
📍 단점
- 특정 플랫폼 기술에 종속된다.
- 개별 플랫폼마다 대응이 필요하다.
- 개발 동료들이 소중..
Hybrid
📍 종류
- React Native
- Google의 Flutter
- Microsoft의 .NET
- ELECTRON(데스크탑 앱, JavaScript)
📍 장점
- 여러 플랫폼을 동시에 대응할 수 있다.
📍 단점
- 개별 플랫폼 대응에 더 큰 문제가 발생할 수 있다.
- 기술과 플랫폼 별로 실행 속도가 제각각이다.
- 플랫폼 신기술을 즉각적으로 적용하지 못한다.
- 앱스토어 정책 위반의 가능성이 있다. (Adobe, RN Code push)
RN Code push
: 앱스토어에 낼 때 코드 검사를 피하고자 특정 부분만 제출해놓고 서버에서 어떠한 모션이 오면 그때서야 코드를 자체적으로 업데이트 시키는 기술
Web App
📍 종류
- React
- NeXT
- Angular
- Svelte
📍 장점
- 설치 없이 브라우저에서 바로 실행할 수 있다.
- 보통 JS 단일 기술로 개발한다.
📍 단점
- 브라우저마다 기술 대응이 필요하다.
- JS 실행 성능의 한계가 있다.
- Native 기술 접근에 제약이 있다. (각종 센서나 내부 저장소, etc.)