LABORATORIO AVANZATO DI PROGRAMMAZIONE II

INF/01 - 6 CFU - 2° semestre

Docente titolare dell'insegnamento

ANTONIO SALVATORE CALANDUCCI


Obiettivi formativi

Il corso ha l’obiettivo di fornire allo studente le conoscenze, le metodologie e gli strumenti per progettare e realizzare applicazioni mobili native per le due piattaforme principali, iOS e Android, a partire dal design dell’interfaccia utente fino alla pubblicazione su App Store e Google Play.

Dopo un’introduzione sulle architetture delle due piattaforme native sopra menzionate e ai diversi approcci (nativo, mobile web, ibrido) per lo sviluppo di app, il corso si concentrerà su framework cross-platform nativi, che permettono di realizzare app per piattaforme diverse a partire da un singolo codebase, come React Native, Appcelerator Titanium, NativeScript e Xamarin.

In particolare, durante le sessioni di laboratorio, quest'anno verrà utilizzato React Native, il framework open source creato e mantenuto da Facebook e da centinaia di sviluppatori, diventato popolare negli ultimi due anni e particolarmente richiesto dalle aziende di sviluppo software.

Grazie a questo framework, si avrà modo di presentare un’approccio diverso alla programmazione, basato sulle funzioni (programmazione funzionale e reattiva) che rende peculiare React.

Il corso ha un taglio pratico. Il docente illustrerà i contenuti con dimostrazioni live e interattive durante le lezioni. Inoltre verranno assegnati dei challenge (con tre livelli di difficoltà) al termine di ogni lezione, lasciando allo studente la possibilità di approfondire ulteriori aspetti della programmazione mobile.


Prerequisiti richiesti

Buone conoscenze di programmazione. Basi del linguaggio JavaScript



Frequenza lezioni

La frequenza è fortemente consigliata



Contenuti del corso



Testi di riferimento

Fullstack React Native Book - The Complete Guide to React Native

https://www.fullstackreact.com/react-native/

Mastering React Native (Eric Masiello)

https://www.packtpub.com/web-development/mastering-react-native

Learning React Native: Building Native Mobile Apps with JavaScript (2nd edition)

Book by Bonnie Eisenman - http://shop.oreilly.com/product/0636920085270.do

Redux documentation: https://redux.js.org/



Verifica dell'apprendimento


MODALITÀ DI VERIFICA DELL'APPRENDIMENTO

L’esame consiste nel realizzare una semplice app secondo le specifiche del docente. L’esame si svolgerà presso il laboratorio Archimede nell’arco di 2-3 ore. Ad ogni specifica sarà assegnato un punteggio. Al termine della prova verrà fatta la verifica con il docente ed il voto finale sarà determinato dalla somma dei vari punteggi.

Sarà possibile utilizzare il proprio laptop o i PC del laboratorio.


PROVE IN ITINERE

Non sono previste prove in itinere.


ESEMPI DI DOMANDE E/O ESERCIZI FREQUENTI

Ulteriori materiali e/o esempi sono pubblicati dal docente sul gruppo Facebook LAP2: Sviluppo di applicazioni mobili native multipiattaforma al seguente indirizzo:

https://www.facebook.com/groups/unict.lap2/




Apri in formato Pdf English version