AngularJS - Panoramica
AngularJS è un framework per applicazioni web open source. È stato originariamente sviluppato nel 2009 da Misko Hevery e Adam Abrons. Ora è gestito da Google. La sua ultima versione è 1.2.21.
La definizione di AngularJS come indicato dalla sua documentazione ufficiale è la seguente:
AngularJS è un framework strutturale per applicazioni web dinamiche. Ti consente di utilizzare HTML come linguaggio del modello e ti consente di estendere la sintassi dell'HTML per esprimere i componenti dell'applicazione in modo chiaro e conciso. Il data binding e l'inserimento delle dipendenze eliminano gran parte del codice che devi attualmente scrivere. E tutto avviene all'interno del browser, rendendolo un partner ideale con qualsiasi tecnologia server.
Caratteristiche generali
Le caratteristiche generali di AngularJS sono le seguenti:
AngularJS è un framework efficiente in grado di creare Rich Internet Applications (RIA).
AngularJS fornisce agli sviluppatori un'opzione per scrivere applicazioni lato client utilizzando JavaScript in un modo pulito Model View Controller (MVC).
Le applicazioni scritte in AngularJS sono compatibili con tutti i browser. AngularJS gestisce automaticamente il codice JavaScript adatto a ciascun browser.
AngularJS è open source, completamente gratuito e utilizzato da migliaia di sviluppatori in tutto il mondo. È concesso in licenza con la licenza Apache versione 2.0.
Nel complesso, AngularJS è un framework per creare applicazioni web su larga scala, ad alte prestazioni e di facile manutenzione.
Caratteristiche principali
Le caratteristiche principali di AngularJS sono le seguenti:
Data-binding - È la sincronizzazione automatica dei dati tra i componenti del modello e della vista.
Scope- Questi sono oggetti che fanno riferimento al modello. Fungono da collante tra il controller e la vista.
Controller - Queste sono funzioni JavaScript legate a un particolare ambito.
Services- AngularJS viene fornito con diversi servizi integrati come $ http per creare XMLHttpRequests. Questi sono oggetti singleton che vengono istanziati solo una volta nell'app.
Filters - Questi selezionano un sottoinsieme di elementi da un array e restituiscono un nuovo array.
Directives- Le direttive sono marcatori su elementi DOM come elementi, attributi, CSS e altro. Questi possono essere utilizzati per creare tag HTML personalizzati che fungono da nuovi widget personalizzati. AngularJS ha direttive integrate come ngBind, ngModel, ecc.
Templates- Queste sono le viste renderizzate con le informazioni dal controller e dal modello. Questi possono essere un singolo file (come index.html) o più visualizzazioni in una pagina utilizzando parziali .
Routing - È il concetto di cambiare visualizzazione.
Model View Whatever- MVW è un modello di progettazione per dividere un'applicazione in parti diverse chiamate Modello, Vista e Controller, ciascuna con responsabilità distinte. AngularJS non implementa MVC nel senso tradizionale, ma piuttosto qualcosa di più vicino a MVVM (Model-View-ViewModel). Il team di Angular JS lo definisce ironicamente come Model View W Anything.
Deep Linking- Il deep linking consente di codificare lo stato dell'applicazione nell'URL in modo che possa essere aggiunto ai segnalibri. L'applicazione può quindi essere ripristinata dall'URL nello stesso stato.
Dependency Injection - AngularJS ha un sottosistema di iniezione delle dipendenze integrato che aiuta lo sviluppatore a creare, comprendere e testare facilmente le applicazioni.
Concetti
Il diagramma seguente illustra alcune parti importanti di AngularJS che discuteremo in dettaglio nei capitoli successivi.
Vantaggi di AngularJS
I vantaggi di AngularJS sono:
Fornisce la capacità di creare un'applicazione a pagina singola in modo molto pulito e manutenibile.
Fornisce capacità di associazione dati a HTML. Pertanto, offre all'utente un'esperienza ricca e reattiva.
Il codice AngularJS è testabile dall'unità.
AngularJS utilizza l'iniezione di dipendenza e utilizza la separazione delle preoccupazioni.
AngularJS fornisce componenti riutilizzabili.
Con AngularJS, gli sviluppatori possono ottenere più funzionalità con codice breve.
In AngularJS, le viste sono pagine html pure e i controller scritti in JavaScript eseguono l'elaborazione aziendale.
Inoltre, le applicazioni AngularJS possono essere eseguite su tutti i principali browser e smartphone, inclusi telefoni / tablet basati su Android e iOS.
Svantaggi di AngularJS
Sebbene AngularJS abbia molti meriti, ecco alcuni punti di preoccupazione:
Not Secure- Essendo solo framework JavaScript, le applicazioni scritte in AngularJS non sono sicure. L'autenticazione e l'autorizzazione lato server sono necessarie per mantenere sicura un'applicazione.
Not degradable - Se l'utente della tua applicazione disabilita JavaScript, non sarà visibile nulla, tranne la pagina di base.
Direttive AngularJS
Il framework AngularJS può essere diviso in tre parti principali:
ng-app - Questa direttiva definisce e collega un'applicazione AngularJS a HTML.
ng-model - Questa direttiva lega i valori dei dati dell'applicazione AngularJS ai controlli di input HTML.
ng-bind - Questa direttiva lega i dati dell'applicazione AngularJS ai tag HTML.