Come scrivere una applicazione manutenibile in NodeJS

Vediamo come utilizzare Node.JS per scrivere applicazioni professionali che siano facilmente manutenibili e leggibili attraverso un esempio pratico.

Soluzione professionale

Vediamo adesso qual’è il codice che realizza i requisiti specificati dallo scenario di lavoro, usando un’architettura professionale che offre almeno due vantaggi: 1) rende più semplice e soprattutto mantenibile il codice della libreria, 2) offre all’utilizzatore delle API semplici, che non richiedono la conoscenza di ciò che succede dietro le quinte.

Il codice corretto è il seguente:

A parte l’aggiunta della callback, il codice qui sopra svolge esattamente le stesse operazioni di quello di pagina precedente. La novità principale è che abbiamo assegnato un nome a tutte le funzioni anonime, che prima erano nidificate l’una nell’altra, e le abbiamo definite come funzioni distinte. Ciò rende più semplice la manutenzione del codice, perché permette di intervenire in modo puntuale. Tra l’altro tale architettura consente anche di dividere le diverse funzioni all’interno di moduli opportuni, come spiegato qui.

Notiamo infine come la callback dell’utente venga passata da funzione a funzione, in modo da arrivare fino al punto più “interno” del codice, che in questo caso è la funzione afterDB2. Questo modo di lavorare consente all’utilizzatore di specificare tutte le callback necessarie, con la garanzia che verranno eseguite soltanto quando i dati saranno disponibili. Ciò significa separare i ruoli in modo corretto: la libreria decide quando e come eseguire la callback, mentre l’utilizzatore si occupa di implementarla. Come sempre, il modo migliore di chiarirsi le idee è quello di copiare il codice qui sopra e fare qualche prova in prima persona. Una volta che avremo compreso i vantaggi di questo approccio, dovrebbe essere abbastanza semplice replicare il pattern in qualsiasi contesto.