TIL - 2024.04.14

Taesoo Kim·2024년 4월 14일

Flutter?

플러터는 ios, android, 같은 네이티브 환경의 앱을 동시에 개발할 수 있게 하는 구글의 언어 프레임워크.. 가 내가 이해한 정의. 최근 각광받는 이유는 자바스크립트와 비슷한 문법 체계에 구글에서 지원하는 다양한 UI를 제공하기 때문.

How does it then work?

플러터는 자바 기반의 OOP로 보이고, 위젯이 기본 단위가 되어서 앱을 구성한다. 기본적으로 루트 위젯을 갖는 트리형태로 구성이 되고(DOM과 비슷한 구조), 크게 2가지 종류가 있다.

  • stateless widget
  • statefull widget

이름에서 느낌이 오듯 stateless는 랜더링시 고정되는 위젯이고, statefull 한 위젯은 인터랙티브한 요소가 될거 같다.

Widget?

위에서 조금 설명했지만, 오브젝트 형태로 위젯은 생성, 소멸되고, 특정 형태의 레이아웃(?)을 리턴하는 형태인거 같다. 다른 하위의 위젯을 리턴해도 되고, 기본 위젯을 리턴해도 된다.

  1. Scaffold
    기본이 되는 레이아웃. _Implements the basic material design visual layout structure. 라고 공홈에 나와있단다. 이것이 실질적으로 루트 위젯인 셈.

그리고, 리액트와 다르게 모든 css적 요소를 객체를 통해 만든다. 아마 웹에서 필요한 js, html, css를 한 언어에 묶어 놓아서 강세를 띄는게 아닐까 싶다.

위젯을 어디에 위치할건지는 center, column, row, 등등의 클래스를 사용하여 만드는것 같고, crossAxisAlignment, backgroundColor 같은 속성들로도 바꿀 수 있는 것 같다.

profile
뭔 생각을 해. 그냥 하는 거지 뭐

0개의 댓글