При подготовке к предстоящему выпуску Dart 3 важно отметить, что язык будет поддерживать только надежную нулевую безопасность. Это означает, что любые предыдущие способы работы без надежной нулевой безопасности больше не будут поддерживаться. Это изменение вносится для того, чтобы упростить язык и облегчить его изучение, а также обеспечить более быструю эволюцию Dart SDK и включение новых функций. Разработчикам важно ознакомиться с изменениями в Dart 3 и предпринять необходимые шаги, чтобы их приложения и пакеты были готовы к обновлению.

Зачем звуковая нулевая безопасность?

Dart, как и многие современные языки программирования, поддерживает нулевую безопасность, чтобы избежать проблем с нулевым разыменованием. Это делается путем предоставления разработчикам возможности объявлять переменные как ненулевые (никогда не могут содержать нулевое значение) или допускающие значение NULL (могут содержать значение или нулевое значение). Нулевая безопасность Dart идет еще дальше, будучи «надежной», что гарантирует, что переменная, не допускающая значения NULL, никогда не будет содержать нулевое значение. Решение сделать нулевую безопасность в Dart было сопряжено с такими компромиссами, как повышенная сложность при переносе существующего кода, но в конечном итоге привело к созданию более надежной системы типов с оптимизацией реализации, основанной на допустимости значений NULL переменных.

Большие улучшения управления памятью

В Dart 2.12 в язык была введена нулевая безопасность, но для облегчения переноса существующего кода Dart поддерживал запуск приложений в трех различных режимах: без нулевой безопасности, в смешанном режиме с частичной нулевой безопасностью или с полной надежной нулевой безопасностью. . Однако это добавило сложности и замедлило развитие Dart SDK. В Dart 3, уже выпущенной альфа-версии, звуковая нулевая безопасность будет единственным поддерживаемым режимом. Файлы Pubspec с ограничением SDK ниже 2,12 перестанут разрешаться, и любой исходный код, содержащий языковые маркеры, не будет работать, если ограничение установлено на значение менее 2,12. Основываясь на телеметрии, считается, что около 85% всех выполнений флаттер-запуска в настоящее время используют надежную нулевую безопасность, а разработчикам с приложениями или пакетами в оставшихся 15% рекомендуется мигрировать до выпуска Dart 3. BMW недавно перенесла свое большое приложение MyBMW и обнаружила, что процесс стоит затраченных усилий, поскольку он привел к менее подверженной ошибкам кодовой базе. Доступны ресурсы, которые помогут с процессом миграции.

С Dart 1 отладчик создавал 27 кодов инструкций памяти, как показано на рисунке ниже.

Наконец, с Dart 3 отладчик создает 3 кода инструкций памяти, как показано на рисунке ниже, что на 900% лучше.

Предстоящие функции и возможности в Dart 3

Dart 3 — это следующая основная версия языка программирования Dart, которая, как ожидается, будет содержать различные новые функции и возможности. Одной из новых функций, которые будут включены в Dart 3, является улучшенная совместимость с другими языками программирования. Это означает, что Dart сможет лучше интегрироваться и работать с кодом, написанным на других языках. Кроме того, будут введены новые языковые функции, такие как шаблоны, которые сделают язык Dart более выразительным и будут поддерживать более структурированные данные. Функция шаблонов также позволит использовать более функциональный стиль программирования с алгебраическими типами данных. Примером этого является возможность использовать несколько возвращаемых значений функции и разбивать их на отдельные переменные, как показано в предоставленном фрагменте кода. Подробнее об этих и других новых функциях мы поговорим на мероприятии Flutter Forward 25 января 2023 года.

Краткое содержание

Таким образом, приближается выпуск Dart 3, и разработчикам рекомендуется перенести свой код на нулевую безопасность до официального выпуска. Внедрение Dart 3 будет происходить в несколько этапов, начиная с альфа-выпуска в январе/феврале 2023 г., основное внимание в котором будет уделяться раннему тестированию совместимости. Затем в бета-версии в марте/апреле 2023 г. будут представлены новые функции Dart 3, что даст разработчикам возможность поэкспериментировать с ними и оставить отзыв. Наконец, примерно в середине 2023 года будет выпущена стабильная версия Dart 3, и единственным поддерживаемым режимом станет надежная нулевая безопасность.

Обновить сейчас: https://dart.dev/get-dart/archive

Подписывайтесь на меня

LinkedInGitHubKaggle