Skip to Main Content (Press Enter)

Logo UNIRC
  • ×
  • Home
  • Corsi
  • Insegnamenti
  • Professioni
  • Persone
  • Pubblicazioni
  • Strutture
  • Attività
  • Competenze

UNI-FIND
Logo UNIRC

|

UNI-FIND

unirc.it
  • ×
  • Home
  • Corsi
  • Insegnamenti
  • Professioni
  • Persone
  • Pubblicazioni
  • Strutture
  • Attività
  • Competenze
  1. Insegnamenti

1000722 - Programmazione Web e Mobile

insegnamento
ID:
1000722
Durata (ore):
48
CFU:
6
SSD:
SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
Sede:
REGGIO DI CALABRIA
Url:
Dettaglio Insegnamento:
INGEGNERIA INFORMATICA E DEI SISTEMI PER LE TELECOMUNICAZIONI/comune Anno: 2
Anno:
2025
Course Catalogue:
https://unirc.coursecatalogue.cineca.it/af/2025?co...
  • Dati Generali
  • Syllabus
  • Corsi
  • Persone

Dati Generali

Periodo di attività

Primo Ciclo Semestrale (22/09/2025 - 19/12/2025)

Syllabus

Obiettivi Formativi

Il corso mira a fornire agli studenti alcune delle conoscenze pratiche richieste dal mondo del lavoro. Al termine del corso lo studente è in grado di:

1. gestire la rappresentazione e il mantenimento su database relazionale di informazioni mappate ad oggetti Java

2. sviluppare in tempi rapidi applicazioni Web di notevoli dimensioni

3. sviluppare applicazioni per dispositivi mobili Android


Conoscenza e comprensione: a seguito del superamento dell’esame, lo studente conosce e comprende la persistenza dei dati attraverso Object-Relational Mapping, come implementare il pattern MVC attraverso il framework Struts e come interfacciare un’app Android con un servizio Web attraverso JSON.


Autonomia di giudizio: a seguito del superamento dell’esame, lo studente sarà in grado di valutare le diverse alternative in fase di progettazione di applicazioni Web. Le alternative saranno valutate in base all’analisi dei requisiti funzionali, alla manutenibilità della base di dati e alle prestazioni da garantire.


Abilità comunicative: nella fase di progettazione e realizzazione delle applicazioni, lo sviluppatore deve dialogare con il committente che descriverà le funzionalità della applicazione da sviluppare in linguaggio naturale. Compito dello sviluppatore è saper tradurre le richieste espresse in linguaggio naturale in specifiche funzionalità offerte dai framework web, evidenziando vantaggi e svantaggi delle scelte adottate.


Capacità di apprendimento: durante il corso lo studente studia su documentazione tecnica, soprattutto in lingua inglese, con lo scopo principale di acquisire la capacità di aggiornare continuamente le proprie conoscenze ed essere pronto ad applicare questa metodologia di studio anche per le nuove tecnologie.





Prerequisiti

E’ importante che lo studente abbia conoscenza dei seguenti argomenti (tra parentesi, i corsi nei quali sono stati trattati):



  • Progettazione concettuale e logica di una base di dati e basi di SQL (Basi di dati)
  • Elementi di base di programmazione Java, classi, uso di librerie jar (Fondamenti di Informatica, Basi di dati)
  • Progettare e realizzare Web Applications utilizzando HTML 5 (Ingegneria del Web)


Le prime lezioni riprenderanno parte di questi argomenti.


Metodi didattici

Lezioni frontali ed esercizioni.


Verifica Apprendimento

Gli esami di accertamento e di valutazione consistono in una prova progettuale e in una prova orale. La prova progettuale, da svolgersi in gruppo, ha lo scopo di progettare e, possibilmente, realizzare un sistema informativo che informatizzi una realtà prescelta dagli studenti. La prova orale ha l’obiettivo di discutere il progetto realizzato e di valutare la conoscenza, da parte dello studente, del programma del corso.


Per il superamento dell’esame con votazione minima di 18/30 è necessario che lo studente sia in grado di realizzare una Web application partendo da una realtà di complessità limitata e che almeno una funzionalità sia fornita anche attraverso un’app Android. È attribuito un voto compreso fra 19/30 e 24/30 se lo studente è anche in grado di realizzare una Web application partendo da una realtà di complessità elevata. È attribuito un voto compreso fra 25/30 e 30/30 se lo studente è anche in grado di realizzare funzionalità complesse fornite attraverso un’app Android. È attribuito un voto di 30/30 e lode se lo studente è anche in grado di realizzare funzionalità aggiuntive richieste all’orale.


Testi

• Java Persistence with Hibernate, Second Edition of Hibernate in Action, Christian Bauer and Gavin King, Manning Publications Co.

• Struts 2 in Action, Donald Brown, Chad Michael Davis, and Scott Stanlick, Manning Publications Co.


• Hibernate http://hibernate.org/orm/

• Struts https://struts.apache.org/

• Android Developers https://developer.android.com/


• Slide

• Codice delle esercitazioni


Contenuti

1) Richiami (0.5 CFU)

Introduzione al corso. Richiami di Java. Ereditarietà ed Interfacce. Gestione delle eccezioni. Collections. Annotations. Serializzazione. Logging. La libreria Log4J2. I pattern. Il pattern Singleton. Il pattern DAO. Il pattern Factory.


2) Hibernate (2 CFU)

Introduzione ad Hibernate. Oggetti POJO. Hibernate-configuration. Utilizzo di Hibernate: configurazione e mapping XML. Il pattern DAO e Factory in Hibernate. Mapping di relazioni. Uno a molti. One-to-one classica e component. Many-to-many. Chiave composta. Ereditarietà. Hibernate Query Language. Hibernate tools. Reverse Engineering.


3) Struts (2 CFU)

Introduzione a Struts. MVC di Struts 2. Struts FilterResult. Action. Interceptor. Passaggio dei parametri tra View e Action e viceversa. Passaggio dati con Javabeans e ModelDriven. Validazione input con Workflow e con Validation. Errori e avvisi. Gestione eccezioni. Resource Bundles. Conversioni di tipi. Interceptor ExecAndWait, FileUpload, Timer, Logger. Creazione di un interceptor. Interfaccia SessionAware. Iniezione di dati in sessione. Tag UI di Struts. Altre funzionalità di Struts. Il formato JSON. Struts e JSON. JSON results.


4) Android (1.5 CFU)

Il sistema Android. Applicazione Hello World. Manifest e Resources. Activity. Chiamata di un'activity e passaggio di parametri. Intent esplicito. Life cycle di un'activity. Preferenze. Gestione dei file interni. Gestione dei file esterni. Pattern delegation. Intent impliciti. Gestione della action bar. Gestione di oggetti JSON. Processi e Thread. UI thread e worker thread. Async Task e connessione ad una Web Application.


Altre informazioni

Avvisi e materiale didattico sono disponibili nella classe Teams con codice xivq0o9


Corsi

Corsi

INGEGNERIA INFORMATICA E DEI SISTEMI PER LE TELECOMUNICAZIONI 
Laurea Magistrale
2 anni
No Results Found

Persone

Persone

LAX Gianluca
Gruppo 09/IINF-05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
AREA MIN. 09 - Ingegneria industriale e dell'informazione
Settore IINF-05/A - Sistemi di elaborazione delle informazioni
Docenti di ruolo di IIa fascia
No Results Found
  • Utilizzo dei cookie

Realizzato con VIVO | Designed by Cineca | 25.12.4.0