[React Native] 0-1. React Native?
꽤나 자주 접하는 주제로 React Native와 Flutter중 어떤 기술을 선택하면 좋을지에 대한 고민이 있는 것 같습니다.
MVP 서비스를 준비하거나 스타트업 같이 규모가 작은 경우 또는 고정비용인 인건비를 줄이기 위해 Native보단 CrossPlatform 프레임워크인, React Native나 Flutter를 고민하시는 분들이 많을거라 생각합니다.
어떤 기술을 고르는 것이 좋은지에 대해 한번 생각해보았습니다.
※ 순수한 제 생각이기 때문에 참고 용도로 사용하시길 바랍니다.
고려사항.
기술을 선택하게 될 때, 다양한 상황을 고려 하여 선택하게 됩니다.
만약, 카메라 또는 블루투스 등의 Native 기능을 깊게 다뤄야 하는 경우엔 크로스 플랫폼을 사용하기 보단 Native 개발을 고려하시길 추천드립니다.
일단 개발자 입장에서 새로운 기술을 공부하게 되는 경우와 회사 입장에서 새로운 프로젝트를 시작하게 되는 경우로 먼저 나눌수 있을 것 같습니다.
우선 개발자 입장에서 둘 중 어떤 기술을 익힐 때 유리할까요?
개발자 입장
React Native
개발자 입장에서 React Native가 유리한 경우는 아래와 같이 생각합니다.
✔︎ JS나 React를 학습 또는 사용한 이력이 있다. (JS와 React를 기반으로 개발합니다.)
✔︎ Web 개발자이다. (Web을 개발할때와 구조적으로 비슷한 느낌을 받습니다.)
Flutter
개발자 입장에서 Flutter가 유리한 경우는 아래와 같이 생각합니다.
✔︎ 새로운 언어를 익히는데 거부감이 없다. (Dart라는 신규 언어를 익혀야합니다.)
✔︎ App 개발자이다. (Android, iOS를 개발 할 때와 비슷한 개발 환경.)
그 외
이외에도 고려해야할 점이 있다면 아래와 같습니다.
✔︎ 오류가 발생했을 때 즉시 fix가 가능하면 좋겠다. → React Native의 Codepush 기능을 이용할 수 있습니다.
✔︎ DX가 좋으면 좋겠다. → Flutter는 좋은 디버그 툴을 내장하고 있습니다.
✔︎ React Native와 Flutter의 아키텍쳐를 확인해보세요.
✔︎ React Native는 오픈소스형태이고 Flutter는 구글이 관리하고 있습니다.
✔︎ 내가 시작할 프로젝트와 관련된 Library들을 미리 찾아보세요.
+ 일반적인 퍼포먼스는 Flutter가 근소 우위로 더 좋아보이긴 하나, 개발자의 역량이 더 중요하다고 생각합니다.
회사의 입장
React Native
회사에서 신규 프로젝트 시 React Native가 유리한 경우는 다음과 같이 생각합니다.
✔︎ 이미 React로 만들어진, Web Service를 제공 중이다.
✔︎ 개발자를 수월하게 구하고 싶다면 React Native를 사용하시는 게 Flutter로 구성하는 것 보다 더 나은 선택 일 수 있습니다.
그렇게 생각하는 이유는 이러합니다.
React의 비즈니스 로직을 일부 가져와서 함께 사용할 수 있습니다.
React Native는 JS와 React 환경에서 작성하기 때문에, 기존 React 개발자가 쉽게 입문할 수 있습니다. 또 개발자 개인의 리스크를 감안 했을 때 Front와 Back 둘 곳에서 사용가능한 JS 언어의 매력과 Web에도 관심이 있다면 React를 배우는 것이 더 가치 있다 판단하여 React Native를 선택 할 가능성이 높습니다.
Flutter
반면 Flutter가 유리한 경우는 다음과 같이 생각합니다.
✔︎ 사내 개발자가 App개발자이다.
✔︎ 회사에 Web 서비스가 없고 사내 첫 프로젝트로 진행한다.
Flutter는 기존 앱 개발과 비슷한 개발환경을 가지고 있으며 Dart 언어의 러닝커브가 낮은편입니다.
따라서 RN에 비해 쉽게 입문할 수 있습니다.
마무리
제가 RN과 Flutter를 고민할 때 생각해볼 법한 질문에 대한 답을 적어봤습니다
둘다 좋은 기술이라 생각하며 국내에서도 RN은 Toss에서 대표적으로 사용하고 있고 Flutter는 Naver에서 대표적으로 사용하고 있습니다. 추가로 궁금한점은 댓글로 달아주시면 답변해드리도록 하겠습니다.
신규 프로젝트에서 기술을 선택하실 때 도움이 되시길 바라며, 저는 다음 내용으로 찾아뵙겠습니다.
감사합니다. 새해복 많이받으세요.
'Front-End > React Native' 카테고리의 다른 글
[React Native] 1-0. Component와 API 톺아보기 (0) | 2024.06.25 |
---|---|
[React Native] 0-4. 시작하기 (2) | 2024.03.20 |
[React Native] 0-3. 준비하기 (2) | 2024.02.23 |
[React Native] 0-1. React Native? (0) | 2024.01.30 |
[React Native] 0-0. 인사말 (0) | 2024.01.30 |
삽질의 기록과 일상을 남기는 블로그입니다. 주로 React Native를 다룹니다.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!