[Dart] Null safety에 대하여

AsherKim·2023년 5월 22일
0

플러터 TIL

목록 보기
3/18

Dart 언어의 변수는 기본이 Non-Nullable로 선언되는 것이며 만악 Nullable 로 선언하고자 한다면 타입명 뒤에 ?를 추가해 주어야 한다.

int a1=10;
int? a2=10;
  • Dart 언어의 Null Safety는 코드에서 null 참조로 인한 오류를 방지하고 안정성을 높이기 위한 기능입니다. Null Safety는 Dart 2.12 버전부터 도입되었습니다. 여기에는 다음과 같은 주요 개념과 기능이 포함되어 있습니다:
  • Nullable 및 Non-nullable 타입: Null Safety에서는 변수의 타입에 따라 Nullable과 Non-nullable 두 가지 유형이 있습니다. Nullable 타입은 null 값을 허용하며, 타입 이름 뒤에 물음표 ?를 붙여 표시합니다. Non-nullable 타입은 null을 허용하지 않으며, 일반적으로 물음표를 붙이지 않은 형태입니다.
  • Null 체크 연산자: Null Safety에서는 null 체크를 수행하기 위한 연산자가 추가되었습니다. 이러한 연산자는 변수가 null인지 아닌지를 확인하고, 해당 변수를 사용하기 전에 null 여부를 검사하는 기능을 제공합니다. 주요 연산자로는 ! (null을 허용하지 않는 변수로 캐스트)와 ?. (null이 아니라면 속성에 접근하거나 메서드를 호출)가 있습니다.
  • Late 변수: Late 변수는 선언 시점에서 초기화하지 않고, 이후에 사용하기 전에 초기화해야 하는 변수를 나타냅니다. Late 변수를 사용하면 Non-nullable 변수에 초기 값을 할당하지 않고도 컴파일할 수 있습니다. 이는 일부 변수가 런타임 이전에만 초기화되는 경우 유용합니다.
  • Non-nullable 기본값: Null Safety에서는 Non-nullable 변수에 대해 명시적으로 초기값을 할당하지 않아도 됩니다. 이전 버전의 Dart에서는 변수가 선언될 때 null로 초기화되었지만, Null Safety에서는 기본적으로 null이 아닌 값을 가지고 있습니다.

Null Safety는 코드의 안정성을 향상시키고, null 참조로 인한 오류를 사전에 방지하는 데 도움을 줍니다. 이를 통해 더 안전하고 신뢰할 수 있는 Dart 코드를 작성할 수 있습니다.

profile
추리를 좋아하는 개발자

0개의 댓글