====== Progettazione di Applicazioni Web e Mobili ======
----
===== News =====
Terminate le lezioni. Buon lavoro ragazzi!
----
===== Informazioni Generali =====
**Docenti**:
Mirko Calvaresi [[mirko.calvaresi@unicam.it]]
Diego Bonura [[diego.bonura@unicam.it]]
**Orario delle Lezioni**:
* Ottobre 8 - 15 - 22 - 29 ore 9
**Ricevimento studenti**: da concordare a fine della lezione
----
===== Obiettivi del Corso =====
Fornire le conoscenze di basi della progettazione di applicazioni web e mobile con particolare riferimento a
* architetture software
* strumenti di sviluppo
* elementi di sicurezza
----
===== Contenuti del Corso =====
Web:
* Architetture software (MVC/SPA/frontend/backend)
* Strumenti di sviluppo e testing(TTD Development e End2End Testing)
* Version control
* Servizi restful/SOAP - Interoperabilità
* Html5 e Css3
* Linguaggi di Front end e Backend
* NodeJS come backend framework
* Framework frontend
* Vulnerabilità nella applicazioni web
Mobile:
* Architetture software (native/hybrid/web app)
* Strumenti per il mockup
* Strumenti per la prototipazione
* WebContainer e Javascript
* Unit test e End2End test
* Build e Deploy
* Beacons / Image recognition / GPS Indoor / Realtà Aumentata
----
===== Materiale =====
**Slide del Corso Anno Accademico 2017/2018**
* {{ :didattica:triennale:pawm:ay_1718:corso_di_progettazione_di_applicazioni_web_e_mobile1.pdf |Lezione 26 Marzo}}
* {{ :didattica:triennale:pawm:ay_1718:corso_di_progettazione_di_applicazioni_web_e_mobile2.pdf |Lezione 9 Aprile}}
* {{ :didattica:triennale:pawm:ay_1718:corso_di_progettazione_di_applicazioni_web_e_mobile3.pdf |Lezione 16 Aprile}}
* {{ :didattica:triennale:pawm:ay_1718:corso_di_progettazione_di_applicazioni_web_e_mobile4.pdf |Lezione 23 Aprile}}
* {{ :didattica:triennale:pawm:ay_1718:corso_di_progettazione_di_applicazioni_web_e_mobile5.pdf |Lezione 7 Maggio}}
* {{ :didattica:triennale:pawm:ay_1718:corso_di_progettazione_di_applicazioni_web_e_mobile6.pdf |Lezione 14 Maggio}}
* {{ :didattica:triennale:pawm:ay_1718:corso_di_progettazione_di_applicazioni_web_e_mobile7.pdf |Lezione 21 Maggio}}
* {{ :didattica:triennale:pawm:ay_1718:corso_di_progettazione_di_applicazioni_web_e_mobile8.pdf |Lezione 28 Maggio}}
* {{ :didattica:triennale:pawm:ay_1718:corso_di_progettazione_di_applicazioni_web_e_mobile10.pdf |Lezione 4 Giugno}}
* {{ :didattica:triennale:pawm:ay_1718:corso_di_progettazione_di_applicazioni_web_e_mobile9.pdf |Lezione 11 Giugno}}
**Link a WebEx**
* [[https://unicam.webex.com/unicam/lsr.php?RCID=105c431e96ab4e7d8114a06b876bcda8|Lezione del 22 Ottobre]]
* [[https://unicam.webex.com/unicam/lsr.php?RCID=a4e4d352f65d4e8a9ec7391b989f0204|Lezione del 29 Ottobre]]
* [[https://unicam.webex.com/unicam/lsr.php?RCID=0f96fb6bb12d412fa625f08027a2795f|Lezione del 12 Novembre]]
* [[https://unicam.webex.com/unicam/lsr.php?RCID=32b62de05f29443d93ea0a8c608b54e9|Lezione del 19 Novembre]]
* [[https://unicam.webex.com/unicam/lsr.php?RCID=d69be9b4f7a0416e83e605a6416b661b|Lezione del 3 Dicembre]]
* [[https://unicam.webex.com/unicam/lsr.php?RCID=c72f73a41b8e4417add43917c22a4004|Lezione del 7 Gennaio]]
**Testi di Riferimento**
All'interno delle slides sono presenti a molte risorse disponibili online per approfondimenti dei contenuti del corso.
In particolare per approfondimenti sugli standard HTTP/HTML si può fare riferimento a:
[[https://developer.mozilla.org/en-US/docs/Web/HTTP|Documentazione per Developer Mozilla]]
Per quanto riguarda la conoscenza di Javascript può essere utile consultare il volume:
**JavaScript: The Good Parts**
Douglas Crockford
Editore: O'Reilly Media, Inc, USA
Anno: 2008
EAN: 978059
**MOBILE DEVELOPER‘S GUIDE TO THE GALAXY** :
https://www.open-xchange.com/fileadmin/user_upload/Resources_Pages/Mobile_Developers_Guide/Mobile_Developers_Guide_17thEdition_Web.pdf
Repository GitHub per l'applicazione Node JS
[[https://github.com/mccalv/unicam
]]
** Alcuni canali twitter interessanti ** :
@googledevs
@windowsdev
@aspnet
@dotnet
@VisualStudio
@code
@typescriptlang
@getbootstrap
@angular
@ionicframework
@xamarinhq
@nativescript
----
===== Esami =====
L'esame consiste nella presentazione di un applicazione web su un tema scelto dai candidati (può essere condotta da una o più persone fino ad un massimo di 4) che abbia le seguente caratteristiche:
* Sia fruibile in modalità web anche da dispositivi mobile oppure sia una app mobile (ionic, xamarin, nativescript, react native...)
* Implementi un pattern MVC e Single Page Application
* Abbia un backend ed un DBMS per il popolamento dei dati
L'applicazione può essere concordata per email e discussa con i docenti prima della data di esame.
Per poter sostenere l'esame sarà necessario presentare una descrizione di base del progetto e delle tecnologie scelte (max 4 pagine) e link al repository github/bitbucket/gitlab (non si accettano allegati contenenti codice sorgente) almeno una settimana prima dell'esame.
Si ricorda che si potrà lavorare al codice del progetto sul repository github/bitbucket/gitlab anche dopo la consegna.
Completeranno l'esame alcune domande orali.
**Date Esami A.A. 2018/2019**
25/02/2019 09:00 Polo Informatico (presentazione relazione entro il 21/02/2019)