I am very confusing btw upcoming angular4 and angulardart. Is angular4 just for angular-ts? What about angulardart upcoming versions and future? thanks a lot!
PS:
I am just interested in if angular4 and angulardart have any relationships or not. And wondering If angular4 and future angulardart will share any codes, features, designs, etc... I knew the difference btw angular2 and angulardart, and my question mainly focuses on the relationship btw angular4 and angulardart. Thanks.
Since about beta.17 Angular Dart and Angular TS are developed independently (see also the link above from PierreDuc).
While Angular 1.x and Angular >= 2 are entirely different frameworks, from version 2 on, a new major version only indicates that breaking changes were introduced according to http://semver.org/
See also What is Angular 4 and from where I can learn more about it?
For differences between Angular TS and Dart see also What's the difference between AngularJS 2 and Dart?
Related
Have a few projects in angular 1.x and wondering if its really necessary/efficient to move them to angular 4 / later.
Smaller dashboards would not be necessary as it is used internally by minimum number of people. But the bigger customer facing application (3 year old product ) is under the question, as new requirements are being developed.
According to surveys, Angular 1.x is still being used in many companies and the community is still active on making new libraries.
So is it worth shifting?
In my opinion you should leave those projects in Angular 1 and start using Angular 7 for newer Projects. Here is a good article comparing the two: https://www.uruit.com/blog/angular-1-vs-2-migrate/
If you have projects on angular1 developed, then those can be migrated to angular 7 module by module.
Means Using Current angular version, you can run your project in hybrid mode, where you can run angular 7 and angular 1 code together.
For clear understanding, please read these below links
1) https://angular.io/guide/upgrade
2) https://medium.com/contentsquare-engineering-blog/angularjs-to-angular5-upgrading-a-large-application-7e6fbf70bafa
This question already has answers here:
What is Angular 4 and from where I can learn more about it?
(6 answers)
Closed 5 years ago.
I am posting this question to get some opinion from fellow developers on which version of Angular to start to learn when migrating from AngularJS to Angular.
I have been working with AngularJS 1.3.7. I have realized that AngularJS 1 is pretty old now and there have been more than significant changes in Angular 2 and higher versions. Also Angular 5 just come out.
I have plans of learning Angular and currently confused with which version to start. I am assuming that Angular 2 is currently trending in market now followed by Angular 4(I might be wrong though).
Should I take a sequential approach and start from Angular 2 and then higher versions or is is safe to jump directly to Angular 4 or 5 without having any Angular 2 knowledge ? Or probably my question should be, can I learn Angular 4+ directly without have any prior knowledge of Angular 2 ?
A lot of companies that have now been using AngularJS for years are still using it, and don't have immediate plans to migrate to 2+. So there's marketability, plus the inevitable requirement of knowing both as an Angular developer.
I know my question is broad and might get some downvotes and red flags, but I am curious to hear from folks who have experienced the transition from 2 to 4+.
Also, I wanted to know about the key differences between AngularJS 1 and Angular 2+. Are they completely different, or will some of the knowledge transfer?
And lastly, I would like to know some of the good resources/tutorial to learn Angular.
They are basically the same. The Angular project moved to Semantic Versioning, which means every breaking change results in the major version to be increased.
Angular 5 is just a newer version of Angular2.
Just use the newest.
http://angularjs.blogspot.co.at/2016/10/versioning-and-releasing-angular.html?m=1
You should use the newest version of Angular for new projects and for learning.
Difference between versions
The difference between Angular v1 and Angular v2/3/4/5+ is drastic, as the platform was completely rewritten in TypeScript, and with different conventions.
The difference between Angular v2/3/4/5+ is simply that breaking changes were released between each major revision; however, they're still the same platform and tutorials / documentation will generally remain applicable between these 4 versions.
Semantic Versioning
Angular now follows the semantic versioning scheme. Patch releases (e.g. 5.0.X) will not change the functionality, minor releases (e.g. 5.X.0) will contain only additive changes, and breaking changes (e.g. X.0.0) are reserved for major releases.
Originally, the rewrite of AngularJS was called "Angular 2" by the team, but this led to confusion among developers. To clarify, the team announced that separate terms should be used for each framework with "AngularJS" referring to the 1.X versions and "Angular" without the "JS" referring to versions 2 and up.
So I learn angularJs not long ago, and I'm just getting started to get comfortable with it. But angular 2 is on the way and I have 2 major question:
1) Should I stop learning and working with angular 1 and start learning angular 2 instead?
I know a little about angular 2 and I know almost every thing has changed. So
2) What I know from angular 1 is any good in learning angular 2? Or should I learn angular 2 like it's a whole new framework? Is there any good way or guide to switch from angular 1 to 2?
Thanks in advance for your answers.
I learn angularJs not long ago
Then, this is the perfect time to start learning Angular 2, too. Starting a new language version while you have not already spend a lot of time on another one is a good choice in my opinion. However since Angular 2 is still in RC you should not completely leave learning Angular 1.x and start with Angular 2.
1) Should I stop learning and working with angular 1 and start
learning angular 2 instead?
No, even though the future of Angular framework seems to be Angular 2, this version is still in RC and building large apps using it would be a high risk.Angular 1.x compared to Angular 2 is more stable on this aspect. Angular 2 is constantly evolving, every few weeks there are totally new concepts included.
You should not stop learning Angular 1.x but, you should start learning Angular 2, too.
2) What I know from angular 1 is any good in learning angular 2?
Although there are a lot of changes like between these versions they still have similarities.For instance, in Angular 2 the concept of controllers does not exist, but they use Components. ng-if and ng-for directives from Angular 1.x look like *ngIf and *ngFor in Angular 2. The best resource to compare the two versions is their official website which you can find here here.
Is there any good way or guide to switch from angular 1 to 2?
Although you can still find very useful information about upgrading from Angular 1.x to Angular 2 on their official website
I would suggest that you treat Angular 2 as a completely new framework and start it from zero.Also the knowledge you already have about Angular 1.x will be helpful since there are concepts that have not changed that much. There are plenty of tutorials available online for free that you could use.
My favorite YouTube playlists are:
Angular 2 Start
Angular 2 Basics Course
Build Angular 2 Weather App
Well , This is the major question for all angular2 beginners who knows angular1 ... ,
Just imagine you don't know angularjs1 then Definitely you are more comfortable with angular2 ... The thing is Angular is the future that is the unwritten truth ... Definitely Angular1 is not going to die ...but It may be loose from the competition ... You have to consider following things to choose angular2 ...
Type Script (Great Coding Structure)
Componets (Great Library Support )
Rich Third party library Support
Creator the Giant (Google )
Finally You have to go with the future ... (Angular2)
We are doing the technology evaluation for new application:
- Is Angular JS 2.0 ready for production version?
- What about the old directives such as Google Map, Multi-lingual etc, will these work currently with Angular JS 2.0, architecture style guide etc is not available.
What are the tradeoffs.
Thanks,
Dhananjay
AngularJS 2 is still in beta. You can test the new sintax and features, but it is no support yet by the old modules (also because most of concept have been rewritten, such as directives that become components).
More on https://angularjs.org/
We are doing the same thing at the moment and my current view is no, it's not ready. That's not based on the technology, but more on the lack of good examples and learning resources from the community, and also based on the fact that the Angular 2 documentation is currently unfinished (e.g. the tutorial and testing documentation).
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
I know a bit about Angular.js, but I want to teach myself Dart and Angular.dart now. I'm a bit curious what the differences between the two are, though. The Angular.dart tutorial specifically says it won't compare the two. Does anyone who has used both have a perspective on what the differences are?
Update #2 (Aug '16) A Dart version of Angular is now maintained by the Dart team on Github: dart/angular2 on github
Update: The AngularDart project is mothballed and has been superseded by Angular2. Angular2 is the most recent iteration of Angular and works in Dart.
The original answer below compares AngularDart and AngularJS 1.x.
AngularDart and AngularJS are both maintained by the Angular team. We've taken a lot of knowledge from the JS side and applied it to Dart. We have also taken a lot of code and ported it straight to the Dart world.
At a technical level, in the core of Angular:
The expression language is compatible between the two versions. The AngularDart parser started as a straight port from JS but has been evolving on its own. A big difference there is that the Dart parser supports multiple backends, including a Dart code generator.
The DI system is different. In Dart it is class based where in Javascript it is symbol based.
The compiler has been completely rewritten in the Dart version. This means that directives behave differently and now there is a distinction between "structural directives" which modify the DOM, "decorative directives" and components.
ng-transclude has "melted into the browser", replaced by the standard shadow DOM.
directive controllers have been merged into components
directives in AngularDart are declared with an annotated class. link / compile functions are replaced with an apply function
In AngularDart, the scope is digested automatically through Dart zones, eliminated the need from scope.$apply.
AngularDart has a concept of attribute maps which hasn't made it back to AngularJS yet. This means that directives should need many fewer scope.$watches or even a dependency on the Scope.
There may be other differences, but that is a good list to get you started.
So the first difference is pretty obvious: AngularJS is written in JavaScript whereas Angular.dart is written in dart.
While Angular.dart follows the core principles of AngularJS it seems to be a bit of a playground for new features to evolve. I guess the core team takes all the learnings from AngularJS and tries to implement things just slightly better for the Angular.dart version. Currently it seems as if a bunch of things are first implemented in the dart version of Angular before they get backported to AngularJS. For instance they just added a more lightweight version of ng-repeat which eventually should end up in AngularJS.
Also the Angular team recently shared some insights on what's planned for Angular 2.0. I bet most of those things will first land in Angular.dart before they land in AngularJS.
Update 01/2018
See also What's the difference between Angular 2 TS and Angular 2 Dart?
Update 08/2016
Angular 2 for JS and Dart are now independent projects and will diverge to some degree.
For example the NgModule introduced in TS RC.5 will probably not land in Dart and also the router module will probably not be translated directly.
These are changes that were necessary in TS for lazy loading. Dart has an easier lazy loading story and doesn't need many of the changes introduced in Angular2 for TS.
Update
With Angular 2 there are (almost) no differences anymore because Angular.dart and Angular.js are auto-generated from the same TypeScript source.
http://techcrunch.com/2015/03/05/microsoft-and-google-collaborate-on-typescript-hell-has-not-frozen-over-yet/
Original
Analog of ngTransclude in Angular.Dart
Angular.dart uses shadowDom while AngularJs doesn't.
AngularJs uses ngTransclude instead.
What is the difference between ng-app and data-ng-app?
Angular.dart seems not to support other prefixes like discussed in the linked question.
Angular.dart has no equivalent to ng-init.
(see also GitHub issue - port: ng-init)
Angular.dart has no ng-controller directive (port: ngController)
instead #NgController(selector:'[foo-controller]', publishAs:'foo') is used
Angular.dart doesn't support ng-repeat with maps (ng-repeat with a Map not working)
Angular.dart has no restrict Has Angular.dart directive an equivalent to AngularJS's `restrict`
Misko Hevery the creator of AngularJS and member of the AngularDart team answered a similar question here
This article lists several differences: ANGULARDART FOR ANGULARJS DEVELOPERS. INTRODUCTION TO THE BEST ANGULAR YET.