Programma didattico

Master in
Sviluppo Applicazioni
e Servizi

Il Master offre una formazione tecnica certificata e tutte le competenze necessarie a costruire un percorso professionale nel settore dell’Information and Communication Technology, in qualità di Programmatore informatico e Sviluppatore Java/Android. 

Il percorso formativo si basa sui principi della didattica attiva e della formazione in assetto lavorativo. Lo studente apprende attraverso il confronto con docenti e professionisti delle aziende partner, supportato da un tutor d’aula.

Il Master prevede 500 ore di formazione 100% online, per una durata complessiva di cinque mesi focalizzati sul raggiungimento degli obiettivi formativi. L’accesso è a numero chiuso e la frequenza obbligatoria (minimo 85% delle lezioni). Le lezioni si svolgono dal lunedì al venerdì, dalle ore 09:00 alle ore 18:00.

Programma

Sviluppo Back-end

  • Java SE v.11
    • Utilizzare i costrutti del linguaggio di programmazione Java per creare un’applicazione con tecnologia Java
    • Utilizzare costrutti e metodi di decisione e loop per dettare il flusso del programma
    • Comprendere concetti di base orientati agli oggetti come ereditarietà, incapsulamento e astrazione
    • Utilizzare e manipolare i riferimenti agli oggetti e scrivere un semplice codice di gestione degli errori
    • Utilizzare i nuovi pacchetti java.time e java.time.format per formattare e stampare la data e l’ora locali
    • Specificare una modifica dei dati passando un’espressione lambda predicata alla classe Collections
  • Sviluppo web
    • Comprendere la struttura base delle applicazioni Web
    • Utilizzo di contenitori Web
    • Creazione di una classe servlet
    • Utilizzo di JSP per visualizzare il contenuto dinamico delle pagine
    • Mantenimento dello stato utilizzando le sessioni
    • Utilizzo dei filtri.
      Dati persistenti con JPA 
  • Spring

Sviluppo Front-End

  • Javascript
    • Concetti base di programmazione (variabili, costrutti decisionali, loop, funzioni)
    • Object Oriented Javascript 
    • JS asincrono e richieste di rete (Promises, async await, callback, fetch
    • Manipolare gli elementi sulla pagina e gestire gli eventi 
  • HTML5
    • Concetto di linguaggio di mark up
    • Principi di architettura client-server, scripting lato client, lato server e applicazioni web
    • Strumenti di sviluppo per HTML e CSS
    • Principali differenze con HTML4 e novità introdotte in HTML5
    • Tag principali, commenti nel codice, gestione del testo
    • Tabelle, elenchi, Link, immagini
    • Input e select 
  • CSS3
    • Introduzione e proprietà fogli di stile
    • Inclusione, differenziazione di un foglio di stile in base al dispositivo 
    • Gestione dello sfondo e del testo
    • Commenti nel codice 
      Id, classi, selettori di base e di attributo 
    • Gestione dell’altezza, larghezza e overflow
    • Gestione testo, font e posizionamento elementi, i Div 
  • JQuery
    • Introduzione alle librerie jQuery per JavaScript
    • L’oggetto principale di jQuery: $
    • Selettori (di base, gerarchici e per attributi)
    • Eventi
    • Javascript e jQuery
    • CSS e jQuery 
  • Bootstrap4
    • Griglia
    • Approccio responsive
    • Elementi tipici
  • Angular

Android

  • Introduzione ad Android (Android Studio) 
  • Inside Android 
  • Activity
  • View e ViewGroup
  • Temi e Stili
  • Listeners
  • Intent espliciti e impliciti
  • Permessi
  • Switch & CardView
  • List management
  • Snackbar e Custom Toolbar

DataBase Design & SQL

  • Proprietà dei DBMS
  • Database Design: Modello ER
  • Tecniche di progettazione in team
  • Regole di derivazione relazionali
  • Modello Relazionale
  • Linguaggio SQL
  • DDL, DML
  • Insert, update delete, select
  • Operatori aggregati
  • Indici
  • Transazioni
  • Conversione ERD-→ Relational Model

Modulo Spring

  • Cos’è uno starter e come implementarlo
  • Struttura e creazione di un progetto Spring
  • Differenze tra architettura monolitica e a micro-servizi
  • Cosa sono un’API, Api RESTFul e l’architettura REST
  • Controller Layer
  • Parametri in input su una richiesta
  • Utilizzo dei protocolli HTTP nei servizi
  • Oggetti nella richiesta e nella riposta
  • Springboot data jpa, la gestione degli errori in Spring
  • Validazione dei bean automatica e manuale
  • Pattern DTO, Facade pattern