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 6 years ago.
Improve this question
I am new to angular 2 and SO as well. I would like to know the major architecture changes in Angular2 compared to Angular. There used to be $apply, $digest, $evalAsync and so much more, why was so many changes made in Angular.
From what I understood, the performance was the major issue which has been achieved in Angular2. It's more lightweight and all.
Can someone please shed some light on this. A brief answer would be of great help, just for a jump start.
Thanks in advance
There is a nice article in the docs of Angular 2 that may help you to get a good understanding of its building blocks: https://angular.io/docs/ts/latest/guide/architecture.html
$apply, $digest, $evalAsync does not exist anymore since Angular 2 has no digest cycle anymore.
An Angular 2 application can be pictured as a directed graph of components.
If you come from AngularJS you also can make your components run with Angular 2: https://angular.io/docs/ts/latest/guide/upgrade.html
There you can read really good explanation, how angular2 change detector works:
http://blog.thoughtram.io/angular/2016/02/22/angular-2-change-detection-explained.html
And what in general are zones:
http://blog.thoughtram.io/angular/2016/01/22/understanding-zones.html
http://blog.thoughtram.io/angular/2016/02/01/zones-in-angular-2.html
Here in brief about change detection:
How does optimised data binding mechanism work in Angular2
This is really essential knowledge if you want to create fast apps.
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 4 years ago.
Improve this question
I want to pursue towards becoming a FULL stack developer before that I want to get my grip on Angular.
I already know about the differences between AngularJS and Angular, my question is,
Is it necessary to learn AngularJS before learning Angular 4-6?
If not, can I apply for any project/job that has a listing requirement of AngularJS?
Summary: Can I directly learn Angular 4-6 from scratch without AngularJS?
Also, please suggest regarding which version of Angular (2-6) should be choosed to learn from scratch.
no it is not necessary to know AngularJs to lear Angular4-6 but i recommend you to first take a look on typeScript because it is necessary before you get started with Angular4-6 you should start with Angular5 because it is latest and there is not much difference in Angular5 and Angular6 which is better for getting familiar with Angular
You may skip AngularJS, though understanding vanilla, ECMA javascript and typescript is at must before you start to learn any kind of JS framework.
Talking about which version to start learning, I'd rather started upon learning the latest version possible, then invested some time reviewing changelog afterwards.
While you understand that tech, the latest version will become stable and popular.
While they share many concepts, AngularJS and Angular are two completely independent frameworks. There is no need to know one before learning the other.
Angular is very different from AngularJS. Ultimate version of AngularJS has been released so it is in sunset phase of it's life now...
http://www.codelord.net/2018/02/04/angularjs-1-dot-7-the-ultimate-version/
Google say that in October 2017 the number of active Angular (that is,
2+) developers has surpassed that of AngularJS developers, which was
their cue all along to when they can start wrapping up 1.x.
Regarding the job - I think that future of the angularJS projects is migration to Angular/Vue/React so your Angular skills might be relevant. You may apply and let them decide.
I suggest to start learning from the most actual version which is 6 now
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 4 years ago.
Improve this question
We all know AngularJS builds a digest loop when it comes to change detection , which proves to be less productive than Angular.
I want to know
How Angular works to get around this performance issue?
Does Angular also have a digest loop similar mechanism? if not , how does it know when a change could happen and need to perform change detection?
I know Angular boasts some features such as zone.js monkeypatch , unidirectional component tree, change detection strategy, RXJS ,immutableJS,etc.. either of which partly or directly drive Angular renders UI faster at the time a change happens. I'm not able to understand how Angular eventually gets faster by using these techniques together and properly?
Table that summarizes the major differences between Angular and AngularJS Change Detection.
To Explore more on this
Change Detection Differences between Angular and AngularJS
Change Detection Reinvented Victor Savkin
Angular’s $digest is reborn in the newer version of Angular
The Angular 2 Compiler Tobias Bosch
The Angular Compiler 4.0 - TOBIAS BOSCH.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
Improve this question
I don't think this is an easy question to answer but I am unable to find a comparison of the use cases for angular 1 and 2 rather than simply listing the new features. At my work we develop client side only web apps, we are not allowed to use a server, all of our content is loaded and delivered through iPads, and our development team is small and (relatively) inexperienced. We are just wrapping up an angular 1 project and are about to start a new project that is based on this recently finished one, it will be however much larger in scope and functionality. Because of this we thought it might be a good time to transition since we have already figured out the basic logic and structure of how this larger project will work. So I guess the best way to break it down is as follows:
are there any benefits (over angular 1) to angular 2, excluding features that depend on a server?
are there types of applications that angular 2 is better suited for?
does the community at large view angular 1 and 2 as coexisting with both being developed and supported or is it going to be angular 2 going forward?
am I looking at this completely wrong and it's not an all out nothing approach and we can develop in both?
Any advice is appreciated, if this is on the wrong section let me know and I will move it.
I don't think there is any question that you should be moving into Angular 2. Especially now that Angular 2 has reached the stage of Release Candidate. If not migrating from 1 to 2, then starting your new project completely in Angular 2.
Angular 2 is a completely new framework and, in my opinion, much easier and simplified. There are a whole array of reasons why Angular 2 is better than Angular 1, not the least of which is that Angular 2 is much faster and is the future as far as Angular development is concerned.
Yes there are some growing pains, but I firmly believe you will be very happy with Angular 2 and not look back. Take the time to learn it and you will be very happy you did.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I get it: the API is going to change, possibly in dramatic ways.
However, I make small apps for less than 10 customers each. I'm thinking that I can:
choose a specific version and stick with it
make lots of tests to check for compatibility with new releases
Also, given the projects are small, there's very little code to update when needed.
I realize that the Angular team is communicating the general readiness of their code in terms of availability for adoption from the general developer user-base.
I hear things like:
"Should You Use Angular 2.0 or 1.x?" =>
"The executive summary: There’s no Angular 2 to use, so Angular 1 is still the way to go."
And then I see videos showing how to use it. And I think to myself: with the above strategy of choosing a specific version & sticking with it + doing very careful updates to new releases, I don't see a very compelling reason not to. I mean, the only thing not to do would be not to go complaining to Angular whenever their changes inevitably break my code; it's expected. I'd be disappointed if it didn't break between now & then. That's part of the fun. Fix it and move on.
Concerns:
Security: the only real concern that gives me pause is that some security issue might be in play. But then, that's almost always the case. After all, it is the world of cyber insecurity.
Angular team can still make major changes in syntax and behaviour.
You can just try to use similiar approach with Angular 1.x, especially they introduced .component in Angular 1.5.
So just work with directives and components, after Angular 2.0 release migration should be fairly easy.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I was playing with ReactJS for a bit, and given a bit of prior exposure to AngularJS, and the way things are done in the latter, I had a hard time to get used to the syntax and the 'flow' of React.
So I had the above-mentioned question, plus: are there scenarios when ReactJS should be preferred to AngularJS?
Could anyone point out what can be done [easier/better/more efficiently] in React rather than in Angular, and other way around.
It's actually the opposite. Angular has a lot of features, apis, configuration options, etc. React tries to be much simpler and let you choose how your application is structured. Controllers, directives, and templates are reduced to just components. Services are just plain JavaScript, there's nothing React specific about it. Things like $q and $timeout don't exist because there's no digress (use anything you like for those).
You use React in your application, vs making your application in angular.
ReactJS uses the concept of virtual DOM which speeds up the rendering of the app.
Watch Pete Hunt's excellent video on Virtual Dom here:
https://www.youtube.com/watch?v=-DX3vJiqxm4
The syntax might be very unconventional but the same thing can be said about Angular's concept of Directives, services, controllers, etc. It just takes time to get used to, but once you feel comfortable, you'll find that thinking in ReactJS really makes sense.