본문 바로가기

Hello App/Flutter

Flutter

230515

 

 

 


flutter는 google에서 2017년 5월 출시된

모바일, , 데스크톱 크로스 플랫폼 GUI SDK이다.

 

하나의 코드 베이스

안드로이드, 리눅스, Windows, macOS , iOS웹 브라우저

심지어 임베디드까지 다룬다.

 

사용 언어는 Dart이다.

 

💡 GooglePay, plutter로 재설계하다.

 

구글의 Google Pay는 plutter로 리뉴얼 하면서

170만줄의 코드가 110만줄의 코드로 줄었고

개발자들의 시간중 60~70% 가량 절약했다.

 

현재 GooglePay는 1억명 이상의 사람들이 사용한다.

 

 


1.  How Flutter Works

Flutter가 기존의 Native Framework와 가장 다른점은

버튼이나 text input모든 요소

운영체제에게 부탁하지 않아도 된다.

 

Flutter실제 ios 혹은 Android 버튼을 만들어 내는 기능은 존재하지 않지만,

대신에 Engine이라는 것이 CC++을 사용하여 만들어 준다.

 

처음 듣는다면 굉장히 어려울 수 있다.

 

쉽게 설명하자면

코드Dart로 짰는데 구현 CC++이 한다는 것이다.

 

이게 굉장히 유동적이고 이식성이 강할 수 있지만

가장 큰 단점은 Native 요소들을 사용할 수 없다는 점이다.

 

따라서 다른 프레임워크들

운영체제직접 소통하는 방식을 취하지만

 

Flutter는 단순히 Engin을 어플리케이션에 집어 넣고

EnginDart를 컴파일 한다.

 

그리고 어플리케이션이 실행되면

Engin을 가동 시키는

runner 프로젝트를 동작 시킨다.

 

그리고 CC++로 이루어진 Engin

실제 우리가 보는 모습을 그려주는 것이다.

 


 

EmbedderEngin을 가동시키는 "runner" 프로젝트를 말한다. 

 

때문에 특정 플랫폼에 특화되어 있고플랫폼에 따라 종류가 다양하다.