Jump to content

Angular (web framework)

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Rachmaninoff (talk | contribs) at 18:56, 12 November 2017 (→‎Differences between Angular and AngularJS: "Quality" is a personal opinion.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Angular
Developer(s)Google
Initial release14 September 2016; 7 years ago (2016-09-14)[1]
Stable release
5.0.0 / 1 November 2017; 6 years ago (2017-11-01)[2]
Preview release
5.0.0-rc.9 / 31 October 2017; 6 years ago (2017-10-31)[3]
Repository
Written inTypeScript
PlatformCross-platform, modern browsers only
TypeJavaScript, Single-page application Framework
LicenseMIT License
Websiteangular.io

Angular (commonly referred to as "Angular 2+" or "Angular 2") is a TypeScript-based open-source front-end web application platform led by the Angular Team at Google and by a community of individuals and corporations to address all of the parts of the developer's workflow while building complex web applications. Angular is a complete rewrite from the same team that built AngularJS.

Angular is a framework for building client applications in HTML and either JavaScript or a language like TypeScript that compiles to JavaScript. Angular combines declarative templates, dependency injection, end to end tooling, and integrated best practices to solve development challenges. Angular empowers developers to build applications that live on the web, mobile, or the desktop.

Differences between Angular and AngularJS

Architecture of an Angular application. The main building blocks are modules, components, templates, metadata, data binding, directives, services and dependency injection.

Angular was a ground-up rewrite of AngularJS and has many unique features.

  • Angular does not have a concept of "scope" or controllers, instead it uses a hierarchy of components as its main architectural concept
  • Angular has a different expression syntax, focusing on "[ ]" for property binding, and "( )" for event binding
  • Mobile development – desktop development is much easier when mobile performance issues are handled first
  • Modularity – much core functionality has moved to modules, producing a lighter, faster core
  • Modern browsers only – reducing the need for browser compatibility workarounds
  • Angular recommends the use of Microsoft's TypeScript language, which introduces the following features:
  • TypeScript is a superset of ECMAScript 6 (ES6), and is backwards compatible with ECMAScript 5 (i.e.: JavaScript). Angular also includes the benefits of ES6:
  • Improved dependency injection – bindings make it possible for dependencies to be named
  • Dynamic loading
  • Asynchronous template compilation
  • Simpler Routing
  • Replacing controllers and $scope with components and directives – a component is a directive with a template
  • Reactive programming support using RxJS

History

Naming

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.[4]

Version 2.0.0

Angular 2.0 was announced at the ng-Europe conference 22-23. September 2014.[5] The drastic changes in the 2.0 version created considerable controversy among developers.[6] On April 30, 2015, the Angular developers announced that Angular 2 moved from Alpha to Developer Preview.[7] Angular 2 moved to Beta in December 2015,[8] and the first release candidate was published in May 2016.[9] The final version was released on September 14, 2016.

Version 4.0.0

On 13 December 2016 Angular 4 was announced, skipping 3 to avoid a confusion due to the misalignment of the router package's version which was already distributed as v3.3.0.[10] The final version was released on March 23, 2017.[11] Angular 4 is backward compatible with Angular 2.[12]

Angular version 4.3 is a minor release, meaning that it contains no breaking changes and that it is a drop-in replacement for 4.x.x.

Features in version 4.3

  • Introducing HttpClient, a smaller, easier to use, and more powerful library for making HTTP Requests.
  • New router life cycle events for Guards and Resolvers. Four new events: GuardsCheckStart, GuardsCheckEnd, ResolveStart, ResolveEnd join the existing set of life cycle event such as NavigationStart.
  • Conditionally disable animations.

Version 5.0.0

Angular 5 was released on November 1, 2017.[13] Key improvements in Angular 5 include support for progressive Web apps, a build optimizer and improvements related to Material Design.[14] Angular 6 release will be pushed back to March or April 2018, with Angular 7 showing up in September or October 2018. Each version is expected to be backward-compatible with the prior release. Google pledged to do twice-a-year upgrades.

References

  1. ^ "Angular, version 2: proprioception-reinforcement". blogspot.com. September 14, 2016. Retrieved 2017-03-18.
  2. ^ "angular/CHANGELOG.md at Master". GitHub. Retrieved 2017-10-31.
  3. ^ "angular/CHANGELOG.md at Master". GitHub. Retrieved 2017-10-31.
  4. ^ "Angular: Branding Guidelines for AngularJS". Retrieved 2017-03-04.
  5. ^ Coman Hamilton. "A sneak peek at the radically new Angular 2.0". Retrieved 2015-10-21.
  6. ^ Coman Hamilton. "Angular 2.0 announcement backfires". Retrieved 2015-10-21.
  7. ^ @angularjs (30 Apr 2015). "Angular 2 moves from Alpha to Developer Preview! Dev guide and API docs now available at ... angular.io/docs/js/latest" (Tweet). Retrieved 2015-10-21 – via Twitter.
  8. ^ "Angular: Angular 2 Beta". angularjs.blogspot.it. Retrieved 2016-07-13.
  9. ^ "angular/angular". GitHub. Retrieved 2016-05-04.
  10. ^ "Ok... let me explain: it's going to be Angular 4.0". angularjs.blogspot.kr. Retrieved 2016-12-14.
  11. ^ "Angular 4.0.0 Now Available". angularjs.blogspot.ca. Retrieved 2017-03-23.
  12. ^ "Angular 4 coming in 2017, to be backwards compatible with Angular 2". react-etc.net. Retrieved 2016-12-14.
  13. ^ Fluin, Stephen. "Version 5.0.0 of Angular Now Available". Retrieved 2 November 2017.
  14. ^ "Angular 5 JavaScript framework delayed".