close
[IT 기술] 앱 개발 React Native VS Flutter 비교 총정리
본문 바로가기
그럴듯한 정보

[IT 기술] 앱 개발 React Native VS Flutter 비교 총정리

by SweetFist 2024. 3. 25.
반응형

안녕하세요, SweetFist 입니다. 

 

앱(Application) 개발을 시작하려는 분들에게 어떤 프레임워크를 사용할 것이야는

중요한 문제입니다.

 

과거에는 안드로이드 개발자, ios 개발자가 나뉘여 각각의 언어로 개발을 했었다면,

최근 추세는 프레임워크를 이용해 안드로이드, ios 모두에서 구동될 수 있는 앱을 만드는 것이 대세입니다.

 

대표적인 프레임워크가 바로 React native 그리고 flutter 입니다.

 

오늘은 이 둘의 특징을 비교해보려고 합니다.

 

1. React Native와 Flutter의 공통점

 

React Native와 Flutter 모두 안드로이드, ios에서 작동가능한 크로스 플랫폼 개발이 가능하며, 하나의 코드베이스로 여러 플랫폼에서 작동하는 앱 개발이 가능하다는 공통점이 있습니다.

 

또한, 두 프레임워크 모두 핫 리로드 기능을 지원하여, 코드 변경 사항을 즉시 미리 볼 수 있습니다.

2. Flutter의 특징

1) Flutter란?

Flutter는 구글에서 개발한 오픈 소스 UI 소프트웨어 개발 키트입니다. Dart라는 프로그래밍 언어를 사용하며, 하나의 코드베이스로 Android, iOS, 웹, 데스크톱 앱 개발이 가능합니다.

 

2) 장점

  • 높은 성능: Dart 언어는 네이티브 코드로 컴파일되어, 추가적인 계층 없이 플랫폼과 직접 통신이 가능해 성능이 우수합니다.
  • 풍부한 UI 컴포넌트: 자체적인 렌더링 엔진을 가지고 있어, 다양하고 멋진 UI를 쉽게 구현 가능합니다.

3) 단점

  • 커뮤니티 지원 부족: 비교적 최신의 프레임워크로, React Native에 비해 커뮤니티 규모가 작고 제한된 외부 라이브러리를 가지고 있습니다.
  • 응용 프로그램의 크기: Flutter 앱은 종종 사이즈 크며, 이는 다운로드 시간과 디바이스 저장 공간에 영향을 줄 수 있습니다.

4) 사용하는 서비스

  • Alibaba Group: 중국의 전자 상거래 기업으로, Flutter를 사용하여 앱을 개발하고 있습니다. Alibaba의 다양한 서비스 중 일부는 Flutter로 제작되었습니다.
  • Google Ads: 구글의 광고 플랫폼 애플리케이션으로, Flutter를 사용하여 모바일 앱을 개발했습니다.

3. React Native의 특징

1) React Native란?

React Native는 Facebook에서 개발한 오픈 소스 모바일 애플리케이션 프레임워크로, JavaScript를 사용하여 iOS와 Android 앱을 개발할 수 있습니다.

2) 장점

  • 자바스크립트 사용: 개발자들에게 널리 사용되는 자바스크립트 언어를 사용하여, 웹 개발자들이 쉽게 접근할 수 있습니다. 4
  • 거대한 커뮤니티와 지원: Facebook에 의해 개발되어, 방대한 커뮤니티와 다양한 외부 라이브러리를 제공하고 있습니다.
  •  

3) 단점

  • 성능 이슈: 자바스크립트 브릿지를 통해 네이티브 기능과 통신하기 때문에, 계산이 많이 발생하거나 복잡한 애니메이션을 사용하는 앱에서는 성능 저하가 발생할 수 있습니다.
  • 네이티브 코드 필요성: 특정 기능을 구현하기 위해 네이티브 코드를 직접 작성해야 할 경우가 있어, 기본적인 네이티브 개발 지식이 필요합니다.

4) 사용하는 서비스

  • Facebook: React Native는 Facebook이 개발한 프레임워크이기 때문에 Facebook 앱 자체도 React Native로 개발되었습니다.
  • Instagram: 소셜 미디어 플랫폼으로, React Native를 사용하여 iOS 및 Android 앱을 개발했습니다.
  • Airbnb: 숙박 예약 서비스로, React Native를 사용하여 모바일 앱을 개발하고 있습니다.

4. 마무리

React Native, 그리고 Flutter의 특징들에 대해 알아보았는데요, 프레임워크의 선정에 있어서 가장 중요한 것은 바로 

프로젝트의 요구 사항 및 개발 방향일 것입니다. 어떤 것이 좋다는 정답이 없으며 개발자 자신이 개발하려는 목적과 서비스의 특성에 맞게 효율적인 Framework를 선택하는 것이 좋을 것입니다.

 

 

끝.