Sobes.tech
Junior — Middle
125

Dart 2.12 версиясында null safety менен иштөө үчүн кандай функциялар жана инструменттер киргизилди?

AIден жооп

sobes.tech AI

В Dart 2.12 была введена поддержка null safety — система, которая помогает избежать ошибок, связанных с null-значениями. Основные функции и инструменты:

  • Нуллабельные и ненуллабельные типы: по умолчанию типы не могут быть null, чтобы избежать ошибок NullPointerException. Для разрешения null используется ?, например, String?.
  • Операторы проверки null: ! (assert non-null), ?? (оператор "если null, то"), ?. (безопасный вызов метода или свойства).
  • Анализ времени компиляции: компилятор проверяет, что переменные не используются без инициализации или проверки на null.

Пример:

String? name; // может быть null

void greet() {
  if (name != null) {
    print('Hello, ${name!}'); // ! говорит компилятору, что name не null
  } else {
    print('Hello, guest');
  }
}