The Angular team has released AngularDart 1.0, which contains a lot of new features, performance improvements and bug fixes. It is the first version of the framework with the stamp "production-ready".
AngularDart is a port of the AngularJS framework for the Dart language and developed by the Angular core team. It is inspired in AngularJS' features such as directives, data binding, and dependency injection while taking advantage of some of Dart's features like metadata, types, and classes. AngularDart is also the first version of Angular built on emerging web standards like Shadow DOM.
In 1.0, the API's design has evolved significantly with the team expecting that AngularDart can now be easier to understand and use. All the changes can be found in the changelog with the following highlights:
- Expressions now evaluate in the context of the surrounding component instead of the current scope.
- The templateUrl and cssUrls in component annotations take paths relative to the library defining the component.
- The touch module now supports swipe left and swipe right.
- Instantiating components is nearly 40% faster.
InfoQ got in touch with Victor Berchet, one of the top commiters of this project, to know a little bit more about AngularDart and its future:
What makes you feel excited about this release?
I started to look at & contribute to AngularDart at the beginning of this year. AngularDart has always been moving quite fast and each releases has brought exciting new features - and we had to break backward compatibility a few times to come to something that is powerful and slick.
One of the change that will affect users is that the evaluation context for expressions is now the current component - there is no more need to name components (publishAs) and reference them explicitly in the templates. Said in a less technical way, using AngularDart requires less boilerplate now.
Releasing 1.0 is always an important time for a project. For us it means that we are happy with the current API and also the performance.
Up to last summer we have focused on implementing features. AngularDart has introduced many new concepts & ideas over AngularJS. At that point most important features were in place and we've spent ~2 months improving the performances where it matters.
During the last couple of months, we have refined the API even further, fix bugs and continue to improve the performance.
Releasing 1.0 also means that the team is committed not to introduce breaking changes in the coming months.
Do you know any sites using this framework in production?
Internally at Google there are quite some tools that are based on AngularDart.
Their feedback was really valuable for us to improve both the usability and perf.
Where is AngularDart heading? What can we expect in the near future?
Because 1.0 has just been released, you should not expect AngularDart to change much in the coming months. There will be some minor bug fixes releases.
As announced at NgEurope, the next big thing to come is Angular 2.0.
Angular 2.0 will have a single code base for AngularJS and AngularDart. It will of course be based on the concepts that have been successfully integrated in AngularDart 1.0 with further enhancements. Angular2.0 is really in early stages of development at the moment.