[Перевод] Dart 1.9. Релиз, который вы ждали

Новый релиз по большей части посвящен упрощению асинхронного программирования. В современных приложениями оно везде — это взаимодействие с пользователем, с сетью, файловый I/O и т.д. Новый релиз Dart существенно упростил работу с такими сценариями, введя async/await.Async методы и await выражения сделаны на основе знакомого Future API, вы можете использовать их с циклами, условными выражениями и try/catch блоками для управления сложным асинхронным взаимодействием. Подробнее о async/await можно прочитать в статье Dart Language Asynchrony Support: Phase 1 (перевод).Так асинхронный код выглядел с использованием Future API: 278c8f96f3a948748216eeaaad7c4c45.png

Так код выглядит с приходом нового релиза и async/await: 5919faea8cb245d89449d8e0061c2ff8.png

Также были введены новые генераторы — sync* and async*, которые упрощают левую генерацию последовательностей и избавляют разработчиков от необходимости создания своих итераторов во многих случаях. Подробнее можно узнать в статье Asynchrony Support: Phase 2.

Среди прочих нововведений:

Полная поддержка enum Выделение The Dart Analyzer в отдельный Dart Analysis Server, что упрощает интеграцию с IDE Новый быстрый движок регулярный выражений (в некоторых случаях работает до 150 раз быстрее) Isolate API полностью реализован в Dart VM Полный список нововведений можно посмотреть в release notes.Скачать последний релиз Dart можно на сайте.

© Habrahabr.ru