Mastering AngularJS

Laravel 5: programmare applicazioni PHP solide e robuste
18 aprile 2017
Phonegap Mobile App Development
18 aprile 2017
Frontend Development

Mastering AngularJS

AngularJS nasce con l’intento di essere flessibile e scalabile. La sua struttura riprende best-practice  e concetti sviluppati e consolidati negli anni da numerosi framework. Tuttavia, molti sviluppatori utilizzano solamente una piccola parte del reale potenziale offerto da AngularJS e questa giornata è dedicata all’approfondimento e all’utilizzo di metodologie, best practices e costrutti allo scopo di realizzare architetture solide e scalabili e approfondire tematiche quali lo sviluppo di direttive custom, l’utilizzo di service/factory, le promises e molto altro, allo scopo di sfruttare pienamente le funzionalità del framework.

Prerequisiti

Questo corso è pensato per gli sviluppatori che già utilizzano AngularJS e che conoscono le potenzialità del framework.
Il partecipante dovrebbe conoscere buona parte delle nozioni affrontate durante le due giornate del corso Sviluppare applicazioni web con AngularJS.
In particolar modo dovrebbe possedere una certa familiarità nell’utilizzo delle direttive e dei servizi inclusi nel framework e, preferibilmente, anche se non indispensabile, aver già creato delle direttive custom, seppur semplici.

 

Obiettivi formativi

Nella prima parte del corso saranno approfondite diverse tematiche fondamentali per la creazione di codice di qualità e per lo sviluppo di componenti riutilizzabili in AngularJS: service, factory e provider, eventi, promises, watcher e si vedrà come AngularJS gestisce internamente gli aggiornamenti  tramite il ciclo di $digest. La seconda parte sarà invece dedicata alla creazione di direttive custom: dalle nozioni fondamentali – scope isolation, transclusion e link function – ad argomenti più avanzati come pre e post function, compile, direttive nidificate, controller, ereditarietà e priority. Saranno inoltre utilizzati plugin di terze parti per la creazione di animazioni e applicazioni interattive tramite jQueryUI, GSAP TweenMax, HTML5 Canvas/CreateJS e WebGL/ThreeJS.

 

Programma

Models
Utilizzo e organizzazione del codice tramite servizi personalizzati:

  • Service, factory e provider
  • Utilizzo dei watcher
    • watch all’interno di factory
    • watch nelle directive

 

Promises

  • Promise, defer e $q
  • Promise e factory
  • Promise multiple http
  • Promise e AngularJS routing

 

Creazione direttive custom con integrazione di librerie 3rd party open source

  • Utilizzare e integrare i plugin di jQueryUI all’interno di direttive
  • Gestire animazioni e creare componenti interattivi con GSAP e Tweenmax
  • Creare direttive custom che integrano HTML5 canvas e CreateJS per lo sviluppo di custom chart e infografiche
  • Integrazione WebGL / ThreeJS all’interno di direttive AngularJS: creare un viewer 3D per il caricamento di differenti modelli 3D animati in formato collada

 

Custom Directives Advanced

  • Gestione e organizzazione direttive in moduli
  • Manipolazione DOM in direttive
    • Utilizzo di $applyAsync e $evalAsync
    • Integrazione jQuery UI e gestione eventi esterni
  • Controllers in directive ed ereditarietà
  • Direttive multiple
    • Priority
    • Terminal
  • Directive nidificate
    • Utilizzo del required
    • Controller e bindToController
  • Utilizzo pre and post link functions
  • Utilizzo di $compile all’interno di direttive