AngularJS Tutorial : AngularJS 2.0 was featured, what is new in AngularJS JavaScript framework? AngularJS 2.0 vs AngularJS 1.5
AngularJs Tutorial - As we know, JavaScript Framework AngularJS has become one of the most popular open source in the world in this year. AngularJS has matured into a client-side MVW framework (Model-View-Whatever) for the building of complex single-page applications. It places equal importance on application testing and application writing, while simplifying the development process.
At the previews lessons, we have learn how to install AngularJs 1.5.2, please read on this link.
Improved Dependency Injection (DI)
Dependency injection (a software design pattern in which an object is passed its dependencies, rather than creating them itself) was one of the factors that initially differentiated Angular from its competitors. It is particularly beneficial in terms of modular development and component isolation, yet its implementation was plagued with problems in Angular 1.x. Angular 2.0 will will address these issues, as well as adding missing features such as child injectors and lifetime/scope control.
Screen Activator
This will give developers finer control over the navigation lifecycle, via a set of can* callbacks:
Meanwhile opinion remains divided as to whether breaking change is a good thing. Proponents claim there are hard limits on the improvements that can be made to 1.x, whilst opponents are understandably nervous at the apparent lack of a migration plan.
Resources : https://www.sitepoint.com/whats-new-in-angularjs-2/
See you next lessons..
At the previews lessons, we have learn how to install AngularJs 1.5.2, please read on this link.
What's New in AngularJS 2.0?
The current version of Angular is 1.3. This version is both stable and performant and is used by Google (the framework’s maintainers) to power a great many of their applications (it’s estimated that that there are over 1600 apps inside of Google running on Angular 1.2 or 1.3).AtScript
AtScript is a superset of ES6 and it’s being used to develop Angular 2.0. It’s processed by the Traceur compiler (along with ES6) to produce ES5 code and uses TypeScript’s type syntax to generate runtime type assertions instead of compile time checks. However, AtScript isn’t compulsory—you will still be able to use plain JavaScript/ES5 code instead of AtScript to write Angular apps.Improved Dependency Injection (DI)
Dependency injection (a software design pattern in which an object is passed its dependencies, rather than creating them itself) was one of the factors that initially differentiated Angular from its competitors. It is particularly beneficial in terms of modular development and component isolation, yet its implementation was plagued with problems in Angular 1.x. Angular 2.0 will will address these issues, as well as adding missing features such as child injectors and lifetime/scope control.
Annotations
AtScript provides tools for associating metadata with functions. This facilitates the construction of object instances by providing the required information to the DI library (which will check for associated metadata when calling a function or creating an instance of a class). It will be also easy to override parameter data by supplying an Inject annotation.Child Injectors
A child injector inherits all the services of its parent with the capability of overriding them at the child level. According to requirement, different types of objects can be called out and automatically overridden in various scopes.Instance Scope
The improved DI library will feature instance scope control, which will become even more powerful when used with child injectors and your own scope identifiers.Templating and Data Binding
Let’s take a look at templating and data binding as they go hand in hand when developing apps.Dynamic Loading
This is a feature which is missing from the current version of Angular. It will be addressed by Angular 2.0, which will let developers add new directives or controllers on the fly.Templating
In Angular 2.0, the template compilation process will be asynchronous. As the code is based on the ES6 module spec, the module loader will load dependencies by simply referencing them in the component definition.Directives
In Angular 2.0 there will be three kinds of directives:- Component Directives – These will create reusable components by encapsulating logic in JavaScript, HTML or an optional CSS style sheet.
- Decorator Directives – These directives will be used to decorate elements (for example adding a tooltip, or showing/hiding elements using ng-show/ng-hide).
- Template Directives – These will turn HTML into a reusable template. The instantiating of the template and its insertion into the DOM can be fully controlled by the directive author. Examples include ng-if and ng-repeat.
Routing Solution
The initial Angular router was designed to handle just a few simple cases, yet as the framework grew, more and more features were bolted on. The router in Angular 2.0 has been reworked to be simple, yet extensible. It will include the following basic features:- Simple JSON-based Route Config
- Optional Convention over Configuration
- Static, Parameterized and Splat Route Patterns
- URL Resolver
- Query String Support
- Use Push State or Hashchange
- Navigation Model (For Generating a Navigation UI)
- Document Title Updates
- 404 Route Handling
- Location Service
- History Manipulation
Child Router
The child router will convert each component of the application into a smaller application by providing it with its own router. It will help encapsulate entire feature sets of an application.Screen Activator
This will give developers finer control over the navigation lifecycle, via a set of can* callbacks:
- canActivate – Allow/Prevent navigating to the new controller.
- activate – Respond to successful navigation to the new controller.
- canDeactivate – Allow/Prevent navigation away from the old controller.
- deactivate – Respond to successful navigation away from the old controller.
Design
All of this logic is built using a pipeline architecture which makes it incredibly easy to add one’s own steps to the pipeline or remove default ones. Moreover, its asynchronous nature will allow developers to a make server request to authenticate a user or load data for a controller, while still in the pipeline.Logging
Angular 2.0 will contain a logging service called diary.js—a super useful feature which measures where time is spent in your application (thus enabling you to identify bottlenecks in your own code).Scope
$scope will be removed in Angular 2.0 in favor of ES6 classes.Conclusion
There is a lot of excitement and buzz around Angular 2.0 at the moment and this will only heighten as its release date nears. The beginning of March will see the next ng-conf take place where it’s likely that more details of the next version will emerge.Meanwhile opinion remains divided as to whether breaking change is a good thing. Proponents claim there are hard limits on the improvements that can be made to 1.x, whilst opponents are understandably nervous at the apparent lack of a migration plan.
Resources : https://www.sitepoint.com/whats-new-in-angularjs-2/
See you next lessons..
COMMENTS