Materiale per le classi Quinte di Informatica

Questa pagina contiene materiali di riferimento per i principali argomenti trattati a lezione.

Al momento la Presentazione principale è in aggiornamento continuo e nuovi Progetti sono in fase di realizzazione e saranno aggiunti in successione.

I primi 2 progetti qui presentati sono volutamente incompleti, l’allievo può integrare nell’applicazione “SoccerMan 2” quella di accounting “Account 2” dove peraltro è stato implementato solo il login per cui resta da completare la registrazione opportunamente.

Inoltre per ciascuna di tali applicazioni è possibile apportare dei miglioramenti come descritti per ciascuna di esse.

A questa applicazione, che si basa su 2 pagine di cui la prima gestisce le squadre e la seconda i calciatori per ogni squadra scelta nella prima pagina, è possibile consentire di spostare un giocatore da una squadra alle restanti mediante opportuno controllo.

Per questa applicazione è possibile perfezionare il login e la registrazione crittografando la password con la funzione PHP “crypt()” (si faccia riferimento alla presentazione principale), inoltre è possibile perfezionare ulteriormente la registrazione inviando una mail di attivazione con la funzione PHP “mail()” al fine di consentire ad un utente registratosi di validare il suo account il che comporterà di modificare il campo “status” del record di questo utente con il flag ‘A’ di attivato e quindi consentendo il login per tale utente.

Si allegano a questa presentazione le cartelle condivise su Google Drive dei progetti NetBeans 11 Client e Server per l’accesso (tramite apposito connettore software disponibile al seguente link qualora non fosse installato sul sistema adoperato) ad una tabella di un DB MySQL lato Server e la stampa della stessa lato Client:

Si allegano a questa presentazione i progetti Client e Server (in formato NetBeans 11) dell’esercitazione sul Clock con l’aggiunta delle funzionalità JSON (applicabili usando l’apposita libreria in formato JAR scaricabile al seguente link e quindi quest’utlima da aggiungere nuovamente ai progetti suddetti in base al percorso che si ritiene più opportuno).

Per entrambi i progetti il codice è stato opportunamente commentato e le nuove funzionalità JSON sono state usate per la codifica e decodifica delle informazioni trasmesse mantenendo lo stesso obiettivo ossia quello di comunicare al client, su sua richiesta, la data e l’ora attuale del server (pertanto, al fine di una maggiore comprensione, e anche per approfondire l’argomento, si invita a consultare quanto trattato al seguente link):

  1. JSONClockClient
  2. JSONClockServer

Si allegano a questa presentazione le cartelle condivise su Google Drive dei progetti NetBeans 11 Client e Server per una semplice elaborazione (l’addizione) demandata al Server di cui il Client gestisce l’Input/Output con l’utente:

Seguono le versioni successive di questi progetti, ma in formato NetBeans 12, da usare come modelli per applicazioni più evolute in cui il Client presenta un interfaccia con un generico menù le cui scelte sono supportate nel Server al fine di consentire un interazione remota specifica ad ogni scelta:

In alternativa alla classe unica per gestire insieme frame e thread (trattata nella presentazione), si propone qui il seguente progetto in formato NetBeans 11 per gestire frame e thread in classi separate dove viene fatto uso di una variabile di tipo “volatile” per garantire una comunicazione “Thread safe”  tra queste classi ed una semplice “Thread.sleep(…)” per ottimizzare l’attesa attiva del thread: