0% found this document useful (0 votes)
339 views

AngularJS - Wikipedia PDF

AngularJS is an open-source JavaScript framework, maintained by Google. Library reads in HTML that contains additional custom tag attributes. It binds input or output parts of the page to a model represented by standard JavaScript variables. Values of those variables can be manually set, or retrieved from static or dynamic JSON resources.

Uploaded by

fabrom
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
339 views

AngularJS - Wikipedia PDF

AngularJS is an open-source JavaScript framework, maintained by Google. Library reads in HTML that contains additional custom tag attributes. It binds input or output parts of the page to a model represented by standard JavaScript variables. Values of those variables can be manually set, or retrieved from static or dynamic JSON resources.

Uploaded by

fabrom
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

4/3/2014

AngularJS - Wikipedia, the free encyclopedia

AngularJS
From Wikipedia, the free encyclopedia

AngularJS is an open-source JavaScript framework, maintained by Google, that assists with running single-page applications. Its goal is to augment web-based applications with modelviewcontroller (MVC) capability, in an effort to make both development and testing easier. The library reads in HTML that contains additional custom tag attributes; it then obeys the directives in those custom attributes, and binds input or output parts of the page to a model represented by standard JavaScript variables. The values of those JavaScript variables can be manually set, or retrieved from static or dynamic JSON resources.
Developer(s) Initial release Stable release

AngularJS

Google Inc. and community. 2009 1.2.14 / March 1, 2014

Development status Active Written in Operating system JavaScript Cross-platform 100 KiB production 724 KiB development JavaScript framework MIT License www.angularjs.org (http://www.angularjs.org/)

Contents
1 Philosophy 2 Bootstrapper 3 Notable directives 4 Two-way data binding 5 Chrome plugin 6 Legacy browser support 7 Development history 7.1 Releases 8 Comparisons to Backbone.js 9 See also 10 References 11 Further reading 12 External links

Size Type License Website

Philosophy
AngularJS is built around the belief that declarative programming should be used for building user interfaces and wiring software components, while imperative programming is excellent for expressing business logic.[1] The framework adapts and extends traditional HTML to better serve dynamic content through two-way data-binding that allows for the automatic synchronization of models and views. As a result, AngularJS deemphasizes DOM manipulation and improves testability. Design goals: Decouple DOM manipulation from application logic. This improves the testability of the code. Regard application testing as equal in importance to application writing. Testing difficulty is dramatically affected by the way the code is structured. Decouple the client side of an application from the server side. This allows development work to progress in parallel, and allows for reuse of both sides.
http://en.wikipedia.org/w/index.php?title=AngularJS&printable=yes 1/9

4/3/2014

AngularJS - Wikipedia, the free encyclopedia

Guide developers through the entire journey of building an application: from designing the UI, through writing the business logic, to testing. Angular follows the MVC pattern of software engineering and encourages loose coupling between presentation, data, and logic components. Using dependency injection, Angular brings traditional server-side services, such as view-dependent controllers, to client-side web applications. Consequently, much of the burden on the backend is reduced, leading to much lighter web applications.

Bootstrapper
There are three phases of the AngularJS bootstrapper[2] that occur after the DOM completes loading: 1. Create a new Injector 2. Compile service - The Compile service is like compiling in C or C++. It walks the DOM and locates all the directives such as "ng-app". 3. Link phase - The link phase attaches all the directives to scope.

Notable directives
AngularJS directives allow the developer to specify custom and reusable HTML tags that moderate the behavior of certain elements. ng-app Declares an element as a root element of the application allowing behavior to be modified through custom HTML tags. ng-bind Automatically changes the text of an HTML element to the value of a given expression. ng-model Similar to ng-bind, but allows two-way data binding between the view and the scope. ng-class Allows class attributes to be dynamically loaded. ng-controller Specifies a JavaScript controller class that evaluates HTML expressions. ng-repeat Instantiate an element once per item from a collection. ng-show & ng-hide Conditionally show or hide an element, depending on the value of a boolean expression. Show and hide is achieved by setting the CSS display style. ng-switch Conditionally instantiate one template from a set of choices, depending on the value of a selection expression. ng-view The base directive responsible for handling routes that resolve JSON before rendering templates driven by specified controllers. ng-if Basic if statement directive which allow to show the following element if the conditions are true. When the condition is false, the element is removed from the DOM. When true, a clone of the compiled element is re-inserted.
http://en.wikipedia.org/w/index.php?title=AngularJS&printable=yes 2/9

4/3/2014

AngularJS - Wikipedia, the free encyclopedia

Two-way data binding


AngularJS' two-way data binding is its most notable feature and reduces the amount of code written by relieving the server backend from templating responsibilities. Instead, templates are rendered in plain HTML according to data contained in a scope defined in the model. The $ s c o p eservice in Angular detects changes to the model section and modifies HTML expressions in the view via a controller. Likewise, any alterations to the view are reflected in the model. This circumvents the need to actively manipulate the DOM and encourages bootstrapping and rapid prototyping of web applications.[3] Some commentators say the AngularJS approach to data binding is much more straightforward than using either Ember.js[4] or Backbone.js.[5]

Chrome plugin
In July 2012, the Angular team built a plugin for the Google Chrome browser called Batarang,[6] that improves the debugging experience for web applications built with Angular. The extension aims to allow for easy detection of performance bottlenecks and offers a GUI for debugging applications.[7] The extension is not compatible with recent releases of Angular.

Legacy browser support


Versions 1.2 and later of AngularJS do not support Internet Explorer versions 6 or 7.[8] Versions 1.3 and later of AngularJS drop support for Internet Explorer 8.[9]

Development history
AngularJS was originally developed in 2009 by Miko Hevery and Adam Abrons as the software behind an online JSON storage service, that would have been priced by the megabyte, for easy-to-make applications for the enterprise. This venture was located at the web domain "GetAngular.com", and had a few subscribers, before the two decided to abandon the business idea and release Angular as an open-source library.[citation needed ] Abrons left the project, but Hevery, who works at Google, continues to develop and maintain the library with fellow Google employees Igor Minr and Vojta Jna.[citation needed ]

Releases
Releases 1.0.x and 1.2.x are the stable versions, whereas 1.1.x contained breaking changes between minor releases (i.e. 1.1.x 1.1.y).[10] The code names are super-power related, composed of two hyphen-joined words, should sound fun / crazy / cool and are publicly submitted and voted by users.[11] AngularJS versions Release Date Mar 1, 2014 Version 1.2.14 Codename feisty-cryokinesis (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.2.14) (stable) romantic-transclusion
http://en.wikipedia.org/w/index.php?title=AngularJS&printable=yes 3/9

4/3/2014

AngularJS - Wikipedia, the free encyclopedia

Feb 14, 2014 Feb 7, 2014 Feb 3, 2014 Jan 24, 2014 Jan 15, 2014 Jan 10, 2014

1.2.13

(https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.2.13) (stable) cauliflower-eradication (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.2.12) (stable) cryptocurrency-hyperdeflation (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.2.11) (stable) augmented-serendipity (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.2.10) (stable) enchanted-articulacy (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.2.9) (stable) interdimensional-cartography (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.2.8) (stable) emoji-clairvoyance (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.2.7) (stable) taco-salsafication (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.2.6) (stable) singularity-expansion (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.2.5) (stable) wormhole-blaster (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.2.4) (stable) unicorn-zapper (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.2.3) (stable) consciousness-inertia (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.2.2) (stable) underscore-empathy (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#121underscore-empathy-2013-11-14) (stable) timely-delivery (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#120timely-delivery-2013-11-08) (stable) ferocious-twitch (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#120-rc34/9

1.2.12

1.2.11

1.2.10

1.2.9

1.2.8

Jan 3, 2014 1.2.7 Dec 19, 2013 Dec 13, 2013 Dec 6, 2013 Nov 27, 2013 Nov 22, 2013 Nov 14, 2013 Nov 8, 2013

1.2.6

1.2.5

1.2.4

1.2.3

1.2.2

1.2.1

1.2.0

Oct 15, 2013

1.2.0rc3

http://en.wikipedia.org/w/index.php?title=AngularJS&printable=yes

4/3/2014

AngularJS - Wikipedia, the free encyclopedia

ferocious-twitch-2013-10-14) (unstable) Sep 4, 2013 Aug 22, 2013 Aug 13, 2013 May 22, 2013 May 22, 2013 Apr 4, 2013 Apr 3, 2013 Feb 22, 2013 Feb 20, 2013 Jan 22, 2013 Jan 22, 2013 Nov 26, 2012 Nov 26, 2012 Aug 31, 2012 Aug 31, 2012 Jun 25, 2012 Jun 13,
http://en.wikipedia.org/w/index.php?title=AngularJS&printable=yes 5/9

1.2.0rc2

barehand-atomsplitting (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#120-rc2barehand-atomsplitting-2013-09-04) (unstable) bubble-burst (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#108bubble-burst-2013-08-22) (stable) spooky-giraffe (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#120-rc1spooky-giraffe-2013-08-13) (unstable) monochromatic-rainbow (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#107monochromatic-rainbow-2013-05-22) (stable) triangle-squarification (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#115triangle-squarification-2013-05-22) (unstable) universal-irreversibility (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.0.6) (stable) quantum-manipulation (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#114quantum-manipulation-2013-04-03) (unstable) radioactive-gargle (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#113radioactive-gargle-2013-02-20) flatulent-propulsion (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#105flatulent-propulsion-2013-02-20) tofu-animation (https://github.com/angular/angular.js/blob/master/CHANGELOG.md) bewildering-hair (https://github.com/angular/angular.js/blob/master/CHANGELOG.md) pathological-kerning (https://github.com/angular/angular.js/blob/master/CHANGELOG.md) bouncy-thunder (https://github.com/angular/angular.js/blob/master/CHANGELOG.md) increase-gravatas (https://github.com/angular/angular.js/blob/master/CHANGELOG.md) debilitating-awesomeness (http://blog.angularjs.org/2012/09/angularjs-102debilitating-awesomeness.html) thorium-shielding (http://blog.angularjs.org/2012/06/angularjs-101-thoriumshielding.html)

1.0.8

1.2.0rc1

1.0.7

1.1.5

1.0.6

1.1.4

1.1.3

1.0.5 1.1.2 1.0.4 1.1.1 1.0.3 1.1.0 1.0.2 1.0.1

4/3/2014

AngularJS - Wikipedia, the free encyclopedia

2012 Jun 12, 2012 Jun 10, 2012 May 23, 2012 May 14, 2012 May 6, 2012 Apr 30, 2012 Apr 20, 2012 Apr 12, 2012 Apr 5, 2012 Mar 29, 2012 Mar 20, 2012 Mar 13, 2012 Jan 17, 2012 Nov 8, 2011 Oct 22, 2011 Oct 13, 2011 Oct 8, 2011 Sep 9, 2011 Sep 2, 2011 Aug 20, 2011

1.0.0 1.0.0rc12 1.0.0rc11 1.0.0rc10 1.0.0rc9 1.0.0rc8 1.0.0rc7 1.0.0rc6 1.0.0rc5 1.0.0rc4 1.0.0rc3 1.0.0rc2 1.0.0rc1 0.10.6 0.10.5 0.10.4 0.10.3 0.10.2 0.10.1 0.10.0

temporal-domination (stable)[10] regression-extermination (http://blog.angularjs.org/2012/06/angularjs-100rc12regression.html) promise-resolution (http://blog.angularjs.org/2012/06/angularjs-100rc11promise-resolution.html) tesseract-giftwrapping (http://blog.angularjs.org/2012/05/angularjs-100rc10tesseract.html) eggplant-teleportation (http://blog.angularjs.org/2012/05/angularjs-100rc9eggplant-teleportation.html) blooming-touch (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.0.0rc8) rc-generation (https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.0.0rc7) runny-nose reality-distortion insomnia-induction barefoot-telepathy silence-absorption moir-vision bubblewrap-cape steel-fist human-torch shattering-heartbeat sneaky-seagull inexorable-juggernaut chicken-hands

0.9.19

canine-psychokinesis
6/9

http://en.wikipedia.org/w/index.php?title=AngularJS&printable=yes

4/3/2014

AngularJS - Wikipedia, the free encyclopedia

Jul 29, 2011 Jun 30, 2011 April 11, 2011 April 1, 2011 Mar 13, 2011 Mar 3, 2011 Feb 8, 2011 Jan 26, 2011 Jan 13, 2011 Dec 23, 2010 Dec 10, 2010 Dec 6, 2010 Nov 25, 2010 Nov 18, 2010 Nov 10, 2010 Nov 3, 2010 Oct 26, 2010 Oct 20, 2010

0.9.18 0.9.17

jiggling-armfat vegetable-reanimation weather-control lethal-stutter key-maker curdling-stare thought-implanter snow-maker flea-whisperer time-shift astral-projection sonic-scream night-vision turkey-blast total-recall cold-resistance faunal-mimicry repulsion-field dragon-breath

Jun 7, 2011 0.9.16 0.9.15 0.9.14 0.9.13 0.9.12 0.9.11 0.9.10 0.9.9 0.9.8 0.9.7 0.9.6 0.9.5 0.9.4 0.9.3 0.9.2 0.9.1 0.9.0

Comparisons to Backbone.js
Data-binding
http://en.wikipedia.org/w/index.php?title=AngularJS&printable=yes 7/9

4/3/2014

AngularJS - Wikipedia, the free encyclopedia

The most prominent feature that separates the two libraries is in the way models and views are synchronized. Whereas AngularJS supports two way data-binding, Backbone.js relies heavily on boilerplate code to harmonize its models and views.[12] REST Backbone.js communicates well with RESTful backends. A very simple use of REST APIs is also available with AngularJS using the $resource service. AngularJS also provide a $http service which is more flexible, connecting to remote servers either through a browser's X M L H t t p R e q u e s tobject or via [13] J S O N P . Templating AngularJS templating uses a combination of customizable HTML tags and expressions. Backbone.js uses different templating engines such as Mustache.[12]

See also
MEAN

References
1. ^ "What Is Angular?" (http://docs.angularjs.org/guide/introduction). Retrieved 12 February 2013. 2. ^ "Writing Directives" (http://www.youtube.com/watch?v=WqmeI5fZcho&list=TLJUxRYO87UWA). angularjs.org. November 28, 2012. Retrieved 2013-07-21. 3. ^ "5 Awesome AngularJS Features" (http://net.tutsplus.com/tutorials/javascript-ajax/5-awesome-angularjsfeatures/). Retrieved 13 February 2013. 4. ^ Cdric Beust (December 29, 2012). "Migrating from Ember.js to AngularJS" (http://beust.com/weblog/2012/12/29/migrating-from-ember-js-to-angularjs/). Retrieved 2013-06-01. 5. ^ Joel Rosen (April 9, 2013). "Using AngularJS at Localytics" (http://www.localytics.com/blog/2013/angularjsat-localytics/). Localytics. Retrieved 2013-06-01. 6. ^ Batarang homepage (https://github.com/angular/angularjs-batarang) 7. ^ http://blog.angularjs.org/2012/07/introducing-angularjs-batarang.html 8. ^ http://docs.angularjs.org/guide/ie 9. ^ http://blog.angularjs.org/2013/12/angularjs-13-new-release-approaches.html 10. ^ a b "AngularJS 1.0 -> 1.2 Roadmap" (http://blog.angularjs.org/2012/07/angularjs-10-12-roadmap.html). blog.angularjs.org. July 26, 2012. Retrieved 2013-04-27. 11. ^ "AngularJS Code Names" (https://www.google.com/moderator/#16/e=a62cb). 12. ^ a b "Backbonejs vs Angularjs: Demystifying the myths" (http://www.nebithi.com/2012/12/27/backbone-andangular-demystifying-the-myths/). Retrieved 13 February 2013. 13. ^ "Javascript Frameworks And Data Binding" (http://tunein.yap.tv/javascript/2012/06/11/javascript-frameworksand-data-binding/). Retrieved 13 February 2013.

Further reading
Green, Brad; Seshadri, Shyam (March 22, 2013). AngularJS (http://shop.oreilly.com/product/0636920028055.do) (1st ed.). O'Reilly Media. p. 150. ISBN 978-1449344856. Kozlowski, Pawel; Darwin, Peter Bacon (August 23, 2013). Mastering Web Application Development with AngularJS (http://www.packtpub.com/angularjs-web-application-development/book) (1st ed.). Packt Publishing. p. 372. ISBN 978-1782161820.

External links
http://en.wikipedia.org/w/index.php?title=AngularJS&printable=yes 8/9

4/3/2014

AngularJS - Wikipedia, the free encyclopedia

Official website (http://www.angularjs.org) AngularJS Modules Repository (http://ngmodules.org/) Built with AngularJS (http://builtwith.angularjs.org/) AngularJS at Google Groups (https://groups.google.com/forum/?fromgroups#!forum/angular) AngularJS at Google+ (https://plus.google.com/+AngularJS/posts) Batarang Chrome plugin (https://github.com/angular/angularjs-batarang) NG-CONF 2014 Videos and Slides (http://ng-conf.ng-learn.org/) Retrieved from "http://en.wikipedia.org/w/index.php?title=AngularJS&oldid=597854860" Categories: JavaScript libraries Rich Internet application frameworks Ajax (programming) Software using the MIT license Google software This page was last modified on 2 March 2014 at 20:10. Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

http://en.wikipedia.org/w/index.php?title=AngularJS&printable=yes

9/9

You might also like