Salta al contenuto principale
CODICE 101805
ANNO ACCADEMICO 2024/2025
CFU
SETTORE SCIENTIFICO DISCIPLINARE INF/01
LINGUA Inglese
SEDE
  • GENOVA
PERIODO 2° Semestre
MATERIALE DIDATTICO AULAWEB

PRESENTAZIONE

Questo insegnamento corso riguarda lo sviluppo di applicazioni mobile. Gli studenti impareranno come progettare e creare app mobile utilizzando IDE, framework, linguaggi e tecnologie all'avanguardia. Impareranno come sfruttare le varie funzionalità disponibili sui moderni dispositivi mobili come servizi basati sulla posizione, sensori e gestures. I concetti appresi dagli studenti saranno applicabili a qualsiasi sistema operativo mobile. Tuttavia un focus particolare sarà dato alla piattaforma Android grazie all'utilizzo di dispositivi reali ed emulatori basati su questa piattaforma.

OBIETTIVI E CONTENUTI

OBIETTIVI FORMATIVI

Learning the design and development of mobile applications by using state of the practice IDEs, frameworks, languages, and technologies.

OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO

Al termine del corso gli studenti saranno in grado di:

  • installare e configurare gli strumenti di sviluppo di applicazioni mobili
  • comprendere e adottare il modello basato su eventi impiegato nei framework applicativi per dispositivi mobili
  • analizzare e progettare un'esperienza utente adeguata per un'applicazione mobile
  • creare e distribuire un'applicazione utilizzando un framework software mobile
  • progettare, sviluppare, testare ed eseguire il debug di applicazioni mobile utilizzando IDE software specifici e hardware/emulatori
  • sviluppare un prototipo completo di un'applicazione mobile attraverso un'esperienza pratica
  • creare una documentazione dettagliata per un'applicazione mobile tenendo conto delle prospettive sia degli utenti finali che del personale tecnico

PREREQUISITI

Le seguenti conoscenze si presumono acquisite e costituiscono le basi necessarie per la comprensione degli argomenti del corso e degli esami.

  • Fondamenti di programmazione Object Oriented (in particolare Java) e procedurale
  • Sistemi operativi
  • Basi di dati
  • Concetti base di sviluppo di applicazioni web e networking

MODALITA' DIDATTICHE

L'insegnamento è una combinazione tra presentazione di concetti teorici, esercitazioni e discussioni. È orientato al dialogo e con un approccio pratico.

Agli studenti verranno forniti compiti obbligatori (i laboratori) che dovranno essere completati durante il corso. Alla fine del corso gli studenti devono completare un progetto finale consistente nello sviluppo di un'applicazione mobile e produrre un documento che presenti il lavoro svolto e come le sfide tecniche sono state risolte.

PROGRAMMA/CONTENUTO

Il programma del corso prevede la presentazione e la discussione dei seguenti argomenti:

  • Course Practical Organization & Introduction to the development of Mobile Applications
  • Introduction to Android, Android Studio set-up and creating the first Android app
  • Android Architecture
  • Logging
  • Views, View Groups, and View Hierarchy
  • Layouts and Event Handling, Buttons and clickable images
  • Activities and Intents: Passing data between activities
  • Activity lifecycle and states
  • App Navigations
  • Receiving Implicit Intents
  • Data Storage
  • Shared Preferences
  • Multithreading in Android and the Android Profiler
  • Receive, Use and Plot Sensors’ Values
  • Activity Recognition
  • Databases for Mobile Apps
  • Introduction to the Final Project

Durante il corso verranno proposti diversi laboratori pratici. I laboratori, che costituiscono parte integrante del corso, daranno agli studenti l'opportunità di fare pratica con i concetti e gli argomenti introdotti durante le lezioni.

TESTI/BIBLIOGRAFIA

https://developer.android.com/

DOCENTI E COMMISSIONI

Commissione d'esame

MAURIZIO LEOTTA (Presidente)

GIANNA REGGIO

FILIPPO RICCA (Presidente Supplente)

DARIO OLIANAS (Supplente)

MARINA RIBAUDO (Supplente)

LEZIONI

INIZIO LEZIONI

In accordo con il calendario didattico approvato dal Consiglio dei Corsi di Studio in Informatica e Computer Science.

Orari delle lezioni

L'orario di questo insegnamento è consultabile all'indirizzo: Portale EasyAcademy

ESAMI

MODALITA' D'ESAME

L'esame consisterà in una parte scritta (tradizionali domande aperte/chiuse ed esercizi) più la discussione del progetto (cioè lo sviluppo dell'app mobile). Ogni studente sceglierà l'argomento del progetto che preferisce. La proposta progettuale deve essere presentata e approvata dal docente. Lo sviluppo dell'app mobile deve essere completato prima che uno studente possa presentarsi per la discussione finale. Il voto finale sarà assegnato sommando le valutazioni di (1) prova scritta, (2) progetto finale e sua discussione, e, per una piccola frazione, (3) laboratori svolti durante il corso.

MODALITA' DI ACCERTAMENTO

L'acquisizione delle competenze previste da questo corso sarà valutata attraverso l'esame scritto + il progetto che sono stati accuratamente progettati per consentire al docente di verificare se lo studente è effettivamente in grado di creare un'applicazione mobile. I parametri di valutazione comprendono: la qualità dell'esposizione, l'uso corretto del lessico specialistico, la capacità di ragionare criticamente sulle possibili soluzioni tecniche da adottare e la capacità di utilizzarle in contesti reali.