JavaScript lato server con Google App Engine – parte 2

One Ring to rule them all, One Ring to find them,

One Ring to bring them all and in the darkness bind them

In the Land of Mordor where the Shadows lie.

— J. R. R. Tolkien

Il post sull’introduzione di java in App Engine espone solo una delle implicazioni (per giunta marginale) di questa “rivoluzione”, non è completo — non chiude il cerchio.

Per farlo (dimostrare, chiudere o completare, a vostra scelta) comincerò col parlarvi di due delle cose che riescono sempre a stupirmi quando — circa ogni giorno — mi immergo nel mondo legato allo sviluppo di applicazioni web:

  • la quantità di tempo che viene speso nell’implementazione di algoritmi di validazione dell’input
  • gli sprechi e le inconsistenze che emergono dal doverli implementare sia lato server che lato client

Spiego meglio la seconda. La user experience è — giustamente — considerata sacra, per questo è d’obbligo fornire un feedback immediato agli utenti che stanno inserendo dati potenzialmente non corretti. Pensate alle form di registrazione dei moderni social cosi.

Questo porta ad avere la stessa logica espressa, per esempio, in JavaScript (client side) e in PHP (server side). A volte una parte del lavoro implementativo viene riutilizzata: il riapplicare le stesse espressioni regolari, per esempio. Molto spesso il lavoro si sdoppia e raddoppia.

Come proof of concept di “nuove” possibilità di riuso e come esempio di utilizzo smart (spero) della nuova incarnazione di App Engine, ho creato un semplicissimo validatore di codice fiscale.

La peculiarità di questa applicazione sta proprio nel suo essere 100% DRY-compliant. Il codice di validazione (una funzione JavaScript che avevo scaricato un po’ di tempo fa — accetto hint riguardo ai credit) viene usato si lato client (dai velocissimi JavaScript engine dei vostri browser) che lato server (da java su App Engine via Rhino).

Lo trovate qui: http://ditloids.appspot.com/ (attualmente offline)

come potete osservare il riuso si applica anche ai dominii 😛 chi non sapesse cosa sono i ditloidi può sbirciare qui.

Se avete bisogno di un codice fiscale di test potete usare questo: PPPPLT80R10M082K (preso qui)

Come dicevo si tratta solo di una delle implicazioni, per giunta marginale…

I più perversi si orienteranno verso Quercus (PHP in Java).

aggiornamento: Lord of the REPLs

This entry was posted in Null. Bookmark the permalink.

Leave a Reply