AngularJS: un framework di frontiera per la realizzazione di siti Web

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "AngularJS: un framework di frontiera per la realizzazione di siti Web"

Transcript

1 Università degli Studi Mediterranea di Reggio Calabria Dipartimento di Ingegneria dell Informazione, delle Infrastrutture e dell Energia Sostenibile Corso di Laurea in Ingegneria dell Informazione Tesi di Laurea AngularJS: un framework di frontiera per la realizzazione di siti Web Relatore Prof. Domenico Ursino Candidato Cristiano Antonio Capanna Anno Accademico

2

3 Siamo prog ammati per andare avanti

4

5 Indice Introduzione 1 Capitolo 1 Che cos è AngularJS La storia Le principali caratteristiche Template Directive Expression Data-Binding Module Capitolo 2 Come utilizzarlo L installazione Primo esempio Secondo esempio Capitolo 3 Alcune applicazioni Web SEO e AngularJS Dispositivi mobili Responsive web app Applicazioni native con Cordova Capitolo 4 Analisi dei concorrenti Altri framework Ember.js Backbone.js Knockout.js AngularJS vs jquery? I due Data-Binding I

6 4.2.2 La verità è Capitolo 5 Le ultime battute Riepilogando AngularJS Ringraziamenti Bibliografia.. 57 II

7 III

8 IV

9 Introduzione L HTML è un linguaggio di markup solitamente usato per la formattazione e l impaginazione di documenti ipertestuali. I documenti HTML sono in grado di incorporare molte tecnologie che offrono la possibilità di aggiungere al documento ipertestuale interazioni dinamiche con l utente, animazioni interattive, contenuti multimediali, e molto altro ancora. Si tratta di linguaggi CSS, JavaScript, jquery, XML e JSON. JavaScript è un linguaggio di scripting orientato agli oggetti e agli eventi, comunemente utilizzato nella programmazione web lato client; esso viene impiegato all interno di altri linguaggi come, ad esempio, HTML. Per dar vita ad una pagina web si può utilizzare contemporaneamente HTML (per creare il template) e JavaScript (per creare la parte dinamica). Ma, nonostante la presenza di questi due linguaggi, definire la struttura di una pagina risulta difficile; per superare tali differenze che vengono in aiuto i framework. Un framework è un architettura logica di supporto su cui un software può essere progettato e realizzato, spesso facilitandone lo sviluppo da parte del programmatore. Sono molti i framework esistenti nel mondo dell open-source, e non ne esiste uno migliore in assoluto; la scelta dipende, ovviamente, dall utente che vuole utilizzarlo. Quello che presenteremo oggi sarà AngularJS. AngularJS è un framework JavaScript che permette di utilizzare il linguaggio HTML, assieme ad un insieme di suoi costrutti nativi, per sviluppare applicazioni single web page. Tale framework, basato sul pattern MVC, ha avuto un gran successo, soprattutto negli ultimi anni, grazie ad investimenti ricevuti da Google per svilupparne le capacità. AngularJS fu ideato nel 2009 da due sviluppatori, Misko Hevery e Adam Abrons. Il secondo abbandonò il progetto quando il primo, dopo essere stato assunto dalla Google, iniziò ad utilizzarlo per agevolare la scrittura del codice su cui stava lavorando. La multinazionale capì subito le potenzialità di AngularJS; infatti, iniziò ad utilizzarlo per riscrivere le applicazioni delle compagnie che andava via via acquisendo. Google creò un team che iniziò a lavorare esclusivamente sul framework aggiornandolo e mantenendolo all avanguardia. Le caratteristiche principali che fanno di AngualrJS uno tra i framework più cliccati ed utilizzati sono: Template; permette di utilizzare HTML in cooperazione con attributi specifici di AngularJS. Dal momento che AngularJS si basa sul pattern MVC, possiamo considerare il Template come la View che raccoglie informazioni provenienti dal Model e dal Controller.

10 Directive; sono le componenti fondamentali dell applicazione AngularJS; di default, ci viene offerta una vasta gamma di Directive; ciò non toglie che è possibile creare le nostre, in modo da personalizzare completamente l applicazione creata. Expression; è considerata la parte dinamica del codice, che può sostituire o lavorare in cooperazione con JavaScript. Data-Binding; è l innovazione più importante di AngularJS, e rappresenta la sincronizzazione automatica del codice tra View, Model e Controller. La differenza del Data-Binding con gli altri framework è che questa sincronizzazione viene effettuata automaticamente da Angular, e non manualmente, come negli altri framework. Module; è ciò che rende snodabile il codice delle pagine web create; possiamo, quindi, vederle i Module come contenitori che racchiudono le diverse parti del sito. Come detto, AngularJS non è l unico framework open source per costruire applicazioni single web page; infatti, ne esistono diversi, ciascuno dei quali presenterà vantaggi e svantaggi rispetto ad AngularJS. I principali concorrenti sono: Ember.js; basato sul pattern MVC, si pone come obiettivi quelli di: aiutare l utente a creare la parte client side delle applicazioni, adattarsi e, al contempo, evolversi rispetto alle nuove tecnologie. È un framework più vecchio rispetto ad AngularJS in quanto, la sua creazione risale al 2007; in un secondo momento il suo sviluppo è stato portato avanti dalla Apple. Backbone.js; è un framework famoso per la sua leggerezza; ha un interfaccia Restfull JSON basata sul pattern MVC. La sua leggerezza è sia un vantaggio, sia uno svantaggio, in quanto se da un lato lo rende estremamente rapido, con una curva di apprendimento lineare, dall altro non gli consente di garantire allo sviluppaotre la possibilità di realizzare un architettura stabile. Knockout.js; è una libreria che si basa sul pattern MVVM (variante del pattern MVC). Questa libreria non fornisce aiuti nella gestione del DOM, ma si focalizza sulla creazione dell interfaccia utente, riducendo la quantità del codice da scrivere. In ultimo, abbiamo la libreria jquery; questa aiuta gli sviluppatori nella manipolazione del DOM attraverso l uso di API chiare e semplici. jquery è stata rilasciata per la prima volta nel 2006, ed è un progetto tutt ora in via di sviluppo grazie anche all apporto di Microsoft. Molti sviluppatori considerano jquery come un concorrente di AngularJS; in realtà, vi è la possibilità di cooperazione tra il framework e la libreria (o meglio, i suoi plugin), soprattutto grazie all ultima versione di AngularJS che sarà rilasciata (AngularJS 1.4) L uso di AngularJS non si limita alla creazione di applicazioni single web page; il framework, infatti, può essere utilizato anche per la creazione di applicazioni per dispositivi mobili. Ovviamente, quest ultime saranno applicazioni di tipo ibride, soprattutto se create in cooperazione con Cordova. AngularJS fornirà dei vantaggi e degli svantaggi; in particolare la snodabilità viene senz altro aumentata grazie, anche, all aiuto di AngularJS. VI Cristiano Antonio Capanna

11 AngularJS: un framework di frontiera per la creazione di siti Web Il presente lavoro di tesi è strutturato come di seguito specificato: Nel primo capitolo vengono presentate la storia che sta alla base della nascita del framework AngularJS, le sue caratteristiche e, per le più importanti tra queste ultime, una descrizione più dettagliata. Il secondo capitolo spiegherà in che modo poter avere Angular nella nostra piattaforma di sviluppo; saranno presentati due facili esempi per vederne le potenzialità rispetto alla programmazione web. Nel terzo capitolo saranno descritti i vantaggi nell utilizzo web sia rispetto la programmazione sia rispetto alla visibilità all interno del web (dando un occhiata alla tecnologia SEO); in più, verrà descritta la possibilità di utilizzare Angular anche per lo sviluppo di applicazioni su dispositivi mobili. Il quarto capitolo presenterà i framework concorrenti di AngularJS, ne espliciterà i vantaggi e gli svantaggi e spiegherà la possibilità di integrare Angular con jquery. Infine, nel quinto capitolo verranno tratte le conclusioni e verranno illustrati alcuni possibili sviluppi futuri. Cristiano Antonio Capanna VII

12 VIII Cristiano Antonio Capanna

13 Capitolo 1 Che cos è AngularJS AngularJS è un framework di JavaScript, patrocinato da Google. È open-source ed è rilasciato sotto la licenza MIT (una licenza di software libero creata dal Massachusetts Institute of Technology). Il suo obiettivo è quello di risolvere i problemi riguardanti la creazione di Single Page Web Application. Questo framework ci permette di utilizzare HTML come linguaggio di template. La sua logica è basata sul pattern MVC. In questo capitolo vedremo la storia e le principali caratteristiche che fanno di AngularJS uno dei più utilizzati framework degli ultimi anni.

14 1.1 La storia AngularJS è stato creato, come progetto parallelo, nel 2009 da due sviluppatori, Misko Hevery e Adam Abrons. I due, inizialmente, immaginavano che il loro progetto, GetAngular, sarebbe diventato un strumento end-to-end e che avrebbe permesso ai designer di interagire sia con il front-end sia con il back-end. Hevery iniziò a lavorare per un progetto della Google chiamato Google Feedback. Lui e altri due sviluppatori scrissero linee di codice in un periodo che andava fino ad oltre i sei mesi. Ma, mentre la grandezza del codice andava aumentando, la pazienza di Hevery andava diminuendo; si sentiva sempre più frustrato per le difficoltà riscontrate nel testare e modificare il codice che lui ed il suo team avevano scritto. Quindi Hevery fece una scommessa con il suoi project-manager, Brad Green: sarebbe riuscito a riscrivere l intera applicazione usando la parte di progetto di GetAngular in sole due settimane riducendo drasticamente le linee di codice. Hevery perse la scommessa in quanto non riuscì a riprodurlo riprodurlo nei giusti tempi ma impiegò tre settimane. In compenso, riuscì ad eliminare dalle linee di codice più del 90% riducendole a sole Green prese ovviamente nota del successo dello sviluppatore e quello fu il punto di partenza che iniziò a dar vita a AngularJS. Il secondo creatore di GetAngular, Adam Abrons smise di lavorare al progetto quando Hevery e il suo projectmanager lo trasformarono in un nuovo progetto chiamato, appunto, AngularJS. Costruirono un team per elaborare e mantenere il nuovo progetto all interno della stessa Google. Una delle vittorie più grandi di Angular, internamente a Google, si ebbe quando una compagnia acquisita dalla multinazionale, DoubleClick, iniziò a riscrivere parte della sua applicazione utilizzando AngularJS. Dato l iniziale successo che DobleClick ebbe, Google investì più risorse nel suo nuovo framework, dando la possibilità di gestire sia la parte interna a DoubleClick, sia quella esterna. Iniziarono ad aumentare le persone che si occupavano dello sviluppo e il framework inizò a crescere rapidamente. I principali sviluppatori di questo framework fanno parte, appunto, di Google, come si può notare anche dalla tabella 1.1 e 1.2: 10 Cristiano Antonio Capanna

15 AngularJS: un framework di frontiera per la realizzazione di siti Web Tabella Sviluppatori di AngularJS dalla creazione al 08/02/2014 Tabella Sviluppatori di AngularJS dalla creazione al 25/08/2014 Cristiano Antonio Capanna 11

16 È inusuale ed, economicamente parlando, rischioso vedere un framework controllato da un'unica entità, ma, al contempo, ci sono molti vantaggi in ciò, uno tra i quali evitare le lotte per accaparrarsi l esclusiva. Nel mondo dell open-source queste lotte sono pubbliche, cattive e distruttive per il software stesso o per i clienti che vogliono utilizzarlo (un esempio di scontro tra due compagnie può essere quello dietro Node.js, e le due compagnie sono: Jovyent e Strongloopp). È ovvio che esistano contributi da parte di sviluppatori che non fanno parte della Google family, il primo che possiamo notare è Sahahar Talmi facente parte della compagnia chiamata Wix (potremmo inserire all interno dei no-googler Ken Sheedlo, ma, in realtà, la maggior parte dei suoi lavori per AngularJS furano fatti mentre era all interno di Google). Un altro importantissimo fatto da assumere è che i più importanti sviluppatori di Angular non hanno iniziato con Google, ma, dopo l apporto al framework, sono stati assunti dalla multinazionale. Questo ci fa capire l importanza degli investimenti che Google fa su AngularJS. 1.2 Le principali caratteristiche Le caratteristiche che fanno di AngularJS uno dei framework più utilizzati sono: Templates: è formato dal linguaggio HTML con markup addizionali; Directive: estendono il linguaggio HTML con attributi ed elementi; Model: riporta i dati che l utente vede nella View e con cui interagisce; Scope: è il contesto in cui il Model e il Controller sono collocati e dove le Directive e le Expression possono accedervi; Expression: variabili d accesso e funzioni provenienti dallo Scope; Compiler: analizza il template, le Directive e le Expression; View: quello che l utente vede (il DOM); Data Binding: sincronizza i data tra Model e View; Controller: la logica di business dietro la View; Dependency Injection: crea e collega gli oggetti e le funzioni; Injector: contenitore del Dependency Injector; Module: un contenitore per le differenti parti di un applicazione, inclusi Controller, Services, Filter, Directive, che configurano l Injector; 12 Cristiano Antonio Capanna

17 AngularJS: un framework di frontiera per la realizzazione di siti Web Service: logica di business riutilizzabile, indipendente dalla View. Nelle prossime sezioni descriveremo alcune di tali caratteristiche Template In AngularJS, il Template è scritto tramite HTML che contiene elementi e attributi specifici di Angular. Tale framewok combina il Template con informazioni provenienti dal Model e dal Controller per rendere dinamica la View, cioè quello che l utente vede all interno del Browser. Gli elementi che contribuiscono al dinamismo della View sono: Directive (che descriveremo meglio in seguito); Markup: la notazione a doppia parentesi graffa { { } } che ci indica la costruzione di un elemento o di un attributo; Filter: il formato dei data per il display; Form control: validazione degli input utente. In una semplice applicazione, il Template consiste in un insieme di codici HTML, pagine CSS e Directive contenute in un file HTML (genericamente index.html). In un applicazione più complessa è possibile visualizzare più viste all interno di una pagina principale, con alcuni segmenti di Template localizzati in file di HTML separate. Possiamo utilizzare la Directive ngview per caricare questi segmenti Directive Le Directive sono le componenti più importanti di ogni applicazione Angular. Sebbene tale framework abbia al suo interno un vasta gamma di Directive, possiamo comunque introdurre e creare Directive semplici nel momento in cui vogliamo creare una nuova applicazione. Una Directive è qualcosa che introduce una nuova sintassi. Le Directive sono marcatori degli elementi del DOM, che forniscono ad essi degli specifici comportamenti. Per esempio, il linguaggio statico di HTML non saprebbe come creare e mostrare un data picker widget (cioè un applicazione per visualizzare i dati). Per "insegnare" al linguaggio HTML questa nuova sintassi abbiamo bisogno delle Directive. Le Directive, in qualche modo, creeranno un elemento che si comporterà da data picker. Le Directive più semplici che possiamo elencare sono: ng-model; ng-show; ng-repeat. Cristiano Antonio Capanna 13

18 Tutte queste Directive fanno assumere agli elementi del DOM un determinato comportamento, ad esempio ng-repeat ripete uno specifico elemento e ng-show mostra un elemento. Se volessimo rendere un elemento trascinabile potremo creare una Directive per farlo. L'idea di base dietro le Directive è veramente semplice: esse rendono il nostro codice HTML estremamente interattivo allegando comportamenti differenti ai vari DOM. Le Directive di Angular sono disponibili in quattro aspetti differenti: un nuovo elemento HTML (ad esempio, <data-picker></date>); un attributo su un elemento (ad esempio, <input type= text datapicker/>); una classe (ad esempio, <input type= text class= data-picker />); un commento (ad esempio, <!- -directive:data-picker- ->). Ovviamente, abbiamo il controllo di come le nostre Directive appariranno nel codice HTML Expression Le Expression in Angular sono come codici JavaScript inserite genericamente all interno delle doppie parentesi graffe ( {{expression}} ). Alcuni esempi di Expression valide all interno di Angular sono i seguenti: 1+2; a+b; user.name; Item[index]. Per quanto riguarda le differenze che intercorrono tra le Expression di AngularJS e quelle di JavaScript possiamo osservare che: Le Expression di AngularJS, a differenza delle espressioni JavaScript, non hanno accesso alle variabili globali come window, document o location. Questa restrizione è intenzionale, in quanto proviene bug all interno dell applicazione. A parte l operatore ternario (a? b : c ), non si può utilizzare un flusso di controllo all interno di un Expression. La ragione dietro questa impossibilità è data dalla filosofia di AngularJS, cioè la logica delle applicazioni deve essere esclusivamente contenuta all interno del Controller, non nella View. Se necessitiamo di una vera condition, di un loop o, comunque, di un flusso dobbiamo delegare il tutto a metodi di JavaScript e non di AngularJS. 14 Cristiano Antonio Capanna

19 AngularJS: un framework di frontiera per la realizzazione di siti Web Non possiamo dichiarare le funzioni o le espressioni regolari (cioè un insieme di stringhe) all interno delle Expression; questo per evitare che modelli complessi vadano a trasformare in qualche modo qualcosa all interno dei Template. Quindi, è preferibile porre le funzioni e le espressioni regolari all interno di un filtro dedicato o di un controllore in modo da poter essere testate correttamente. Non possiamo utilizzare operazioni con comma e void. Possiamo utilizzare Filter all interno delle Expression per formattare i data prima che questi vengano visualizzati. Siamo perdonati quando utilizziamo valori del tipo undefined e null. Se volessimo utilizzare dei codici JavaScript più complessi di quelli copiabili da Angular dovremmo dichiararlo anticipatamente per poi richiamarlo all interno della View Data-Binding Come detto, AngularJS basa la sua logica sul design pattern MVC (Model-View-Controller), cioè sulla separazione delle responsabilità. Possiamo dare i seguenti significati alle tre componenti del pattern: Model: questa classe si occupa solo dello stato e della logica dell applicazione; View: questa classe si occupa solo della gestione delle interfacce utente in risposta ad aggiornamenti generici che riceve dal Model; Controller: questa classe si occupa di tradurre l input dell utente in aggiornamenti che vengono poi passati al Model; Con il termine Data-Binding, nelle applicazioni AngularJS, si intende la sincronizzazione automatica dei dati tra i componenti del Model e della View. Il modo con cui Angular implementa il Data-Binding fa sì che il Model possa essere considerato come l unica fonte di verità della nostra applicazione; la View può essere vista come una proiezione del Model. Quando il Model cambia, la View riflette i cambiamenti, e viceversa. Molti dei sistemi classici di templating hanno il Data-Binding in un unica direzione, ovvero uniscono il Template e le componenti del Model all interno della View. Dopo l unione, però, i cambiamenti al Model o alle relative sezioni della View non vengono automaticamente riflessi. Allo stesso modo, i Cristiano Antonio Capanna 15

20 cambiamenti che vengono fatti all interno della View non sono riflessi all interno del Model. Questo significa che gli sviluppatori devono sincronizzare manualmente la View con il Model, e viceversa, ogniqualvolta vengono effettuati dei cambiamenti. Il Template di Angular lavora differentemente. Prima esso (che consiste in codice HTML non compilato, insieme a qualsiasi altro markup o Directive supplementare) viene compilato nel browser. Gli step di compilazione producono una View in diretta. Ogni cambiamento all interno della View è immediatamente riflesso nel Model e ogni cambiamento del Model è immediatamente riflesso nella View. Il Model sarà l unica fonte di verità per l applicazione semplificando notevolmente la vita al programmatore. Possiamo pensare, quindi, che la View è semplicemente una riflessione istantanea del Model. Dal momento che la View è una proiezione del Model, il Controller è completamente separato dalla View ed ignora la sua esistenza; questo ci aiuta anche nel testing, che sarà molto più semplice e veloce Module Possiamo pensare un Module come un contenitore per le differenti parti di un applicazione: Controller, Service, Filter, Directive, etc. Perché utilizzare i Module? Molte applicazioni hanno un metodo principale (main method) che istanzia e collega le altre parti. Le applicazioni in Angular non hanno questo metodo; saranno le specifiche dichiarate all interno del Module a dirci come inizializzare l applicazione. Ci sono, ovviamente, importanti vantaggi nell utilizzare tale approccio: Il processo dichiarativo è più facile da comprendere. È possibile impacchettare il codice come Module riutilizzabili. I Module possono essere caricati in qualunque ordine (o eventualmente in parallelo, eccetto quando sono dipendenti l uno dell altro). La Unit Test (cioè il caricamento di piccoli sottoinsiemi dell applicazioni che vengono sottoposti a stimoli da parte dei Module) deve caricare solo i Module rilevanti, ovvero quelli destinati direttamente al testing, cosa molto più semplice rispetto al caricamento completo di tutti i Module o, comunque, di parti che non hanno niente a che fare con il testing. Ciò rende estremamente concentrato il nostro codice. Il Test end-to-end può usare i Module per sovrascrivere le configurazioni. Possiamo provare a dare ai Module una nuova definizione: un Module è un insieme di blocchi di configurazione e di blocchi di esecuzione che vengono applicati durante l inizializzazione di un 16 Cristiano Antonio Capanna

21 AngularJS: un framework di frontiera per la realizzazione di siti Web processo. Se teniamo in considerazione questa semplice definizione, un Module consiste in una collezione di due tipi di blocchi: Blocchi di configurazione: vengono eseguiti durante le registrazioni del provider in fase di configurazione. All interno di tali blocchi possiamo inserire solo i provider e delle costanti; evitiamo, in tal modo, che ci siano istanze prima del completamento delle configurazioni. Blocchi di esecuzione: vengono eseguiti dopo che l iniettore è stato creato e usato per l inizio dell esecuzione. All interno di tali blocchi possiamo inserire esclusivamente le istanze e alcune costanti; in questo modo preveniamo la presenza di configurazioni durante l esecuzione dell applicazione. I Module possono avere delle dipendenze tra di loro, cioè un Module può richiedere le prestazioni di un altro Module. Le dipendenze dei Module implicano che dapprima bisogna caricare il Module richiesto e, solo successivamente, il Module richiedente. In altre parole il blocco di configurazione del Module richiesto viene eseguito prima di quello richiedente. La stessa cosa avviene per quanto riguarda i blocchi di esecuzione. Un Module può essere caricato una sola volta anche se viene richiesto da più Module. Cristiano Antonio Capanna 17

22 18 Cristiano Antonio Capanna

23 AngularJS: un framework di frontiera per la realizzazione di siti Web Capitolo 2 Come utilizzarlo La prima parte di questo capitolo spiegherà come impostare il nostro dispositivo per lo sviluppo tramite AngulaJS. La seconda parte presenterà una facile demo delle prestazioni del framework. Cristiano Antonio Capanna 19

24 2.1 L installazione L'utilizzo di AngularJS è affidato a due metodi: con il primo avremo la necessità di importare il pacchetto JavaScript ogni volta che iniziamo il progetto, nella parte interessata, oppure nell'header; il secondo ci porta a scaricare AngularJS attraverso GitHub (un servizio di web hosting per lo sviluppo di progetti software che può essere utilizzato per la condivisione e la modifica di file di testo e documenti revisionabili) e Node.JS (si tratta di un framework relativo all'utilizzo server-side di JavaScript) così da poterlo avere a nostra disposizione immediatamente durante la compilazione del codice. Per il primo metodo abbiamo bisogno solo di copiare e incollare una linea di codice all'interno dell'header, facendolo, però, per ogni progetto che iniziamo. Per il secondo dovremo dedicare qualche minuto in più: vediamo come. Possiamo scaricare e installare GitHub da Dopo aver eseguito i tradizionali passi per l installazione, passiamo a Node.JS; il link in cui trovarlo è anche in questo caso dovremo compiere i soliti passi per l installazione. Figura 2.1 Informazioni di Git visualizzati dal prompt dei comandi 20 Cristiano Antonio Capanna

25 AngularJS: un framework di frontiera per la realizzazione di siti Web Figura Informazioni di Node.JS visualizzati dal prompt dei comandi Potremo verificare la corretta installazione dei due programmi attraverso la finestra terminale (il prompt dei comandi), inserendo prima il codice git, che farà apparire una serie di informazioni riguardanti la versione e alcuni comandi da poter utilizzare (Figura 2.1). Analogo discorso potrà essere fatto con Node.JS; il comando che verrà utilizzato per vedere le informazioni sarà npm (Figura 2.2). Per quanto riguarda GitHub i comandi che dovremo conoscere, da inserire all interno del prompt, saranno esclusivamente due: git clone: per copiare un repository remoto all interno del nostro PC; git checkout: per estrarre una particolare versione del codice che sarà successivamente utilizzato. Utilizziamo il primo dei due codici elencati associando l indirizzo in cui è contenuto il repository di AngularJS: git clone In seguito a ciò creata una directory in cui sono contenuti tutti i file del repository. Entriamo in questa cartella attraverso il codice cd angular-phonecat e con il comando npm install, importeremo i tool di cui avremo bisogno. A questo punto installeremo Bower (cioè un package contenente i codici client-side di AngularJS da ad utilizzare); il codice che utilizzeremo sarà bower install. Al termine di questi passi, all interno della cartella app contenuta nella directory anguar-phonecat, avremo un file index.html che apriremo con il nostro browser (ma, in questo caso, risulterà una pagina bianca) o con l aiuto di un area di sviluppo come Notepad++ (Figura 2.3). Cristiano Antonio Capanna 21

26 Figura File index.html visualizzato tramite Notepad++ Tutto quello che vediamo all interno di questo codice non è altro che i pacchetti di AngularJS che sono stati importati e che quindi sono pronti all uso. A questo punto, possiamo creare il nostro esempio all interno di questo stesso file. 2.2 Primo esempio Come specificato nella sessione precedente, i modi per importare la libreria Angular sono due; noi stiamo considerando il secondo (che prevede importare tutti i pacchetti prima, attraverso Bower), ma se dovessimo tenere in considerazione il primo, il riferimento alla libreria sarà, ovviamente, necessario affinché Angular sia attivo. Quello che avviene in corrispondenza del caricamento del codice della libreria è il cosiddetto bootstrap di AngularJS. In sintesi, dopo il caricamento del documento HTML da parte del browser, vengono creati alcuni oggetti di sistema e viene effettuata la compilazione del DOM a partire dall elemento marcato con il tag ng-app, elaborando ogni Directive, binding ed Expression incontrati. Al termine della fase di bootstrap, AngularJS si mette in attesa del verificarsi di eventi sul browser. 22 Cristiano Antonio Capanna

27 AngularJS: un framework di frontiera per la realizzazione di siti Web Cerchiamo di capire immediatamente a cosa serve il primo tag di AngularJS che abbiamo introdotto, ovvero ng-app; questo attributo rappresenta una Directive del framework e indica al sistema quale elemento della pagina deve essere considerato come elemento base dell applicazione. In altre parole, AngularJS prenderà il controllo della porzione di DOM le cui basi vengono marcate con la direttiva ng-app. Figura Codice del primo esempio Andiamo quindi all interno dell elemento <body> (tag di HTML che conterrà il corpo del codice) e creiamo un elemento strutturale della pagina attraverso l attributo <div>. All interno di esso inseriremo due <input>: Cristiano Antonio Capanna 23

28 <input type= number ng-model= addendo1 />; <input type= number ng-model= addendo2 />; Gli <input> sono tag che rientrano nella categoria <form>, cioè elementi che danno la possibilità di interagire con il contenuto della pagina. Nel nostro specifico caso ci daranno l opportunità di inserire un valore numerico. Veniamo, quindi, all elemento chiave della nostra pagina cioè la stringa {{addendo1 + addendo2}}. Questa rappresenta una Expression di AngularJS e viene valutata ed inserita nel DOM del framework. Una Expression, tuttavia, non viene valutata soltanto in fase di compilazione; infatti viene generato un aggiornamento automatico (binding) che aggiorna il risultato dell Exspression ogniqualvolta cambia il suo valore. Vediamo, nella Figura 2.4, il codice completo e, nella Figura 2.5, il risultato. Figura Esecuzione del primo esempio 2.3 Secondo esempio In questo secondo esempio, proveremo a creare un catalogo di foto on-line. Come detto, AngularJS si basa sul pattern MVC; proviamo, quindi, a gestire l implementazione di questo catalogo creando prima la View, poi il Controller (il Model sarà creato automaticamente con l implementazione del Controller). Portiamoci all interno del tag <body> e scriviamo il seguente codice: 24 Cristiano Antonio Capanna

29 AngularJS: un framework di frontiera per la realizzazione di siti Web <body ng-controller= PhotoListCtrl > L elemento ng-controller indica, semplicemente, qual è il Controller associato all elemento (la sua dichiarazione verrà esplicitato in seguito). Creiamo, all interno del body, una elenco non ordinato attraverso i tag <ul> e <li>, inserendo, in quest ultimo, l elemento ng-repeat= photo in photos, che indica al sistema di generare tanti elementi <li> per quante sono le foto contenute nel Model, basandosi sull espressione photo in photos, come vedremopiù avanti. In corrispondenza a ciascun elemento <li> saranno valutate le espressioni specificate in base al contesto corrente, cioè in base alla foto corrente. A questo punto apriamo un paragrafo con <p> inserendo al suo interno il codice: <img ng-src= photos/thumb/{{photo.file}} alt={{photo.description}} />alt={{photo.description}} /> Questo tag, o meglio l elemento ng-src, sostituisce l attributo standard src (che sta per source, cioè origine, ed è il percorso in cui il browser troverà il file da mostrare) dell elemento <img> (in HTML è l elemento che viene utilizzato per inserire e formattare le immagini, i diagrammi grafici e le fotografie) ed impedisce che il browser interpreti l espressione {{photo.file}} come l URL delle immagini da caricare ed effettui un infruttuosa richiesta al server. Prima di chiudere il paragrafo con (</p>) scriviamo l espressione {{photo.description}}. Chiudiamo, quindi, il paragrafo e anche l elenco (figura 2.6). Passiamo, quindi, alla definizione del Controller che si limiterà a creare il Model per la nostra applicazione; tale Controller sarà costituito da un array di oggetti JSON (formato per lo scambio di dati) con due proprietà: l URL della foto e la relativa descrizione. La cosa interessante è che la funzione riceve dal sistema lo Scope corrente, cioè l oggetto di sistema che consente la sincronizzazione tra Model e View, tramite il parametro $scope. Da notare che per convenzione tutti gli oggetti di sistema di AngularJS hanno il nome che inizia per $. Lo Scope corrente sarà l ambiente di valutazione delle espressioni incluse all interno dell elemento gestito dal Controller, nel nostro caso l elemento <body>. All interno di questo Scope verrà creato un array di oggetti JSON che rappresentano l elenco delle foto, quindi vengono valutate le espressioni assegnate ad essa. Nel nostro specifico caso l espressione ng-repeat photo in photos consente di selezionare, per ciascuna ripetizione, un elemento dell array photos assegnandolo alla variabile photo. Tramite questa variabile abbiamo accesso alle singole proprietà dell oggetto che rappresenta la foto. Il risultato è mostrato dalla Figura 2.8. In ultimo, proviamo ad introdurre nel catalogo fotografico la possibilità di filtrare l elenco delle foto. AngularJS ci consente di realizzare questa funzionalità in maniera abbastanza semplice. Cristiano Antonio Capanna 25

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Compilazione, link, esecuzione di programmi Conoscere

Dettagli

Esercizi di JavaScript

Esercizi di JavaScript Esercizi di JavaScript JavaScript JavaScript é un linguaggio di programmazione interpretato e leggero, creato dalla Netscape. E' presente a patire da Netscape 2 in tutti i browser ed é dunque il linguaggio

Dettagli

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta

Dettagli

NAVIGAORA HOTSPOT. Manuale utente per la configurazione

NAVIGAORA HOTSPOT. Manuale utente per la configurazione NAVIGAORA HOTSPOT Manuale utente per la configurazione NAVIGAORA Hotspot è l innovativo servizio che offre ai suoi clienti accesso ad Internet gratuito, in modo semplice e veloce, grazie al collegamento

Dettagli

Lande Immortali: Riepilogo dello Stato di Avanzamento del Progetto

Lande Immortali: Riepilogo dello Stato di Avanzamento del Progetto Lande Immortali: Riepilogo dello Stato di Avanzamento del Progetto Progetto a cura di Martino Michele Matricola: 0124000461 Miglio Stefano Matricola: 0124000462 Obiettivi Iniziali Si intende realizzare

Dettagli

L APP PER IPHONE E ANDROID

L APP PER IPHONE E ANDROID L APP PER IPHONE E ANDROID PER LA PIANIFICAZIONE E GESTIONE DELLA FORZA LAVORO IN MOBILITA GIUGNO 2013 RCSOFT Software House 1 GAT MOBILE COS E GAT MOBILE è una APP rivolta alle aziende che si occupano

Dettagli

Il web server Apache Lezione n. 3. Introduzione

Il web server Apache Lezione n. 3. Introduzione Procurarsi ed installare il web server Apache Introduzione In questa lezione cominciamo a fare un po di pratica facendo una serie di operazioni preliminari, necessarie per iniziare a lavorare. In particolar

Dettagli

Capitolo 4 Pianificazione e Sviluppo di Web Part

Capitolo 4 Pianificazione e Sviluppo di Web Part Capitolo 4 Pianificazione e Sviluppo di Web Part Questo capitolo mostra come usare Microsoft Office XP Developer per personalizzare Microsoft SharePoint Portal Server 2001. Spiega come creare, aggiungere,

Dettagli

Software per Helpdesk

Software per Helpdesk Software per Helpdesk Padova - maggio 2010 Antonio Dalvit - www.antoniodalvit.com Cosa è un helpdesk? Un help desk è un servizio che fornisce informazioni e assistenza ad utenti che hanno problemi nella

Dettagli

Studio Legale. Guida operativa

Studio Legale. Guida operativa Studio Legale Guida operativa Cliens Studio Legale Web Cliens Studio Legale Web è un nuovo strumento che consente all avvocato di consultare i dati presenti negli archivi Cliens del proprio studio, attraverso

Dettagli

GUIDA UTENTE WEB PROFILES

GUIDA UTENTE WEB PROFILES GUIDA UTENTE WEB PROFILES GUIDA UTENTE WEB PROFILES... 1 Installazione... 2 Primo avvio e registrazione... 5 Utilizzo di web profiles... 6 Gestione dei profili... 8 Fasce orarie... 13 Log siti... 14 Pag.

Dettagli

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain.

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. *+33(GLWRU GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. Il programma si basa su un architettura di tasti funzionali presenti

Dettagli

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate MODULO BASE Quanto segue deve essere rispettato se si vuole che le immagini presentate nei vari moduli corrispondano, con buona probabilità, a quanto apparirà nello schermo del proprio computer nel momento

Dettagli

ICARO Terminal Server per Aprile

ICARO Terminal Server per Aprile ICARO Terminal Server per Aprile Icaro è un software aggiuntivo per Aprile (gestionale per centri estetici e parrucchieri) con funzionalità di terminal server: gira sullo stesso pc dove è installato il

Dettagli

Innanzitutto andiamo sul sito http://www.dropbox.com/ ed eseguiamo il download del programma cliccando su Download Dropbox.

Innanzitutto andiamo sul sito http://www.dropbox.com/ ed eseguiamo il download del programma cliccando su Download Dropbox. Oggi parlerò di qualcosa che ha a che fare relativamente con la tecnica fotografica, ma che ci può dare una mano nella gestione dei nostri archivi digitali, soprattutto nel rapporto professionale con altre

Dettagli

E completamente personalizzabile potrete variare colori, i Vs. dati i riferimenti per i contatti, i prodotti in tempo reale.

E completamente personalizzabile potrete variare colori, i Vs. dati i riferimenti per i contatti, i prodotti in tempo reale. Catalogo On Line dinamico sul Web multilingua, consente di gestire un catalogo anche ad utenti poco esperti grazie alla semplicità d'uso del pannello amministratore che permette la gestione dei clienti,

Dettagli

Manuale Utente Albo Pretorio GA

Manuale Utente Albo Pretorio GA Manuale Utente Albo Pretorio GA IDENTIFICATIVO DOCUMENTO MU_ALBOPRETORIO-GA_1.4 Versione 1.4 Data edizione 04.04.2013 1 TABELLA DELLE VERSIONI Versione Data Paragrafo Descrizione delle modifiche apportate

Dettagli

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA BOZZA 23/07/2008 INDICE 1. PERCHÉ UNA NUOVA VERSIONE DEI MODULI DI RACCOLTA DATI... 3 2. INDICAZIONI GENERALI... 4 2.1. Non modificare la struttura dei fogli di lavoro... 4 2.2. Cosa significano

Dettagli

Guida alla registrazione on-line di un DataLogger

Guida alla registrazione on-line di un DataLogger NovaProject s.r.l. Guida alla registrazione on-line di un DataLogger Revisione 3.0 3/08/2010 Partita IVA / Codice Fiscale: 03034090542 pag. 1 di 17 Contenuti Il presente documento è una guida all accesso

Dettagli

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,

Dettagli

A destra è delimitata dalla barra di scorrimento verticale, mentre in basso troviamo una riga complessa.

A destra è delimitata dalla barra di scorrimento verticale, mentre in basso troviamo una riga complessa. La finestra di Excel è molto complessa e al primo posto avvio potrebbe disorientare l utente. Analizziamone i componenti dall alto verso il basso. La prima barra è la barra del titolo, dove troviamo indicato

Dettagli

COME CREARE UNA COMUNICAZIONE / NEWSLETTER

COME CREARE UNA COMUNICAZIONE / NEWSLETTER COME CREARE UNA COMUNICAZIONE / NEWSLETTER Benvenuti nella MINI GUIDA di Centrico per la creazione di una nuova Comunicazione o Newsletter. Grazie a questa guida, potrai creare delle comunicazioni ad hoc

Dettagli

19. LA PROGRAMMAZIONE LATO SERVER

19. LA PROGRAMMAZIONE LATO SERVER 19. LA PROGRAMMAZIONE LATO SERVER Introduciamo uno pseudocodice lato server che chiameremo Pserv che utilizzeremo come al solito per introdurre le problematiche da affrontare, indipendentemente dagli specifici

Dettagli

YOU ARE WHAT YOU CURATE COS E LA CONTENT CURATION E COME APPLICARLA

YOU ARE WHAT YOU CURATE COS E LA CONTENT CURATION E COME APPLICARLA YOU ARE WHAT YOU CURATE COS E LA CONTENT CURATION E COME APPLICARLA YOU ARE WHAT YOU CURATE INTRODUZIONE DEFINIZIONE: COS E LA CONTENT CURATION? PERCHE FARNE USO IL CONTENT CURATOR COME NON FARE CONTENT

Dettagli

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico MANUALE MOODLE STUDENTI Accesso al Materiale Didattico 1 INDICE 1. INTRODUZIONE ALLA PIATTAFORMA MOODLE... 3 1.1. Corso Moodle... 4 2. ACCESSO ALLA PIATTAFORMA... 7 2.1. Accesso diretto alla piattaforma...

Dettagli

Guida all uso di Java Diagrammi ER

Guida all uso di Java Diagrammi ER Guida all uso di Java Diagrammi ER Ver. 1.1 Alessandro Ballini 16/5/2004 Questa guida ha lo scopo di mostrare gli aspetti fondamentali dell utilizzo dell applicazione Java Diagrammi ER. Inizieremo con

Dettagli

Guida all uso. Esso sarà riportato nell intestazione. Vediamo:

Guida all uso. Esso sarà riportato nell intestazione. Vediamo: faxm@il è un applicazione che permette agli utenti dei sistemi di telefonia IP di inviare, ricevere e gestire fax. Il tradizionale sistema di fax è ormai superato. Con faxm@il non riceviamo né spediamo

Dettagli

GUIDA UTENTE PRIMA NOTA SEMPLICE

GUIDA UTENTE PRIMA NOTA SEMPLICE GUIDA UTENTE PRIMA NOTA SEMPLICE (Vers. 2.0.0) Installazione... 2 Prima esecuzione... 5 Login... 6 Funzionalità... 7 Prima Nota... 8 Registrazione nuovo movimento... 10 Associazione di file all operazione...

Dettagli

marketing highlights Google Analytics A cura di: dott. Fabio Pinello

marketing highlights Google Analytics A cura di: dott. Fabio Pinello marketing highlights Google Analytics A cura di: dott. Fabio Pinello Google Analytics è uno strumento gratuito fornito da Google per monitorare il traffico di visite dei siti web su cui è installato. Cos

Dettagli

Installazione di GFI WebMonitor

Installazione di GFI WebMonitor Installazione di GFI WebMonitor Requisiti di sistema di GFI WebMonitor Server Microsoft Windows 2000 (SP 3) o 2003. Microsoft ISA 2000 Server (non in modalità solo firewall) OPPURE Server Microsoft ISA

Dettagli

Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito)

Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito) Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito) Le seguenti istruzioni sono relative all installazione di IBM SPSS Modeler Text Analytics versione 15 mediante un licenza

Dettagli

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template.

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template. I TEMI PREDEFINITI (TEMPLATE) Scelta del tema I temi predefiniti di wordpress sono la base di un sito che usa un utente che per ragioni pratiche o per incapacità non può creare un sito usando solo codice

Dettagli

ESERCITAZIONE Semplice creazione di un sito Internet

ESERCITAZIONE Semplice creazione di un sito Internet ESERCITAZIONE Semplice creazione di un sito Internet Sistemi e Tecnologie Informatiche - Prof. Gregorio Cosentino 1 Internet Una rete globale che connette milioni di computer in tutto il mondo, anarchica

Dettagli

Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014)

Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014) Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014) Il software per gli esami ICON può essere eseguito su qualunque computer dotato di Java Virtual Machine aggiornata.

Dettagli

MANUALE UTENTE. In questo manuale verranno descritte tutte le sue funzioni. Il sistema OTRS è raggiungibile al seguente link:

MANUALE UTENTE. In questo manuale verranno descritte tutte le sue funzioni. Il sistema OTRS è raggiungibile al seguente link: MANUALE UTENTE OTRS è il sistema di ticketing per la gestione delle richieste tecniche e di supporto ai clienti e partner di Delta Progetti 2000. La nuova versione 3.2.10 introduce una grafica più intuitiva

Dettagli

sito web sito Internet

sito web sito Internet Siti Web Cos è un sito web Un sito web o sito Internet è un insieme di pagine web correlate, ovvero una struttura ipertestuale di documenti che risiede, tramite hosting, su un web server e accessibile

Dettagli

EXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro,

EXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro, EXCEL PER WINDOWS95 1.Introduzione ai fogli elettronici I fogli elettronici sono delle applicazioni che permettono di sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area

Dettagli

GRUPPO CAMBIELLI. Posta elettronica (Webmail) Consigli di utilizzo

GRUPPO CAMBIELLI. Posta elettronica (Webmail) Consigli di utilizzo GRUPPO CAMBIELLI Posta elettronica (Webmail) Consigli di utilizzo Questo sintetico manuale ha lo scopo di chiarire alcuni aspetti basilari per l uso della posta elettronica del gruppo Cambielli. Introduzione

Dettagli

Registratori di Cassa

Registratori di Cassa modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...

Dettagli

Consiglio regionale della Toscana. Regole per il corretto funzionamento della posta elettronica

Consiglio regionale della Toscana. Regole per il corretto funzionamento della posta elettronica Consiglio regionale della Toscana Regole per il corretto funzionamento della posta elettronica A cura dell Ufficio Informatica Maggio 2006 Indice 1. Regole di utilizzo della posta elettronica... 3 2. Controllo

Dettagli

Database. Si ringrazia Marco Bertini per le slides

Database. Si ringrazia Marco Bertini per le slides Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida

Dettagli

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi Capitolo Terzo Primi passi con Microsoft Access Sommario: 1. Aprire e chiudere Microsoft Access. - 2. Aprire un database esistente. - 3. La barra multifunzione di Microsoft Access 2007. - 4. Creare e salvare

Dettagli

Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP

Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP Accademia Futuro info@accademiafuturo.it Programma Generale del Corso Analista Programmatore Web PHP Tematiche Trattate

Dettagli

Informativa sulla privacy

Informativa sulla privacy Informativa sulla privacy Data di inizio validità: 1 Maggio 2013 La presente informativa sulla privacy descrive il trattamento dei dati personali immessi o raccolti sui siti nei quali la stessa è pubblicata.

Dettagli

5. Fondamenti di navigazione e ricerca di informazioni sul Web

5. Fondamenti di navigazione e ricerca di informazioni sul Web 5. Fondamenti di navigazione e ricerca di informazioni sul Web EIPASS Junior SCUOLA PRIMARIA Pagina 43 di 47 In questo modulo sono trattati gli argomenti principali dell universo di Internet, con particolare

Dettagli

GUIDA UTENTE MONEY TRANSFER MANAGER

GUIDA UTENTE MONEY TRANSFER MANAGER GUIDA UTENTE MONEY TRANSFER MANAGER (vers. 1.0.2) GUIDA UTENTE MONEY TRANSFER MANAGER (vers. 1.0.2)... 1 Installazione... 2 Prima esecuzione... 5 Login... 7 Funzionalità... 8 Anagrafica... 9 Registrazione

Dettagli

Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione. Facoltà di Ingegneria

Università degli Studi Roma Tre Dipartimento di Informatica ed automazione. Facoltà di Ingegneria Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Tesi di Laurea AUTENTICAZIONE PER APPLICAZIONI WEB Relatore

Dettagli

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0 Prodotto Inaz Download Manager Release 1.3.0 Tipo release COMPLETA RIEPILOGO ARGOMENTI 1. Introduzione... 2 2. Architettura... 3 3. Configurazione... 4 3.1 Parametri di connessione a Internet... 4 3.2

Dettagli

Analisi e utilizzo di un framework per lo sviluppo di applicazioni web

Analisi e utilizzo di un framework per lo sviluppo di applicazioni web tesi di laurea Anno Accademico 2011/2012 relatore Ch.mo prof. Marcello Cinque correlatore Ing. Fabio De Paolis candidato Michele Basile Matr. 534/3239 Web Development Frameworks Nella realizzazione di

Dettagli

PIATTAFORMA DOCUMENTALE CRG

PIATTAFORMA DOCUMENTALE CRG SISTEMA DI GESTIONE DOCUMENTALE DMS24 PIATTAFORMA DOCUMENTALE CRG APPLICAZIONE PER LE PROCEDURE DI GARE D AMBITO 1 AGENDA 1. Introduzione 2. I Livelli di accesso 3. Architettura di configurazione 4. Accesso

Dettagli

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE PREMESSA La presente guida è da considerarsi come aiuto per l utente per l installazione e configurazione di Atollo Backup. La guida non vuole approfondire

Dettagli

SPSS Statistics per Windows - Istruzioni di installazione per (Licenza per utenti singoli)

SPSS Statistics per Windows - Istruzioni di installazione per (Licenza per utenti singoli) SPSS Statistics per Windows - Istruzioni di installazione per (Licenza per utenti singoli) Le seguenti istruzioni sono relative all installazione di SPSS Statistics con licenza per utenti singoli. Una

Dettagli

MANUALEDIUTILIZZO MODULO CRM POSTVENDITA

MANUALEDIUTILIZZO MODULO CRM POSTVENDITA MANUALEDIUTILIZZO MODULO CRM POSTVENDITA INDICE INTRODUZIONE INSERIMENTO CHIAMATA CHIAMATE Dettaglio Chiamate Macchine Coinvolte Documenti Riepilogo MACCHINE Dettaglio Macchine Documenti Interventi MACCHINE

Dettagli

Modulo 4 Il pannello amministrativo dell'hosting e il database per Wordpress

Modulo 4 Il pannello amministrativo dell'hosting e il database per Wordpress Copyright Andrea Giavara wppratico.com Modulo 4 Il pannello amministrativo dell'hosting e il database per Wordpress 1. Il pannello amministrativo 2. I dati importanti 3. Creare il database - Cpanel - Plesk

Dettagli

Database 1 biblioteca universitaria. Testo del quesito

Database 1 biblioteca universitaria. Testo del quesito Database 1 biblioteca universitaria Testo del quesito Una biblioteca universitaria acquista testi didattici su indicazione dei professori e cura il prestito dei testi agli studenti. La biblioteca vuole

Dettagli

Creare un sito Multilingua con Joomla 1.6

Creare un sito Multilingua con Joomla 1.6 Creare un sito Multilingua con Joomla 1.6 Istruzioni Vai a: navigazione, ricerca Testo originale: http://docs.joomla.org/language_switcher_tutorial_for_joomla_1.6 Questa guida è valida sia per Joomla 1.6

Dettagli

Corso di Amministrazione di Reti A.A. 2002/2003

Corso di Amministrazione di Reti A.A. 2002/2003 Struttura di Active Directory Corso di Amministrazione di Reti A.A. 2002/2003 Materiale preparato utilizzando dove possibile materiale AIPA http://www.aipa.it/attivita[2/formazione[6/corsi[2/materiali/reti%20di%20calcolatori/welcome.htm

Dettagli

Integrazione InfiniteCRM - MailUp

Integrazione InfiniteCRM - MailUp Integrazione InfiniteCRM - MailUp La funzionalità della gestione delle campagne marketing di icrm è stata arricchita con la spedizione di email attraverso l integrazione con la piattaforma MailUp. Creando

Dettagli

Novità di Access 2010

Novità di Access 2010 2 Novità di Access 2010 In questo capitolo: Gestire le impostazioni e i file di Access nella visualizzazione Backstage Personalizzare l interfaccia utente di Access 2010 Creare database utilizzando modelli

Dettagli

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo. DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti

Dettagli

Capitolo 2. Operazione di limite

Capitolo 2. Operazione di limite Capitolo 2 Operazione di ite In questo capitolo vogliamo occuparci dell operazione di ite, strumento indispensabile per scoprire molte proprietà delle funzioni. D ora in avanti riguarderemo i domini A

Dettagli

MANUALE D USO DELLA PIATTAFORMA ITCMS

MANUALE D USO DELLA PIATTAFORMA ITCMS MANUALE D USO DELLA PIATTAFORMA ITCMS MANULE D USO INDICE 1. INTRODUZIONE... 2 2. ACCEDERE ALLA GESTIONE DEI CONTENUTI... 3 3. GESTIONE DEI CONTENUTI DI TIPO TESTUALE... 4 3.1 Editor... 4 3.2 Import di

Dettagli

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Manuale Amministratore Legalmail Enterprise Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Pagina 2 di 16 Manuale Amministratore Legalmail Enterprise Introduzione a Legalmail Enterprise...3

Dettagli

Guida all utilizzo di mysm 2.0. Ver 1.0 1

Guida all utilizzo di mysm 2.0. Ver 1.0 1 Guida all utilizzo di mysm 2.0 Ver 1.0 1 COSA E? mysm è uno strumento che permette di visualizzare i progetti, l elenco dei punti vendita (Point Of Sale) e il corrispondente stato di avanzamento lavori

Dettagli

POSTECERT POSTEMAIL CERTIFICATA GUIDA ALL USO DELLA WEBMAIL

POSTECERT POSTEMAIL CERTIFICATA GUIDA ALL USO DELLA WEBMAIL POSTECERT POSTEMAIL CERTIFICATA GUIDA ALL USO DELLA WEBMAIL Sommario Pagina di accesso... 3 Posta in arrivo... 4 Area Posta... 5 Area Contatti... 8 Area Opzioni... 10 Area Cartelle... 13 La Postemail Certificata

Dettagli

Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ. Versione 1.1

Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ. Versione 1.1 Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ Versione 1.1 Autore Antonio Barbieri, antonio.barbieri@gmail.com Data inizio compilazione 11 maggio 2009 Data revisione 14 maggio 2009 Sommario

Dettagli

MANUALE UTENTE Fiscali Free

MANUALE UTENTE Fiscali Free MANUALE UTENTE Fiscali Free Le informazioni contenute in questa pubblicazione sono soggette a modifiche da parte della ComputerNetRimini. Il software descritto in questa pubblicazione viene rilasciato

Dettagli

5-1 FILE: CREAZIONE NUOVO DOCUMENTO

5-1 FILE: CREAZIONE NUOVO DOCUMENTO Capittol lo 5 File 5-1 FILE: CREAZIONE NUOVO DOCUMENTO In Word è possibile creare documenti completamente nuovi oppure risparmiare tempo utilizzando autocomposizioni o modelli, che consentono di creare

Dettagli

2 Fortino Lugi. Figura Errore. Nel documento non esiste testo dello stile specificato.-3 -- Finestra attiva o nuovo documento

2 Fortino Lugi. Figura Errore. Nel documento non esiste testo dello stile specificato.-3 -- Finestra attiva o nuovo documento 1 Fortino Lugi STAMPA UNIONE OFFICE 2000 Vi sarà capitato sicuramente di ricevere lettere pubblicitarie indirizzate personalmente a voi; ovviamente quelle missive non sono state scritte a mano, ma utilizzando

Dettagli

Visual basic base Lezione 01. L'ambiente di sviluppo

Visual basic base Lezione 01. L'ambiente di sviluppo L'ambiente di sviluppo L'ambiente di sviluppo Visual basic è un linguaggio di programmazione Microsoft. In questo corso prenderemo in considerazione, l'ultima versione. net di questo linguaggio. Microsoft

Dettagli

SOMMARIO... 3 INTRODUZIONE...

SOMMARIO... 3 INTRODUZIONE... Sommario SOMMARIO... 3 INTRODUZIONE... 4 INTRODUZIONE ALLE FUNZIONALITÀ DEL PROGRAMMA INTRAWEB... 4 STRUTTURA DEL MANUALE... 4 INSTALLAZIONE INRAWEB VER. 11.0.0.0... 5 1 GESTIONE INTRAWEB VER 11.0.0.0...

Dettagli

Configurazione di Outlook Express

Configurazione di Outlook Express OUTLOOK Outlook Express è il client di posta elettronica sviluppato da Microsoft, preinstallato su sistemi operativi Windows a partire da Windows 98 fino all'uscita di Windows XP. Con l'arrivo di Windows

Dettagli

Manuale NetSupport v.10.70.6 Liceo G. Cotta Marco Bolzon

Manuale NetSupport v.10.70.6 Liceo G. Cotta Marco Bolzon NOTE PRELIMINARI: 1. La versione analizzata è quella del laboratorio beta della sede S. Davide di Porto, ma il programma è presente anche nel laboratorio alfa (Porto) e nel laboratorio di informatica della

Dettagli

FRANCESCO MARINO - TELECOMUNICAZIONI

FRANCESCO MARINO - TELECOMUNICAZIONI Classe: Data Autore: Francesco Marino http://www.francescomarino.net info@francescomarino.net Esercitazione n. 18 Creazione e configurazione di una connessione remota in Windows 9x Gruppo: Alunni assenti

Dettagli

Breve introduzione curata da Alessandro Benedetti. Struts2-Introduzione e breve guida

Breve introduzione curata da Alessandro Benedetti. Struts2-Introduzione e breve guida Breve introduzione curata da Alessandro Benedetti Struts2-Introduzione e breve guida 22-11- 2008 1 Struts 2 Costruisci,attiva e mantieni! Apache Struts 2 è un framework elegante ed estensibile per creare

Dettagli

EXPLOit Content Management Data Base per documenti SGML/XML

EXPLOit Content Management Data Base per documenti SGML/XML EXPLOit Content Management Data Base per documenti SGML/XML Introduzione L applicazione EXPLOit gestisce i contenuti dei documenti strutturati in SGML o XML, utilizzando il prodotto Adobe FrameMaker per

Dettagli

Le Novità Repository (depositi di files) File Legacy del Corso Domande con punteggio negativo. prof. Tommasini Nicola ITIS G.

Le Novità Repository (depositi di files) File Legacy del Corso Domande con punteggio negativo. prof. Tommasini Nicola ITIS G. Le Novità Repository (depositi di files) File Legacy del Corso Domande con punteggio negativo prof. Tommasini Nicola ITIS G. Marconi -VR 1 Le Novità La novità maggiore per gli insegnanti è la diversa modalità

Dettagli

Report di valutazione studiolegalebraggio.it

Report di valutazione studiolegalebraggio.it Roma, li 15/01/2013 Report di valutazione studiolegalebraggio.it Il presente documento è redatto allo scopo di mostrare e analizzare le performance del sito web a due mesi e mezzo dalla pubblicazione online,

Dettagli

Utilizzo dei Cookie Cosa sono i cookie? A cosa servono i cookie? cookie tecnici cookie, detti analitici cookie di profilazione

Utilizzo dei Cookie Cosa sono i cookie? A cosa servono i cookie? cookie tecnici cookie, detti analitici cookie di profilazione Utilizzo dei Cookie Questo sito utilizza i cookie. Utilizzando il nostro sito web l'utente accetta e acconsente all utilizzo dei cookie in conformità con i termini di uso dei cookie espressi in questo

Dettagli

Hub-PA Versione 1.0.6 Manuale utente

Hub-PA Versione 1.0.6 Manuale utente Hub-PA Versione 1.0.6 Manuale utente (Giugno 2014) Hub-PA è la porta d ingresso al servizio di fatturazione elettronica verso la Pubblica Amministrazione (PA) a disposizione di ogni fornitore. Questo manuale

Dettagli

Guida all uso delle Web View su ios

Guida all uso delle Web View su ios Guida all uso delle Web View su ios Tesina per il corso di Programmazione di Sistemi Mobile Lorenzo Pellegrini Matricola: 0000653299 Cosa sono le Web View? Le web view sono componenti grafiche, integrabili

Dettagli

Il Web Server e il protocollo HTTP

Il Web Server e il protocollo HTTP Corso PHP Parte 2 Il Web Server e il protocollo HTTP E un programma sempre attivo che ascolta su una porta le richieste HTTP. All arrivo di una richiesta la esegue e restituisce il risultato al browser,

Dettagli

Manuale Utente Amministrazione Trasparente GA

Manuale Utente Amministrazione Trasparente GA Manuale Utente GA IDENTIFICATIVO DOCUMENTO MU_AMMINISTRAZIONETRASPARENTE-GA_1.0 Versione 1.0 Data edizione 03.05.2013 1 Albo Pretorio On Line TABELLA DELLE VERSIONI Versione Data Paragrafo Descrizione

Dettagli

ISSA EUROPE PTSOFTWARE 2.0

ISSA EUROPE PTSOFTWARE 2.0 MANUALE UTENTE ISSA EUROPE PTSOFTWARE 2.0 Versione 1.0-16062014 il presente documento è soggetto a modifiche Pag. 1/27 Versione 1.0-16062014 il presente documento è soggetto a modifiche Pag. 2/27 Informazioni

Dettagli

Corso di HTML. Prerequisiti. Modulo L3. 1-Concetti generali. Browser Rete Internet Client e server. M. Malatesta 1-Concetti generali-12 28/07/2013

Corso di HTML. Prerequisiti. Modulo L3. 1-Concetti generali. Browser Rete Internet Client e server. M. Malatesta 1-Concetti generali-12 28/07/2013 Corso di HTML Modulo L3 1-Concetti generali 1 Prerequisiti Browser Rete Internet Client e server 2 1 Introduzione In questa Unità introduciamo alcuni semplici elementi del linguaggio HTML, con il quale

Dettagli

IRSplit. Istruzioni d uso 07/10-01 PC

IRSplit. Istruzioni d uso 07/10-01 PC 3456 IRSplit Istruzioni d uso 07/10-01 PC 2 IRSplit Istruzioni d uso Indice 1. Requisiti Hardware e Software 4 1.1 Requisiti Hardware 4 1.2 Requisiti Software 4 2. Installazione 4 3. Concetti fondamentali

Dettagli

filrbox Guida all uso dell interfaccia WEB Pag. 1 di 44

filrbox Guida all uso dell interfaccia WEB Pag. 1 di 44 filrbox Guida all uso dell interfaccia WEB Pag. 1 di 44 Sommario Introduzione... 4 Caratteristiche del filrbox... 5 La barra principale del filrbox... 7 Elenco degli utenti... 8 Il profilo... 9 Le novità...

Dettagli

Manuale per i redattori del sito web OttoInforma

Manuale per i redattori del sito web OttoInforma Manuale per i redattori del sito web OttoInforma Contenuti 1. Login 2. Creare un nuovo articolo 3. Pubblicare l articolo 4. Salvare l articolo in bozza 5. Le categorie 6. Modificare un articolo 7. Modificare

Dettagli

CERTIFICATI DIGITALI. Manuale Utente

CERTIFICATI DIGITALI. Manuale Utente CERTIFICATI DIGITALI Procedure di installazione, rimozione, archiviazione Manuale Utente versione 1.0 pag. 1 pag. 2 di30 Sommario CERTIFICATI DIGITALI...1 Manuale Utente...1 Sommario...2 Introduzione...3

Dettagli

Manuale servizio Webmail. Introduzione alle Webmail...2 Webmail classica (SquirrelMail)...3 Webmail nuova (RoundCube)...8

Manuale servizio Webmail. Introduzione alle Webmail...2 Webmail classica (SquirrelMail)...3 Webmail nuova (RoundCube)...8 Manuale servizio Webmail Introduzione alle Webmail...2 Webmail classica (SquirrelMail)...3 Webmail nuova (RoundCube)...8 Introduzione alle Webmail Una Webmail è un sistema molto comodo per consultare la

Dettagli

File, Modifica, Visualizza, Strumenti, Messaggio

File, Modifica, Visualizza, Strumenti, Messaggio Guida installare account in Outlook Express Introduzione Questa guida riguarda di sicuro uno dei programmi maggiormente usati oggi: il client di posta elettronica. Tutti, ormai, siamo abituati a ricevere

Dettagli

Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica.

Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica. Tecnologie informatiche ACCESSO REMOTO CON WINDOWS Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica. Un esempio di tale servizio

Dettagli

uadro Soluzioni software per L archiviazione elettronica dei documenti Gestione Aziendale Fa quadrato attorno alla tua azienda

uadro Soluzioni software per L archiviazione elettronica dei documenti Gestione Aziendale Fa quadrato attorno alla tua azienda Fa quadrato attorno alla tua azienda Soluzioni software per L archiviazione elettronica dei documenti Perché scegliere Q Archiviazione Elettronica dei Documenti? Tale applicativo si pone come obbiettivo

Dettagli

Regione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da

Regione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da ARPA Fonte Dati Regione Toscana Redatto da L. Folchi (TAI) Rivisto da Approvato da Versione 1.0 Data emissione 06/08/13 Stato DRAFT 1 Versione Data Descrizione 1,0 06/08/13 Versione Iniziale 2 Sommario

Dettagli

Guida Joomla. di: Alessandro Rossi, Flavio Copes

Guida Joomla. di: Alessandro Rossi, Flavio Copes Guida Joomla di: Alessandro Rossi, Flavio Copes Grafica e template 1. 15. La grafica e i template Personalizzare l'aspetto del sito aggiungendo nuovi template e customizzandoli 2. 16. Personalizzare il

Dettagli

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE 1/6 MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE Per prima cosa si ringrazia per aver scelto ImmobiPhone e per aver dato fiducia al suo autore. Il presente documento istruisce l'utilizzatore sull'uso del programma

Dettagli

Progettazione e Sviluppo dell Applicazione Web Share Mobile per Dispositivi Mobili Multipiattaforma. Elaborato di Laurea di: Marco Stanzani

Progettazione e Sviluppo dell Applicazione Web Share Mobile per Dispositivi Mobili Multipiattaforma. Elaborato di Laurea di: Marco Stanzani UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria Enzo Ferrari Sede di Modena Corso di Laurea Specialistica in Ingegneria Informatica Progettazione e Sviluppo dell Applicazione Web

Dettagli

Cimini Simonelli - Testa

Cimini Simonelli - Testa WWW.ICTIME.ORG Joomla 1.5 Manuale d uso Cimini Simonelli - Testa Il pannello di amministrazione Accedendo al pannello di amministrazione visualizzeremo una schermata in cui inserire il nome utente (admin)

Dettagli

CONTENT MANAGEMENT SY STEM

CONTENT MANAGEMENT SY STEM CONTENT MANAGEMENT SY STEM I NDI CE I NTRODUZI ONE Accesso al CMS 1) CONTENUTI 1.1 I nserimento, modifica e cancellazione dei contenuti 1.2 Sezioni, categorie e sottocategorie 2) UTENTI 3) UP LOAD FILES

Dettagli

Esplorate le possibilità di Adobe Acrobat 3.0

Esplorate le possibilità di Adobe Acrobat 3.0 Esplorate le possibilità di Adobe Acrobat 3.0 In questo momento state usando Adobe Acrobat Reader, fornito gratuitamente con Adobe, per visualizzare ed esplorare i file PDF (Portable Document Format).

Dettagli