I SISTEMI DIGITALI COMPLESSI
Questo percorso di formazione “on the job” è progettato per fornire ai partecipanti le competenze teoriche ma soprattutto pratiche necessarie per progettare, sviluppare e gestire sistemi digitali moderni, con un focus specifico su applicazioni Android in grado di comunicare in modo sicuro con piattaforme cloud.
Durante il training, i partecipanti impareranno a:
gestire protocolli di comunicazione e architetture di rete sicure,
sviluppare API REST e WebSocket per l’interazione tra app e server
integrare protocolli IoT come MQTT, Modbus e Connex
utilizzare database relazionali come MySQL e MariaDB per la gestione dei dati
progettare interfacce utente moderne e responsive
sfruttare l’intelligenza artificiale generativa (LLM) per ottimizzare i processi di sviluppo e prototipazione.
DURATA DEL CORSO:
20/20h
METODOLOGIA/E:
Aula in presenza / Aula virtuale
CALENDARIO CORSI Finanziati (Codice inseribile nel campo "Cerca il corso": SIST-COMPL)
CALENDARIO CORSI a pagamento (Codice inseribile nel campo "Cerca il corso": SIST-COMPL)
DATI ORGANIZZATIVI:
Il setting formativo per questa formazione on the job prevede che i dipendenti utilizzino le proprie postazioni PC, un aspetto indispensabile poich è i programmi e i sistemi IT necessari sono già installati e configurati sui loro computer. Questo permette ai partecipanti di lavorare direttamente con gli strumenti che utilizzano quotidianamente, garantendo un apprendimento pratico e immediatamente applicabile. I corsisti svolgeranno la formazione all'interno del loro ambiente di lavoro abituale, condividendo l'ufficio con altri colleghi che non parteciperanno al corso e non saranno registrati come uditori. Questi colleghi continueranno a svolgere le loro normali attività senza interferire con la formazione, assicurando un contesto tranquillo e adeguato per l'apprendimento.
CONTENUTI:
Introduzione a Sistemi Digitali Distribuiti e App Android
Teoria
- Architettura client-server e sistemi distribuiti
- Panoramica su Android Studio, SDK, emulatori
- Ciclo di vita di un'app
Laboratorio
- Installazione ambiente Android
- Creazione di una app Android base (“Hello Secure World”)
Comunicazione Internet: API REST, HTTPS, WebSocket
Teoria
- RESTful API: metodi HTTP, JSON
- HTTPS e TLS
- WebSocket: differenze e casi d’uso
- Librerie Android: Retrofit, Volley
Laboratorio
- Connessione a endpoint sicuri (Firebase, mock API)
- Visualizzazione dati da API
Sicurezza e Protocolli IoT: Autenticazione, Crittografia, MQTT, Modbus, Connex
Teoria
- HTTPS, TLS, certificati
- OAuth2 e JWT
- Crittografia: AES, RSA, Keystore Android
- Protocolli IoT: MQTT, Modbus RTU/TCP, KNX/Connex
- Integrazione con sensori e sistemi esterni
Laboratorio
- Login utente con Firebase Auth o Auth0
- Lettura da broker MQTT (es. Mosquitto)
- Simulazione scambio dati con dispositivi Modbus
Backend, Database e Architetture Cloud
Teoria
- Introduzione a uno dei seguenti sistemi di backend
- Database relazionali: MySQL, MariaDB
- Logging, monitoraggio, strumenti
Laboratorio
- Backend cloud
- Connessione database remoto e interfacciamento API
- Inserimento e lettura dati
Front-end, AI Generativa, Test e Best Practice
Teoria
- Costruzione di interfacce front-end: Flutter o simili, HTML5 o Android XML
- Introduzione agli LLM (ChatGPT, GitHub Copilot) per generazione codice
- Testing automatico e manuale
- Basi su deployment su Google Play
- Sicurezza applicativa (OWASP Mobile)
Laboratorio finale
- Progetto: sistema completo Android + backend + dashboard frontend
- Utilizzo LLM per scrivere porzioni di codice (form, validazioni, UI)
- Discussione finale dei progetti
COMPETENZE:
Al termine del corso il partecipante: - Sa organizzare dati e informazioni in un ambiente strutturato (Attività presente in Atlante del lavoro e delle Qualificazioni, Agg.04/02/2025 - ADA.QE.01.01, Quadro Europeo DigComp 2.1- Ricerca e
gestione di informazioni, dati e contenuti digitali)
Micro competenze:
- Sa Lavorare le informazioni, i dati ed i contenuti per facilitarne l'organizzazione, l'archiviazione ed il recupero
- Organizzare in modo autonomo ed in base ai propri
fabbisogni le informazioni, i dati ed i contenuti in un ambiente strutturato