Corso per la progettazione ed implementazione di applicazioni Mobile (App) – Programma Garanzia Giovani

Obiettivi:

Il corso per la progettazione ed implementazione di applicazioni Mobile, rivolto a giovani NEET pugliesi, ha come obiettivo quello di ampliare le conoscenze e favorire l’acquisizione di nuove competenze nella progettazione e realizzazione di applicazioni per dispositivi Mobile quali smathphone e tablet con sistema operativo Android tramite l’uso di linguaggi di programmazione Java. 

CATEGORIA
Senza stage/tirocinio
LINEA
Corsi brevi
FORMULA
Aula
FINANZIAMENTO
Finanziato/Gratuito
DURATA
200 ore
CONDIVIDI

Destinatari

Il corso è destinato a tutti i Giovani NEET (Not in Education, Employment or Training) iscritti al programma Garanzia Giovani Puglia.

Competenze in uscita

Al termine del percorso formativo i corsisti avranno acquisito le conoscenze teoriche necessarie per maturare le seguenti competenze tecniche:

  • Essere in grado di riconoscere le principali caratteristiche funzionali di un'applicazione per dispositivi quali smarthphone e tablet;
  • Essere in grado di riconoscere le principali procedure per la programmazione di applicazioni per dispositivi Mobile;
  • Essere in grado di progettare l'aspetto grafico di un'applicazione Mobile;
  • Essere in grado di programmare righe di codice utili alla realizzazione di un'applicazione Android tramite l'uso di linguaggi di programmazione quali HTML5 e CSS;
  • Essere in grado di programmare Applicazioni Mobile, o parti di essa, tramite l'uso del linguaggio di programmazione Java;
  • Essere in grado di eseguire procedure di testing per verificare il corretto funzionamento di applicazioni Mobile.

Contenuti del corso

  • Cos'è il Mobile Computing: introduzione alle piattaforme mobili con focus su iOS, Android, Windows Phone;
  • Anatomia di un dispositivo mobile (prestazioni ridotte, bassa capacità di memoria, banda di rete limitata...);
  • Categorie di dispositivi mobili;
  • Architettura delle applicazioni mobili (stand-alone, Web e Client/Server);
  • Caratteristiche delle applicazioni mobili: il problema della portabilità;
  • Progetto della user interface : stand-alone o Web application;
  • Caratteristiche di un progetto mobile ed elementi di base della User Interface;
  • Componenti grafici nativi: finestre, viste, bottoni, tableview, search bar, pickers, scroll view;
  • Conoscenze e utilizzo di HTML e CSS;
  • Elementi di grafica per il web e il mobile;
  • Photoshop: interfaccia e strumenti base;
  • Esportazione d’immagini adattate per il web in formato gif, jpg o png;
  • Esportazione a generare il codice html.
  • La logica di programmazione Object Oriented;
  • Installazione del software;
  • Controllo di flusso nella programmazione strutturata;
  • Gli algoritmi: definizione, elementi descrittivi;
  • Variabili, costanti, tipi di dati;
  • Array e strutture dati;
  • Operatori aritmetici e logici;
  • Istruzioni di assegnazione, di controllo, iterative;
  • Programmazione Object Oriented;
  • Controllo di flusso e distribuzione di oggetti: cicli e istruzioni condizionali;
  • Gestione delle eccezioni e degli errori: try-catch;
  • Incapsulamento di oggetti: modificatori Public e Private;
  • La definizione di classe, estensione di una classe base;
  • Overload di metodi;
  • Ereditarietà e costruttori;
  • Polimorfismo;
  • Definizione d'interfaccia;
  • Java Threads.
  • Cos'è Android : sistema operativo open source, versioni esistenti, problema schermi;
  • Ambiente di sviluppo: versioni sdk, emulatori (virtual device), debug, logcat;
  • Struttura app: manifest, file java, file xml, gestione automatica delle risorse;
  • Prima app: activity, widget grafici (textview, button, ...), listener, tipi di layout;
  • Ciclo di vita activity: callback (onCreate, onPause, …), rotazione dello schermo, intent e passaggio di Parametri, stack delle activity;
  • Liste e adapters: listview e listener, adapters, liste statiche e dinamiche, righe standard e custom;
  • Task asincroni: main thread (problema interfaccia), asynctask (doInBackground, onPostExecute, ...);
  • Comunicazione di rete: asynctask, richiesta a un server http, permessi, formato json;
  • Persistenza: tipi di persistenza, preferenze file (interni o esterni).
  • Set-up di Android Studio per lo sviluppo di game;
  • Fase di progettazione teorica di un game con i concetti di mondo/player/camera e movimento con parallasse;
  • Il ciclo di vita di un game: startup/game loop/process input/update/render/shutdown;
  • Dalla progettazione alla modellazione in classi Java delle entità costitutive del game;
  • Realizzazione delle componenti grafiche del gioco come texture, tile, sfondi e player;
  • Codice per la configurazione della camera, del mondo, del player e per la gestione delle animazioni;
  • Un po’ di matematica: legare la camera alla posizione corrente del player e matrici di proiezione.
  • Un po' di fisica: velocità, accelerazione e inerzia;
  • Impostazione dei frame al secondo per le animazioni;
  • Gestione del movimento del player in base al touch dell'utente;
  • Gestione delle collisioni;
  • Funzioni per l’aggiornamento dell’interfaccia del gioco e spostamento con parallasse della grafica di sfondo;
  • Esempi di sistemi particellari;
  • Inserimento di musica ed effetti sonori.

Certificazioni

  • Attestato di frequenza IFOA

Note

Il corso ha una durata complessiva di 200 ore.


Enti Finanziatori



Corsi correlati

Richiedi info
(ci permette di fornirti un servizio più veloce e preciso)
Informativa Privacy (Reg. UE 2016/679)
L'informativa estesa relativa al trattamento dei suoi dati personali da parte IFOA la trova all'indirizzo https://www.privacylab.it/informativa.php?09395343333
Presta inoltre il suo consenso al trattamento dei dati personali per le finalità facoltative sotto riportate?
Invio di comunicazione su eventi, servizi e prodotti Ifoa