프로그래밍 언어 및 IT 정보/Flutter

Flutter란? - Cross-Platform

Himer_torr 2021. 9. 23. 09:18
반응형

 

앱 개발은 해보고싶고..
안드로이드, 아이폰 따로 따로 공부하자니 막막하고..

한번에 개발할 수 없을까 !?
그러다 알게된 Flutter를 소개하려 합니다 :)

 

스마트폰의 앱 개발 방식은 3가지로 분류됩니다.

 

● 네이티브 방식 - Native App

   -안드로이드나 ios 자체에서 제공하는 개발환경으로 개발하는 형식

    안드로이드(안드로이드 스튜디오 - Java, Kotlin언어 사용)

 

● 하이브리드 방식 - Hybrid App

   -웹 기술을 활용하여 앱화면을 만든 후 네이티브 기술로 감싸서 앱 형태로 보여주게 만드는 방식

 

● 크로스 플랫폼 방식 - Cross-Platform App

   -안드로이드와 ios,등 각 플랫폼용 앱을 한번에 구현하는 방식

    (Xamarin-C#, Flutter-Dart, React Native - Java)

 

저희가 알아보려는 flutter는 크로스 플랫폼 방식이겠네요 ! 

Flutter란 ?

flutter는 Google에서 만든 오픈소스 모바일 앱 개발 프레임워크입니다. 

두개의 운영체제 모두에서 돌아가는 앱을 한번에 구현할 수 있는 크로스 플랫폼에 속합니다 !

다시 말해서 하나의 멀티 플랫폼을 제공하는 프레임워크 입니다.

flutter는 dart라는 언어로 작성되었습니다. 
Dar는 비교적 쉽게 구현할 수 있고 좋은 프로그래밍 언어지만 인기가 없습니다.....

 

20위에 있네요...

 

Flutter의 장점, 단점은 ?

 1. 개발 비용 절감 가능

  flutter는 크로스 플랫폼이기 때문에 개발 비용을 줄일 수 있습니다.

  Android, ios 두개의 앱을 따로 개발할 필요 없이 한 플랫폼에서 개발이 가능하므로, 개발자의 인건비나

  유지보수비를 줄일 수 있습니다 :)

  이것이 크로스플랫폼의 매력적인 장점이겠죠 ?

 

2. 성능 문제 해결

  기존 React Native 나 Hybrid App 같은 경우는 브릿지를 통한 통신이 불가피했습니다.

  허나 ! flutter는 직접 컴파일이 되어서 Render를 하기때문에 성능이 빠릅니다.

  아래 동영상을 참고하면 React Native랑 flutter의 비교를 아실 수 있으실 겁니다 :)

 

3. 머티리얼 디자인과 쿠퍼티노

  Flutter는 Android와 ios의 대표 디자인 가이드를 기본적으로 제공합니다.

  안드로이드와 ios에서 같은 머티리얼 디자인을 사용하더라도 플랫폼에 따라 다르게 출력되는 부분을

  각각 디자인 가이드에 맞게 화면을 그립니다 :)

 

그밖에 핫리로드, UI 안정성 등 다양한 장점이 존재합니다 !

이제 단점이라고 뽑자면

 

1. 언어가 Dart....

  Dart는 비언어로 분류되기때문에 대중적이지가 않습니다.

  아직까지 Javascript가 대중적이기도 하고 개발자들사이에서는 Dart는 완전 새롭게 배워야하기 때문에

  경쟁력을 쌓기 위함이라면 단점으로 될 수 있겠네요..

 

2. 코드 푸시가 없다.

 버전업데이트할때 3일...길면 일주일까지 기다려야한다면.. 

 초창기 스타트업회사에는 적합하지않겠죠 ? 
 고객들의 피드백을 빠르게 반영해야하는데, 한번 반영할때마다 3~7일 걸린다면 

 너무 효율이 떨어지지 않을까요 ?

 

 

어떤 프레임워크, 언어라도 100프로 완벽한 것은 없겠죠 ?

비전이 있는 기술인지, 내 상황에 맞는지 선택하시면서 

공부하고 개발하시면 무엇이든  도움이 될거라고 봅니다 :)

 

https://flutter-ko.dev/

 

Flutter - 가장 빠른 아름다운 네이티브 앱

Flutter(플러터)는 하나의 코드베이스로 모바일, 웹, 데스크톱에서 네이티브로 컴파일 되는 구글의 아름다운 UI 툴킷입니다. Flutter는 기존 코드와 함께 동작하고, 전세계 개발자와 조직에 쓰이고

flutter-ko.dev

위에는 플러터 공식 홈페이지입니다 :)

긴글 읽어주셔서 감사합니다 !

반응형