flutter 시작

차준우·2024년 7월 3일

flutter

목록 보기
1/25

Flutter?

크로스 플랫폼 개발이 가능한 프레임워크
언어 : dart

어떻게 동작할까?

기존 swift , java는 운영체제와 상호작용해서 버튼같은 요소들이 만들어지고 동작한다.
하지만 flutter는 운영체제와 직접 소통하지 않는다.

그럼 위젯이 어떻게 만들어지는가.
이 역할을 엔진이 담당한다. (엔진은 C , C++코드로 만들어 졌다)

"플랫폼은 엔진을 동작시키고 엔진이 dart코드를 동작시켜 UI를 렌더링한다."

실제 운영체제에 의해 그려지지 않는다는 것은

Fake 위젯. 실제 위젯과 닮은 위젯.

덕분에 플랫폼에 의존하지 않을 수 있다. (draw by engine 덕분에)

실행 순서를 보면
1. dart 코드를 컴파일
2. 유저가 애플리케이션을 실행하면 runner프로젝트를 실행
3. 엔진이 UI를 그림

엔진이 UI를 담당. 뭐가 좋은건데?

  • 크로스 플랫폼이 가능하다.
  • 다양한 애니메이션이나 다양한 디자인이 가능하다.

Flutter VS React Native

엔진은 화면 상의 모든 픽셀을 그린다.
호스트 플랫폼을 사용하는 게아니고.
하지만 이말은 우리 앱상에 내이티브 앱들이 지닌 컴포넌트나 위젯을 가질 수 없다는 뜻이기도 하다.(flutter 단점)

세밀한 디자인 사항, 전부 커스마이징해야한다면 Flutter
IOS의 디자인 같은 걸 따르지 않아도된다. 마음대로 디자인이 가능
하지만 IOS 스타일의 위젯들을 만들거라면 RN을 사용하는 게 좋을 듯하다.

정리

디자인 커스터마이징이 가능하다.
크로스 플랫폼 개발이 가능하다.
이 장점은 엔진이 UI를 렌더링하기 때문에 가능한 것이다.

profile
개애발

0개의 댓글