AngularDart
Скачать логотип AngularDart в SVG
Что такое AngularDart?
AngularDart - это клиентский фреймворк для создания структурированных веб-приложений на языке Dart. AngularDart в некоторой степени похож на AngularJS, но отличается реализацией, использует преимущества таких возможностей Dart, как классы и аннотации.
Открытый исходный код
AngularDart - это проект с открытым исходным кодом, построенный на веб-платформе Dart. Последнюю документацию по AngularDart можно найти в каталоге doc проекта dart-lang/angular
.
Используется в производстве
Сотни инженеров Google используют AngularDart для создания сложных, критически важных приложений, которые приносят большую часть доходов Google. Узнайте больше о том, как AngularDart помог Google Ads.
Особенности
- Возможность повторного использования компонентов.
- Функция связывания данных.
- Глубокое связывание.
- Валидация форм.
- Инъекция зависимостей.
- Тестируемость.
Dart-версия фреймворка AngularJS от Google
Команда Google разработала Dart-версию фреймворка AngularJs, которая также известна как AngularDart. Сейчас кодовая база Angular 2 разделена на две части, т.е. версию Dart, в которой кодовая база написана непосредственно на Dart, и версию TypeScript / JavaScript. AngularDart в значительной степени вдохновлен AngularJS, и здесь присутствуют такие возможности ядра Angular, как связывание данных и инъекция зависимостей. AngularDart построен на веб-стандартах, таких как Shadow DOM, и это отличная новость для разработчиков, потому что:
- Фреймворк больше похож на идиоматический Dart.
- Он использует возможности Dart, которые не могли работать с TypeScript.
- Он очень быстрый по сравнению с AngularJS.
AngularDart VS AngularJS
- AngularJS написан на JavaScript, а AngularDart - на Dart.
- Язык выражений поддерживается обеими версиями.
- Парсер, используемый в AngularDart, является прямым переносом AngularJS, а разница между ними заключается в том, что AngularDart поддерживает несколько бэкендов.
- Система инъекции зависимостей (DI) отличается в обеих версиях. Dart основана на классах, а JavaScript - на символах.
- Компилятор, используемый в AngularDart, полностью переписан, что означает, что директивы ведут себя по-разному и есть разница между «структурными» и «декоративными» директивами.
- В AngularDart функции
link/compile
заменены функциейapply
. - Концепция карт атрибутов доступна в AngularDart, но не в AngularJS.
Разработчики выбирают AngularDart
AngularDart быстрее, чем AngularJS. Это отличная новость и для разработчиков JS. Устранение кода, связанного с Dart, из базового кода Angular делает версию JavaScript / TypeScript значительно меньше при хорошей производительности.
Для разработчиков это не несет больших изменений в том, как вы используете API, но исправляет проблемы быстрее. Синтаксис шаблонов и API будут общими для обеих версий, и у вас будет свобода подавать запросы на исправление на том языке, который вы знаете лучше всего, а изменения могут быть внесены и рассмотрены без необходимости компиляции и кросс-совместимости с нижележащими языками.
Angular Исходный код Dart чище и более Dart-образный, для разработчиков Dart. С выделенной командой экспертов по Dart разработчики смогут быстрее решать проблемы и наконец-то обновить всю документацию с упором на Dart. Разработчики смогут использовать многие специфические для Dart функции, которые не были совместимы с TypeScript.
Разработчики TypeScript или JavaScript получат преимущества от более чистых API JavaScript и прирост производительности, поскольку кодовая база TypeScript была упрощена, чтобы устранить необходимость компиляции в Dart.
AngularDart был разработан не только как язык программирования, но и как набор стабильных библиотек, надежных инструментов и отличного фреймворка.