📍 React Native
Facebook에서 개발한 오픈 소스 모바일 애플리케이션 프레임워크
개발 방식에 따라 React Native CLI, EXPO CLI로 나뉜다.
📍 React Native CLI
React Native 앱을 위한 전통적인 방식
프로젝트 구성과 설정에 최대한의 유연성과 제어가 가능하다.
장점
- 네이티브 모듈을 사용할 수 있고, 다양한 라이브러리를 활용할 수 있다.
- 앱의 성능, 크기 등을 제어할 수 있도록 빌드 구성을 할 수 있다.
- 강력한 커뮤니티와 생태계를 가지고 있다.
단점
- 초기 구성과 설정이 더 많아 까다로울 수 있다.
- 네이티브 종속성과 빌드 도구를 수동으로 구성해야 한다. (네이티브 지식이 필요)
- Android 및 iOS에서 앱을 테스트하기 위해 특정 장치가 있어야 한다. (iOS에선 맥북 필수)
📍 EXPO
React Native 개발을 보다 쉽게 만들어주는 React Native 프레임워크
프로젝트를 설정하고 구성하는 것과 관련한 복잡성을 추상화함으로써 단순화된 개발 경험을 제공
장점
- 장치별 설정이나 네이티브 코드 종속성 관계없이 빠르게 개발을 시작할 수 있다.
- 클라우드에서 코드를 구축하고 EAS에 배포할 수 있으므로, 배포와 업데이트가 간편하다.
- 푸시알람, 인앱 결제 등 직접 개발하기 어려운 기능들이 라이브러리와 API로 제공된다.
- 동일한 네트워크를 통해 Android 및 iOS 모두에서 앱을 실행할 수 있다.
- iOS, Android, 그리고 Web 개발을 동시에 진행할 수 있다.
단점
- 특정 네이티브 모듈 접근에 제한을 두고 있어, 기능 구현에 한계가 있을 수 있다.
- 빌드 설정 및 사용자 지정 옵션에 자유도가 낮다.
- 번들 크기가 비교적 커서 다운로드 및 로딩 시간에 영향을 준다. 또한, 특정 성능 최적화를 사용 못 할수도 있다.
Expo Eject
EXPO를 표준적인 React Native CLI로 전환하는 것을 의미
참고
https://medium.com/@softworthsolutionspvtltd/expo-vs-react-native-cli-7e47c7630039
Expo vs React Native CLI
Expo or React Native CLI ? What should i choose ?
medium.com
https://crossplatformkorea.com/docs/current/react-native/intro
'Framework > React Native' 카테고리의 다른 글
[RN][트러블슈팅] @react-navigation/xxx/xxx.tsx: Unexpected token (0) | 2024.03.05 |
---|---|
[RN][Expo] Expo에 관하여.. (0) | 2024.02.21 |
[RN][Expo] 배포 (1) | 2023.11.30 |
[RN][Expo] SyncSchedule 개발 도움 Document 정리 (0) | 2023.11.01 |
[RN][Expo] Semi-Calories 개발 도움됐던 Document 정리 (0) | 2023.08.25 |