0Pricing
Dart Academy · Урок

Разбор var, final и const

Выбор между изменяемыми значениями, значениями времени выполнения и значениями времени компиляции

«Разбор var, final и const» — бесплатный урок Dart Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Dart Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Dart Academy содержит 4 уроков всего.

Три способа назвать значение

В Dart данные хранятся в именованных контейнерах, называемых переменными. Выбранное ключевое слово определяет, может ли содержимое этого контейнера когда-либо измениться.

Знакомство с var

Используйте var, если значение позже изменится. Dart всё равно определит его тип за Вас, поэтому var — удобный и безопасный вариант.

var score = 0;
score = 10;

var фиксирует тип

Хотя var выглядит нестрого, тип фиксируется один раз. Если присвоить переменной int, позже сохранить текст в том же контейнере уже нельзя.

var count = 5;
count = 6; // ok

Знакомство с final

Используйте final, если значение задаётся один раз и больше не переназначается. Оно определяется во время выполнения программы, а затем остаётся неизменным.

final name = "Ada";

final не допускает переназначения

Попробуйте присвоить final новое значение — и Dart остановит Вас во время компиляции. Это защищает значения, которые не должны изменяться.

final pi = 3.14;
// pi = 3; // error!

Знакомство с const

Используйте const для значений, известных ещё до запуска программы. Они фиксируются во время компиляции и остаются неизменными навсегда.

const maxUsers = 100;

const означает «во время компиляции»

Значение const должно вычисляться во время компиляции. Нельзя использовать то, что становится известным только во время выполнения, например текущее время.

const now = DateTime.now(); // error

final и const в одной строке

Представьте это так: final задаётся один раз во время выполнения, а const фиксируется ещё раньше — во время компиляции. 🧊

Выбирайте final вместо var

Полезная привычка — сначала выбирать final. Если значение не должно изменяться, final ясно выражает Ваш замысел и предотвращает ошибки.

Объекты const канонизируются

Два одинаковых объекта const совместно используют один и тот же экземпляр в памяти. Это экономит место и отлично подходит для фиксированных значений конфигурации.

const a = [1, 2];
const b = [1, 2]; // same object

Выбор подходящего ключевого слова

Значение изменится? Используйте var. Задаётся один раз во время выполнения? Используйте final. Известно до запуска? Используйте const. Этот единственный вопрос поможет Вам выбрать.

Быстрая проверка

Выберите ключевое слово для значения, вычисляемого во время выполнения, но никогда не переназначаемого.

Повторение: var, final, const

Вы узнали, что var может изменяться, final задаётся один раз во время выполнения, а const фиксируется во время компиляции. По умолчанию выбирайте final. 🎉

Часто задаваемые вопросы

Урок «Разбор var, final и const» бесплатный?

Да — полный текст урока «Разбор var, final и const» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Dart Academy, подпишись на CoddyKit PRO. Курс Dart Academy содержит 4 уроков всего.

Чему я научусь в уроке «Разбор var, final и const»?

Выбор между изменяемыми значениями, значениями времени выполнения и значениями времени компиляции Ты практикуешь Dart Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Dart Academy?

Предыдущий опыт не требуется. Dart Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.

Сколько времени занимает урок «Разбор var, final и const»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Dart Academy?

Да. Каждый урок Dart Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Разбор var, final и const
  2. Основные типы: int, double, String, bool
  3. Вывод типа и явное указание типов
  4. Типы dynamic и Object
← Назад к Dart Academy