RIDI - 라프텔
https://ridicorp.com/story/react-native-1year-review/
리액트 네이티브 앱 전환 그리고 1년 후 - 리디주식회사 RIDI Corporation
2020년 2월, 애니메이션 스트리밍 서비스 라프텔에서는 기존에 Android 와 iOS 각각 따로 구현되어 있던 애플리케이션을 리액트 네이티브 를 통해 개발을 통합하여 할 수 있도록 리빌드를 했습니다.
ridicorp.com
- iOS, Android 앱에서 react native로 전환하는 작업은 리소스를 많이 소모하겠지만, 서비스 개선을 함에 있어서 훨씬 유리하다.
- iOS 개발자, Android 개발자, 서버개발자 구조에서 front-end 개발자, backend 개발자 구조로 바뀌어 서비스 개선 속도가 빨라졌다.
- 라프텔 앱에 있는 모든 기능을 react native로 구현 가능한지 알아봐야한다. (여기서는 비디오 스트리밍 플레이)
- react를 잘 숙지하고 있으면 수월하다.
- react native로 전환하는 방법
- 처음부터 새로 만들기
- native 프로젝트에 react native 화면을 추가
- 새로만든 react native 프로젝트에 기존의 native view 호환
- React Native CLI, TypeScript
- 화면 관리 라이브러리 : React Navigation, (React Native Navigation)
- 전역 상태 관리: 리덕스, Context API
- react native에서는 CodePush라는 기술을 사용하여 앱스토어 검수 없이 바로 배포할 수 있다.
CodePush의 경우 native 의존성이 바뀌지 않았을 때에만 업데이트가 가능하다.
- react native의 장점
- Front-end 그룹 통합 (개발자 통합)
- 다른 플랫폼과 코드 공유 (앱, 웹, 스마트 TV)
- CodePush를 통한 배포
- JavaScript와 리액트만 잘 알고 있다면 모바일 UI를 쉽고 빠르게 작성할 수 있다.
- react native의 단점
- 가끔씩 일관성 없는 UI
- 잘못짜면 성능이슈가 쉽게 나타남
- 가끔씩 진짜 어이없는 이슈 때문에 시간 낭비할 때가 있음 ㅇㅅㅇ -> 버그의 원인 찾기가 어렵다
- 뻑하면 실패하는 앱 앱구동, 너무 오래걸리는 Build Time - native 코드에 변동사항이 발생하면 ! 앱 구동이 제대로 안되는 현상이 발생 (react native 앱의 규모가 커질수록 문제가 심각)
- 리액트의 철학과 맞지 않는 같은 써드파티 라이브러리들
- 완성도가 낮은 써드 파티 라이브러리들
- 조금 복잡한 에러 추적
- react native 사용시 유의할 점
써드 파티 라이브러리를 수정하거나 직접 만들어야 하기 때문에 native 코드를 다룰 수 있는 실력이 있어야한다.
'PROGRAMMING' 카테고리의 다른 글
API (0) | 2021.08.13 |
---|---|
REST API (0) | 2021.03.23 |
[c++] 레퍼런스에 대한 고찰 (1311 할일 정하기 1) (0) | 2021.02.17 |
비트 마스킹 (활성화, 해제, 확인) (0) | 2021.02.16 |
[git] git kraken (0) | 2021.02.05 |