Un approccio pratico al framework

Da sviluppatori, di solito vogliamo scegliere la tecnologia più appropriata per ciascuno dei nostri progetti al fine di migliorare il modo in cui scriviamo e organizziamo il codice.

L’obiettivo principale di questo articolo è quello di dare uno sguardo alle caratteristiche principali di Vue.js, un framework JavaScript progressivo, che ci consente di sviluppare rapidamente Single Page Application facilmente gestibili durante l’utilizzo dei suoi componenti e delle funzionalità reattive, come come interfacce reattive e data binding.

Cos’è Vue.js?

Vue.js è un framework JavaScript open source creato da Evan You che ci consente di creare interfacce utente. La principale caratteristica di questo framework è…


and the neverending challenge of JavaScript runtimes

Ryan Dahl, the creator of Node.js, has spent the last few years working on Deno, the new Javascript runtime that, according to Ryan himself, should solve all the problems that plague Node.js. Don’t get me wrong, Node.js is a great runtime, mainly thanks to the huge userland modules and the use of JavaScript; however Dahl himself admitted that he did not think about some fundamental aspects such as security, modules and dependencies, just to name a few. It is to be said in defense of Ryan, who in his time would never have imagined that the platform would grow so…


Piccoli consigli per gli sviluppatori che vogliono migliorare sè stessi e incrementare la propria motivazione

Credits Usplash Nathan Dumlao

Scrivere codice è come la poesia: è una forma d’arte

Lavorare come sviluppatore è bello ed emozionante, ma anche estremamente complicato e pericoloso, soprattutto quando hai a che fare con gli errori! Un semplicissimo errore nel codice può costare anche milioni di danni e, in determinati scenari, può causare la morte delle persone.

Essere motivati, soprattutto in questo periodo in cui il Covid-19 ci sta mettendo a dura prova, dovrebbe essere la massima priorità per uno sviluppatore. Questo lavoro, in potenza, è bellissimo perché richiede la capacità di lavorare in team. Questo lavoro è gratificante, soprattutto quando ognuno ha la…


Costruiamo un’app con i micro-frontends ed i Moduli Federati

In questo articolo daremo uno sguardo pratico alla progettazione dell’interfaccia utente, utilizzando i micro-frontends, del progetto descritto nell’articolo precedente, nel quale ho creato una semplice API per un’applicazione di ticketing in Node.js.

Prima di iniziare ad addentrarmi nello sviluppo vero è proprio, mi sono fermato a ragionare su alcuni fattori:

Il primo è stato sicuramente quello di capire quali dovevano comporre interfaccia. Il modo migliore per farlo è stato quello di dare uno sguardo allo schema dei microservizi:

Dando uno sguardo veloce allo schema, mi sono subito reso conto di dover creare diverse sezioni:

  • Una sezione esterna all’applicazione in cui…


I micro-frontends, in teoria

Photo by Xavi Cabrera on Unsplash

Da sviluppatore ho lavorato su molti progetti software negli ultimi anni. Una delle cose più belle è quando su un progetto appena iniziato ci lavorano poche persone. È bello perché tutti hanno una panoramica completa delle funzionalità e queste vengono sviluppate anche rapidamente. Discutere dei problemi che hai al daily meeting è semplice e veloce! Puoi farlo addirittura mentre sei alla macchinetta del caffè!

Questa condizione idilliaca cambia quando l’ambito del progetto e le dimensioni del team aumentano. Improvvisamente i membri del team non sono più a conoscenza di tutti i limiti del software. Modificare una funzionalità potrebbe avere degli…


Un nuovo modo per approcciare ai micro-frontends?

I Moduli federati di Webpack 5 ci offrono un modo completamente nuovo per condividere codice in fase di esecuzione tra diverse applicazioni. Per capirne correttamente il funzionamento facciamo un esempio:

Immaginiamo di avere un CMS dove vengono inseriti articoli ed un Sito Web che li mostra consentendone l’acquisto. Il codice sorgente del CMS e del Sito Web sono completamente separati e vengono sviluppati da due team distinti. Il CMS, inoltre, possiede una funzionalità di anteprima del prodotto prima che venga pubblicato e reso disponibile al cliente. …


e la sfida infinita dei runtime JavaScript

Ryan Dahl, il creatore di Node.js, ha trascorso gli ultimi anni a lavorare su Deno, il nuovo runtime Javascript che, a detta dello stesso Ryan, dovrebbe risolvere tutti i problemi che affliggono Node.js.

Non fraintendetemi, Node.js è un ottimo runtime, principalmente grazie all’enorme ecosistema di moduli e all’utilizzo di JavaScript; tuttavia lo stesso Dahl ha ammesso di non aver pensato ad alcuni aspetti fondamentali come la sicurezza, i moduli e le dipendenze così solo per citarne alcune.

C’è da dire in difesa di Ryan, che a suo tempo non si sarebbe mai immaginato che la piattaforma sarebbe cresciuta così tanto…


Speakabeet: la rubrica in cui parliamo dei massimi sistemi del mondo digitale, del flusso delle maree di caffè e della rotazione giornaliera della sedia del Programmatore sul proprio asse. #Coding #Design #DigitalLife

Molto spesso è necessario che le API Restful convalidino i dati delle richieste in ingresso. In sostanza parliamo della convalida di oggetti JSON, utili a garantire la presenza o meno di proprietà obbligatorie ed il rispetto di eventuali formati (numero, stringa, email etc.). Queste convalide solitamente vengono eseguite nel contesto JSON Schema.

Cos’è un JSON?

JSON (JavaScript Object Notation) è il formato di dati più utilizzato per lo scambio di dati sul Web. Questo scambio di dati può avvenire tra due applicazioni in posizioni geografiche diverse o in esecuzione all’interno della stessa macchina. …


I microservizi, in pratica

In questa seconda parte dell’articolo vedremo come realizzare un’applicazione di ticketing molto semplice utilizzando l’approccio a microservizi, Node.js (utilizzeremo il framework fastify) e Docker. Nello specifico l’applicazione avrà i seguenti microservizi:

  • auth: microservizio che si occuperà della gestione dell’autenticazione e della registrazione degli utenti.
  • users: microservizio che si occuperà della gestione degli utenti da parte di un amministratore di sistema.
  • tickets: microservizio che si occuperà della gestione dei ticket.

L’accesso ai microservizi appena descritti avverrà attraverso un’API gateway. In pratica alla fine di questo articolo avremo descritto il seguente schema architetturale:


I microservizi, in teoria

La tendenza naturale per le nuove società high-tech come Amazon, Netflix, DAZN o Spotify etc. rappresenta la costruzione del loro software utilizzando l’approccio micro, che rappresenta lo scenario ideale: i microservizi ed i microfrontends consentono di ampliare, o modificare, i loro prodotti con un effort, molto spesso, minimo.

Questo è solo il primo di una serie di articoli che intende trattare non solo teoricamente ma anche praticamente, alcuni stili architetturali utilizzati da queste aziende al fine di comprenderne i pro ed, ovviamente, i contro.

In questo primo articolo affronteremo, solo teoricamente, il tema dei microservizi. Quindi iniziamo!

Tutto ha inizio dai monoliti

Capita spesso che…

Davide D'Antonio

👨‍🎓Degree in computer science 💑 Married with Milena 🤓 Huge Nerd! 💻 Code lover 👨🏻‍💻 Fullstack developer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store