Dart의 변수와 타입에는 기존에 알고 있던 것들이다.
Null Safety 타입/연산자가 있다.
2.12 버전부터 Null값에 대한 안정성을 위해 Null Safety라는 개념이 도입되었다.
Nullable Type
Null을 허용하는 타입 / 변수 뒤에 ?을 붙여 활용
ex) int?, double?, bool? ....
Non-nullable Type
Null을 비허용하는 타입 / 변수 뒤에 !을 붙여 활용 (해당 값이 null인 경우 에러 발생)
ex) int!, double!, bool! ....
클래스란?
Class의 구성요소
필드 - 클래스 내부에 선언된 데이터 (변수/상수 등)
메서드 - 클래스 내부에 선언 된 기능(함수)
생성자 - 클래스 인스턴스를 생성할 때 사용되는 코드
생성자란?
Default contrucotrs: 기본 생성자로, 생성자를 선언하지 않을 경우 제공되는
생성자.
Named contructors: 개발자가 필요에 의해 생성한 생성자로 클래스에 대한 여러
생성자를 구현하거나, 추가적인 클래스의 명확성을 제공한다.
Redirecting constructors: 목적이 동일한 생성자로 전달하기 위한 생성자로
생성자의 본문은 비어 있지만 전달 된 생성자에 대한 초기값 등을 구현할 때 활용
Const constructor: 상수 생성자로, 클래스가 불변의 객체를 생성하는 경우 활용
Factory constructor: 매번 새로운 인스턴스를 만들지 않는 생성자를 활용할 때 사용한다. 이미 존재하는 인스턴스를 반환하거나 단순한 초기 값을 부여가 아닌 연산이 파필요한 객체 생성 시 활용한다.