In questo periodo sto frequentando il corso di Architetture Software e proprio durante questo corso ci è stata spiegata l’importanza del Middleware [1], naturalmente non ci è stato chiesto solo di comprenderlo in teoria, ma ci è stato anche chiesto di implementare qualcosa con questo tipo di tecnologia…
Progetto: Realizzazione di una semplice applicazione di chat basata su JMS
Il che mi ha fatto tornare in mente un progetto precedente fatto qualche anno prima sempre in ambito universitario:
Progetto: implementare un chat server/client in C
I due progetti sembrano chiedere la stessa cosa in definitiva…
Per entrambi dovremmo avere alla fine in mano una chat…
La differenza sta nell’impegno necessario per realizzare entrambi i progetti…
Sul primo sarà comunque necessario installare un Application Server, nel mio caso Glassfish[2], farlo funzionare, configurarlo, preparare l’ambiente adatto di programmazione, leggere la documentazione sul messaging, e scrivere il codice (376 righe approssimando).
Nel secondo abbiamo dovuto studiare thread e processi, capire le socket, i mutex, studiare un modo per gestire il transito dei messaggi ecc ecc, scrivere il codice (867 righe approssimando).
Ora oltre al vantaggio in termini di righe di codice, possiamo dire che nel primo progetto molti aspetti come la sicurezza vengono gestiti in automatico dall’Application Server e che in realtà sempre per il primo progetto è stato necessario implementare solamente il Client in quanto la maggior parte del lavoro (registrare il client, raccogliere/smistare i messaggi) viene svolto dall’Application Server… Insomma questo middleware serve veramente a qualcosa :P…
Ah il codice…
Chat JMS http://github.com/Nss/simple_JMS_chat
Chat C http://github.com/Nss/simple_chat_in_c
[1] http://it.wikipedia.org/wiki/Middleware
[2] http://en.wikipedia.org/wiki/GlassFish
Post a Comment