728x90

https://cotist.tistory.com/10

 

React Native로 세팅부터 배포까지 후기, 장단점 등 회고록 (1)

사내에서 3개월간 React Native를 처음 접한 주니어 개발자가 혼자서 Create Project부터 스토어 배포까지 겪었던 회고록을 정리하면서 React Native에 대한 경험을 공유드리고자 합니다. 이 포스팅을 통하

cotist.tistory.com

 

본 포스팅은 위의 링크된 포스팅에 이어서 작성됩니다.

 

 

앞 전의 세팅까지 완료하고 navigation까지 구현하여 신나게 무지성 퍼블리싱을 하였다. 

여기까진 괜찮다 치자. 내가 진짜 잘못한 것이 뭐냐면, 초기에 네이티브 세팅 확인을 iOS, Android 각각 에뮬로 구동되는 것을 확인하고 이후에 작업을 iOS만 켜두고 계속 하였던 것이다..

개발이 진행될수록 설치되는 라이브러리가 늘어나고 네이티브 단에서 추가로 고려해야 할 것들을 누락하고 있었다..

최근 React 기반으로 개발만 하다 보니 앱 네이티브에 대한 생각을 1도 못하고 있었던 안일한 탓이었다 ㅠㅠ

 

java버전부터 시작해서 sdk, gradle 버전까지 다 꼬여버려서 붙어버린 라이브러리와 RN 버전 모두 호환하도록 맞추는데 3일이 걸렸다.. ㅎㅎㅎㅎ

예전에 학생 창업 시절, Android 앱 개발을 하였는데도 불구하고 플러그인과 Gradle 버전도 각각 호환되도록 맞춰야하는 것도 이번 사태에 알게 되었다.. (아래 링크 참고)

https://developer.android.com/studio/releases/gradle-plugin?hl=ko 

 

Android Gradle 플러그인 출시 노트  |  Android 개발자  |  Android Developers

Android 스튜디오 빌드 시스템은 Gradle을 기반으로 하며 Android Gradle 플러그인에는 Android 앱을 빌드하는 데 사용하는 몇 가지 추가 기능이 있습니다.

developer.android.com

버전 다 맞춰놓고 ./gradlew clean도 안해서 캐쉬 남겨놓고 안된다고 구글링 또 한참을 하고 완전 난리였다.

긍정적으로 생각할건 덕분에 네이티브 단의 환경 세팅을 아주 깊게까지 맛 본 경험을 얻은 것인다.. ㅎㅎㅎㅎ

어쨌든 Android도 세팅 완료!

 

iOS도 정말 쉽지 않았는데, 우선 m1과 인텔칩에 따라 환경 설정이 상이한 부분들이 있어 처음 접한 나로서는 당황스러웠음...

자가 노트북은 인텔칩, 회사용 맥미니는 m1이었는데 같이 사용할 수 있는 환경이 안 맞춰진다😂

보통 사용하는 라이브러리를 늘려감에 따라 충돌이 잦아지는데 Podfile쪽에서 보통 결판이 나더라.

이까지 해결을 봤다면 적어도 React Native를 사용하기 위한 네이티브단 환경 설정은 구글링을 하든 직접 고치든 본인 스스로 70% 해결 할 수 있는 거라 생각이 든다.(나머지 30%은 릴리즈 버전 시)

 

 

아무튼 여기까지 개발하며 느낀 점은 React(javascript)만 경험이 있는 개발자에게는 다소 어려울거라 생각한다.

당장의 스플래쉬 스크린 구현부터 네이티브단을 건드려야하니 말이다.

환경 세팅이 하도 하다보니, 이제 각 라이브러리 및 프레임워크 등의 구조를 파악하는 능력이 늘은 것 같다..

환경 세팅을 하도 하다보니, 코딩 실력이 줄었다..

 

그래도 기능 구현을 끝내고 나니 후련하면서 인사이트가 늘은 느낌이었고, 이젠 RN 개발 끝인 줄 알았다.

근데 아니었다.

 

 

글이 길어지니 다음 포스팅으로 넘어가겠습니다.

728x90
복사했습니다!