Corso di Formazione Specialistica


Powered by

Partner

Il Contesto

Nel mondo post-Web 2.0, progettare un'applicazione moderna significa pensare un'architettura che sia contemporaneamente scalabile e in grado di evolvere rapidamente: un'applicazione moderna deve essere accessibile dal maggior numero di dispositivi e di reti possibili, e deve poter introdurre nuove funzionalità velocemente anche solo per gruppo di utenti. Un'applicazione moderna deve far leva sulle peculiarità dei diversi sistemi operativi, per offrire un esperienza d'uso familiare e intuitiva ai propri utenti.
Le architetture API-first, dove le funzionalità sono tutte accessibili attraverso una Application Programming Interface e dove la separazione tra le modalità di accesso all'applicazione dall'implementazione della stessa sia netta e incondizionata, rispondono a tutti i requisiti dell'applicazione moderna.

Programma

Questo corso coprirà tutti i principali aspetti della progettazione di un'applicazione moderna basata su Web API: dalla struttura e formato dei dati, all'organizzazione dell'API in risorse e azioni, dalla documentazione agli aspetti di sicurezza alla progettazione di applicazioni scalabili basate su cloud. Il corso è distribuito su tre giornate a tempo pieno ed affronterà, passo per passo, tutti gli argomenti necessari per iniziare a realizzare nuove applicazioni secondo il paradigma API-first.
Crediamo in un approccio meno teorico e più pragmatico. Senza trascurare il primo aspetto, i partecipanti acquisiranno tutta una serie di conoscenze e buone pratiche di immediato utilizzo nelle loro future progettazioni o nello “svecchiamento” di architetture già esistenti.

Prima giornata:
le basi

Il primo giorno costituirà il punto di partenza e di verifica delle basi sulle API e sul funzionamento dei protocolli propri del Web moderno.


S'imparerà dalla storia dei protocolli cosa oggi è pratico e cosa non lo è per la progettazione di applicazioni Web moderne. Quali tecnologie sono convenienti e quali sono superate. Verrà illustrato lo stile architetturale chiamato REST e ne verrà data una declinazione più pragmatica, quella che rende gli sviluppatori felici: sia che si tratti degli sviluppatori del vostro team, sia dei vostri utenti.

Verranno trattati argomenti tra i quali:

  • API vs. Web API: breve storia, paradigmi client/server, protocolli non HTTP;
  • I vantaggi delle Web API rispetto alle non-Web API, evoluzione delle Web API e dei Web services;
  • Il protocollo HTTP;
  • Pragmatic REST: risorse, URL, versioning, metodi, errori e status, formato dei dati, query e paginazione dei risultati.

Seconda giornata:
documentazione e sicurezza

Il secondo giorno tratterà due argomenti molto importanti: la documentazione delle API e la sicurezza di base.


Il primo illustrerà standard e tecniche per documentare un'API in maniera rigorosa, ma accessibile e per gestire quanto più automaticamente possibile gli aggiornamenti. Il secondo argomento, la sicurezza di base, introdurrà concetti e procedure necessari a progettare un'API sicura, che protegga applicazioni, dati e sistemi da accessi non autorizzati e dalle conseguenze legali, economiche e di immagine che da questi ne possono derivare.
Si aggiungeranno al bagaglio delle conoscenze dei partecipanti argomenti e tecnologie come: JSON Schema, Swagger, OAuth 2 e JWT.

terza giornata:
architetture

Dopo aver acquisito e sperimentato le basi delle Web API, seguendo un approccio pragmatico, divertente e completo, il terzo giorno verranno affrontati gli aspetti della messa in produzione delle applicazioni basate su API, dando particolare rilievo al concetto di “scalability-by-design”:


i partecipanti impareranno a progettare applicazioni che saranno scalabili sin dalla fase di progettazione.

Tra gli altri argomenti verranno trattati quindi asincronia, sistemi stateless, sistemi event-based, Microservice Architecture.

Il corso si completerà con un esempio pratico di una reale applicazione altamente scalabile cloud-based, facente uso di numerose tecnologie come AWS (Amazon Web Services), CDN (Content Delivery Network), Auto-scaling, Caching multi-livello, DNS dinamico.


A chi è rivolto

Il corso è rivolto a programmatori, ad architetti del software, a responsabili di progetti di sviluppo e a direttori tecnici/CTO.

È consigliato l'avere esperienza di programmazione in almeno un linguaggio moderno e una conoscenza base del protocollo HTTP.

Il corso è riservato ad un massimo di 25 partecipanti.


Docenti


Federico Pinna

Co-fondatore e CTO di Vivocha, azienda specializzata in sistemi di comunicazione multimediale.
Ha iniziato a programmare a nove anni e non ha più smesso, totalizzando più di trent'anni di esperienza, cui almeno venti a livello professionale, in Italia e all'estero.
Si occupa principalmente di applicazioni di rete e di protocolli di comunicazione e ha maturato significative esperienze con numerose tecnologie tra cui: REST e Web API, WebRTC e VoIP, Cloud Computing. La programmazione è tuttora una sua passione, insieme alla musica, la letteratura e i video games.




Antonio Pintus

Co-fondatore e CTO di Paraimpu, azienda operante nel settore del Web of Everything.
Ha più di 16 anni di esperienza nell’IT e lavora come tecnologo per il CRS4, dove contribuisce a progetti di ricerca nazionali ed internazionali. Le sue competenze principali risiedono nella progettazione e sviluppo di architetture e sistemi software scalabili basati sul Web e su API, nella progettazione di nuove soluzioni per la connessione e mashup di servizi e dispositivi connessi attraverso il Web. È autore di numerose presentazioni, pubblicazioni e lavori scientifici presentati in convegni nazionali ed internazionali.
Antonio ama le API, Javascript, Node.js e il design in tutte le sue declinazioni. È un fotografo amatoriale e crede che la Bellezza salverà il mondo, insieme all’autoironia.


Quando e dove


Il corso si terrà a Cagliari presso la sede di The Net Value in via Sassari, 3 nei giorni 13, 14 e 15 gennaio 2017 dalle ore 9 alle 17.30.





Costi



Early bird: se ti iscrivi entro il 30 novembre 2016 la quota di partecipazione è di € 990 + IVA.
Full rate: € 1500 + IVA (iscrizioni dopo il 30 novembre 2016).

La quota di partecipazione comprende il materiale didattico, il pranzo e i coffee break.