안녕하세요, 황대성입니다😁
이번 글에서는 리액트 네이티브를 어떤 앱을 개발할 때 사용해야 할까?라는 주제에 대해 얘기하려 합니다.
이제 리액트 네이티브를 학습하기 시작하여, 사이드 프로젝트를 진행하고 싶으신 분들이 보셨으면 좋겠습니다🤩
현재 리액트 네이티브는 다수의 앱에서 사용되고 있습니다.
그렇다면 어떤 앱들을 리액트 네이티브로 개발해야할까요?
- 만약 여러분이 빌드할 앱이 API에서 데이터를 가져오고, 데이터를 처리하는 앱이면 추천드립니다
- 빨리 프로토타입을 개발해야 한다거나, 혹은 개발 기간이 짧을 때 사용하는 것을 추천드립니다
- Ios와 Android 크로스 플랫폼을 지원하는 앱이라면 추천드립니다
그렇다면 어떤 앱들이 리액트 네이티브로 개발하기 힘들까요?
- 만약 여러분이 빌드할 앱이 폰의 하드웨어를 건드리는 작업을 할 때
- 디바이스에 영향을 많이 받는, 커스터마이징을 하는 작업을 할 때
- 3D, AI, 카메라 필터와 같은 작업을 할 때 리액트 네이티브가 최적의 솔루션은 아님
왜 모든 앱을 리액트 네이티브로 개발할 수 없을까요?
리액트 네이티브는 Ios / Android의 다리가 되는 역할을 하고 있습니다.
즉 두 개의 플랫폼을 모두 지원하는 컴포넌트를 사용합니다.
이러한 이유 덕분에 리액트 네이티브는 크로스 플랫폼 애플리케이션을 빠른 시일 내에 적은 인력으로 개발할 수 있습니다.
하지만 디바이스에 영향을 많이 주는 커스터마이징 하는 작업을 할 때에는 Android는 Android 별 Ios는 Ios 별 특정 작업을 해주어야 하기 때문에 리액트 네이티브는 최적의 솔루션이 아닙니다.
그렇다면 우리는 어떻게 개발을 해야 할까요?
제가 추천드리는 방법은 다음과 같습니다.
- SNS 혹은 단순한 서비스를 개발할 때에는 리액트 네이티브를 사용한다.
- 인스타그램과 같이 SNS + 카메라 필터와 같이 특정 작업이 들어갈 때에는 리액트 네이티브와 함께 다른 기술을 병합해서 사용한다.
- 하드웨어를 다루거나 혹은 디바이스를 커스터마이징 하는 작업이 필요한 앱이면, 네이티브 언어를 사용해서 Android, Ios를 각각 개발한다.
참고 문헌 및 사이트
노마드코더 리액트 네이티브, 이때는 쓰지마라 - https://www.youtube.com/watch?v=uUDPSKJEwCI&feature=youtu.be
React-Native 공식 문서 - https://reactnative.dev/
React Native at Instagram - https://instagram-engineering.com/react-native-at-instagram-dd828a9a90c7#.3h4wir4zr
긴 글 읽어주셔서 감사합니다😀
'프론트엔드 > React-Native' 카테고리의 다른 글
리액트 네이티브 개발자가 생각하는 RN vs Flutter .2020 (15) | 2020.07.22 |
---|---|
Expo-cli 설치방법 (0) | 2019.11.28 |