“원하는 앱을 쉽게 만들 수 있을 것 같아요! 🤓” - sunhwang

내가 바라던 것

나는 앱 개발을 하고싶어했다.📱나만의 앱 만들기가 나만의 웹 만들기보다 멋져 보였다. 😎

앱을 만들더라도 앱스토어나 플레이스토어 한쪽에만 출시하는게 아닌 기왕 앱 개발하는 거 양쪽 마켓에 출시하고 싶은 욕심이 있었다.

내 앱을 사용해 줄 사용자는 단순히 어떤 플랫폼에 종속시키고 싶지 않았다.

한 플랫폼만 서비스가 가능한 건 큰 제약이라고 생각했다.

앱 시장 초기만 해도 그런 생각은 틀렸을 수도 있지만 여러 크로스 플랫폼이 나오면서 원하는 수준의 앱을 하나의 코드 베이스로 여러 플랫폼에 출시할 수 있었고 그 중에서도 Flutter는 내 바램을 이뤄줄 수 있어보였다.

누군가는 “Android, iOS 둘 다 배워서 개발하면 되지!”라는 생각을 할 수도 있다.

그렇게 각 플랫폼마다 네이티브 언어를 배운다고 가정해봤다.

두 언어를 배워 앱 개발을 하고 출시를 했다고 하더라도 개발 → 버그 수정 or 기능 추가 → 테스트 → 배포가 날 기다리고 있다.

별개의 언어로 지속적인 유지보수를 하다보면 비슷한 라이브러리를 찾고 플랫폼별 권한 설정, 환경 설정 등 통합되지 않은 수많은 난관이 있음이 느껴졌다.

각 플랫폼을 맡아줄 누군가가 있으면 다행이지만 홀로 개발하는 입장에선 지칠 것 같았다.

어느 플랫폼이던 내 앱을 경험시켜주고 싶었던 처음 그 마음과는 다르게 결국 용두사미가 되버리는게 아닐까 하는 두려움도 느껴졌다.

RN과 Flutter 사이

앱 크로스 플랫폼은 Flutter 아니면 React Native가 많이 사용되고 있다. 둘 중에 무얼 쓸까 알아보다 메타보단 구글이 더 좋고 React Native 단점이 있기 때문에 나는 Flutter를 골랐다.

React Native의 단점 😢

React Native의 단점만을 보고 Flutter를 고른게 아니다. Flutter의 장점과 RN의 단점이 선택의 영향을 주었다.