====== Progettazione di Applicazioni Web e Mobili ====== ===== News ===== Inizio lezioni: 5 Ottobre 2020 ore 9:00 Esami: Per chi fosse interessato all'appello telematico può contattarmi via email all'indirizzo diego.bonura@unicam.it . ---- ===== Informazioni Generali ===== **Docenti**: Diego Bonura [[diego.bonura@unicam.it]] **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 2019/2020** * {{ :didattica:triennale:pawm:ay_1920:lezione_7_ottobre_2019.pdf |Lezione del 7 Ottobre}} * {{ :didattica:triennale:pawm:ay_1920:lezione_14_ottobre_2019.pdf |Lezione del 14 Ottobre}} * {{ :didattica:triennale:pawm:ay_1920:lezione_20_ottobre_2019.pdf |Lezione del 21 Ottobre}} * {{ :didattica:triennale:pawm:ay_1920:lezione_28_ottobre_2019.pdf |Lezione del 28 Ottobre}} * {{ :didattica:triennale:pawm:ay_1920:lezione_4_novembre_2019.pdf |Lezione del 4 Novembre}} * {{ :didattica:triennale:pawm:ay_1920:lezione_11_novembre_2019.pdf |Lezione del 11 Novembre}} * {{ :didattica:triennale:pawm:ay_1920:lezione_18_novembre_2019.pdf |Lezione del 18 Novembre}} * {{ :didattica:triennale:pawm:ay_1920:lezione_25_novembre_2019.pdf.pdf |Lezione del 25 Novembre}} * {{ :didattica:triennale:pawm:ay_1920:lezione_2_dicembre_2019.pdf |Lezione del 2 Dicembre}} * {{ :didattica:triennale:pawm:ay_1920:lezione_9_dicembre_2019.pdf |Lezione del 9 Dicembre}} **Link a WebEx** * [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/28c41d37b19d4c159274e1673d0c1b9d|Lezione del 7 Ottobre]] * [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/3a8ffabc49f5495a9f7ff0e6dbbece0b|Lezione del 14 Ottobre]] * [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/443c6262e96345929550fb79b431acf2|Lezione del 21 Ottobre]] * [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/5ce2e9d84dea4c43a21bf6c0106d1d4b|Lezione del 28 Ottobre]] * [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/e0863c99aa884190b9c2e173e39b75fd|Lezione del 4 Novembre]] * [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/df86345d46a5407cbe6b135393a88677|Lezione del 11 Novembre]] * [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/1a6d289084d14103a544338b1fde4d81|Lezione del 18 Novembre]] * [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/c8c043a7ae684789b93d0afb88e53e25|Lezione del 25 Novembre]] * [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/9838957fa4aa4a178f08b5464e5639ff|Lezione del 2 Dicembre]] * [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/2f934e6722614dc6bc2c26888c6512de|Lezione del 9 Dicembre]] * [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/6dc84b2ff97d48bbb071760fcfb8dadb|Lezione del 13 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.