Flutter

[Flutter] dart Null Safety

미로910 2024. 9. 6. 09:36

1. dart Null Safety 이란 뭘까?

널 세이프티(Null Safety)는 개발자가 널 에러를 피할 수 있도록 도와주는 다트 프로그래밍 언어의 기능입니다. 이 기능은 사운드 널 세이프티 인 다트(Sound Null Safety in dart)라고 불리며, 이를 통해 개발자는 코드 작성 시점에 널 에러를 잡을 수 있습니다.

Sound Null Safety in dart 이란 (Sound Type System)

런타임 중에 null 포인터 예외를 방지하기 위해 Dart 컴파일러가 코드를 분석하고 컴파일할 때 타입 시스템에서 엄격한 규칙을 적용하는 것을 의미합니다.

Dart Null Safety의 개념

  • Null Safety는 변수에 null 값을 할당하는 것을 엄격하게 제한합니다.
  • 변수를 null 또는 non-null로 선언할 수 있습니다. (String , String?) (? -> null을 가질 수 있는 데이터 타입 명시)
  • Non-null 변수는 null을 가질 수 없으며, null 변수는 null만을 가질 수 있습니다.
  • Null Safety는 Dart 2.12 버전부터 기본으로 활성화되었습니다.

 

2. null check 연산자와 null 대체 연산자

null check 연산자와

Dart 언어에서 null 체크 연산자 (?)는 null 값일 수 있는 객체의 속성이나 메서드에 안전하게 접근하는 데 사용됩니다.

이 연산자는 null 참조 오류를 방지하고 코드를 더 견고하게 만듭니다. Dart에서 null 체크 연산자의 주요 두 가지 사용법이 있습니다 (속성과 메서드)

 

null 병합(대체) 연산자

Dart 언어에서 null 병합 연산자 (??)는 null 값 처리에 유용한 연산자입니다. 이 연산자를 사용하면 변수나 표현식의 값이 null인 경우에 대체 값을 지정할 수 있습니다. null 병합 연산자를 사용하여 코드를 더 간결하고 안전하게 작성할 수 있습니다.

 

// toLowerCase 대문자를 소문자로