<aside> 👉 크로스플랫폼 앱 개발 프레임워크로 화두가 되는 두 프레임워크에 대한 비교
</aside>
웹 프론트 개발자 입장이기에 앱 개발을 진행해야한다고 한다면 네이티브 플랫폼은 조금 꺼려졌습니다.
iOS, Android 모두 웹 개발과는 거리가 있고, 언어에 대한 장벽도 포함되지만 무엇보다도 커리어 패스를 신경쓸 수 밖에 없습니다.
그렇기에 어느 정도 중간의 포지션을 유지하면서 앱의 이점을 챙겨올 수 있는 React native가 매력적이었고, React Native와 항상 비교가 되는 Flutter 또한 고민될 수 밖에 없었습니다.
저는 Flutter 개발을 하고 있었기에 React Native 또한 Flutter와 비슷한 원리로 구동되며, 얻을 수 있는 이점이 비슷하다라고 생각했으나 고찰해본다면 명확하게 두 플랫폼은 서로의 색을 뚜렷하게 띄고 있습니다.
저는 가장 큰 차이는 일단 언어의 차이가 있습니다.
프론트엔드에서 JS란 빼놓을 수 없는 언어라고 해도 과언이 아닙니다. 하지만 Flutter는 그렇지 않습니다.
Flutter는 Dart를 사용하게 됩니다. Dart 언어의 목적은 아래와 같습니다.
- 모든 플랫폼에서 빠른 앱을 개발하기 위한 클라이언트 최적화 언어
물론 디테일한 문법의 차이는 있습니다.
새로운 문법을 배워야하는 진입장벽과 러닝커브가 존재하기에 플랫폼 선택의 기준이 될 수 있습니다.
Flutter
Flutter 자체의 그래픽 엔진을 통해서 UI를 그리기 때문에 일관적인 UI를 그릴 수 있습니다. 그렇기 때문에 플랫폼에 상관없이 동일한 UI를 그려낼 수 있습니다.
물론 플랫폼 체크로 분기하여 각 플랫폼의 Native UI를 모방하는 방법도 가능합니다.
React Native
React Native는