목록컴퓨터/Flutter 4
Mokyung
Flexible widget Flexible widget은 위젯 사이의 빈 공간을 어떻게 사용할 것인지에 대해 정의하는 widget이다. https://api.flutter.dev/flutter/widgets/Flexible-class.html Flexible class - widgets library - Dart API A widget that controls how a child of a Row, Column, or Flex flexes. Using a Flexible widget gives a child of a Row, Column, or Flex the flexibility to expand to fill the available space in the main axis (e.g., horizo..
final과 const 키워드는 많은 프로그래밍 언어에서 사용된다. Dart에서는 두 키워드 모두 사용되는데, 각각의 사용처가 조금 다르다. final final로 선언된 변수는 딱 한번 initialize 된 후 그 값이 변하지 않는다. 즉, run time constant라고 볼 수 있다. 코드의 첫 실행 혹은 객체의 첫 생성시에 값이 결정되고, 만약 새로 객체가 생성된다면 그 때에는 다른 값이 들어올 수 있다. 그렇다면 언제 사용 될 수 있는가? 주된 사용처는 constructor로 주입받는 class의 변수를 생각해 볼 수 있다. class Person { final String name; Prerson(this.name); } 위 클래스처럼 변하지 않는 값을 받을 때 사용할 수 있다. const..
Dart에서 private 선언은 간단하다. _ underscore를 붙이면 된다. 예를 들면 Flutter에서 State 클래스의 경우 보통 private으로 선언한다. class _MyAppState extends State { var _num = 0; void _addNum() { num++; } // ... } 위의 class, inctance field, method는 모두 private이다. 느낀점 private 선언이 굉장히 편하다. 진짜 private으로 선언되는게 맞나 싶을정도.. Dart에서는 이름 짓는 규칙으로 Camel case를 사용하기에, underscore가 들어간 이름들이 눈에 잘 들어오긴 할 것 같다.
Dart 언어에서 class는 아래와 같은 형태를 가진다. class Person { String name; int age; } var person = Person(); person.name = 'Ho'; person.age = 30; Dart의 특징 중 하나가 nullable 체크를 강하게 한다는 것인데, 웹에서 Dart를 사용해볼 수 있는 DartPad.dev 같은 곳에서도 쉽게 Null Safety 옵션을 사용할 수 있다. 해당 옵션을 사용할 경우 class instance의 field 중 Non-nullable인 field는 반드시 초기값이 있어야 한다. Constructor에서 parameter를 받는 방식 1. Constructor with positonal arguments class를 갖는..