Dati, business logic e vista completamente separati


Prendendo spunto dalla realizzazione di un sito web di e-commerce con Prestashop, è interessante esaminare l'architettura di un e-commerce strutturato in modo da capirne le potenzialità e soprattuto la scalabilità. Direi che quest'ultimo punto è molto importante per qualsiasi cliente che voglia intraprendere un'avventura di e-business.

Ormai la classica architettura client/server con i moduli separati dove allocare i dati, il core logico dell'applicazione e la sua visualizzazione all'utenza, è la più diffusa ed in particolare la 3-tier (3 livelli) è la più usata.

Ogni struttura con un midleware, la definisco a livello di ingegneria del software, molto seria e performante. Quindi un sito di e-commerce che gestisce le richieste degli utenti sul database, attraverso un middleware, è sicuramente evoluto, scalabile e stabilmente strutturato. In poche parole consigliato.

Fra le architetture multi livello (o strato, a seconda che parliamo di fisica o logica, e non sono sinonimi) mi piace sottolineare la differenza fra la diffusa MVC e la 3-tier di Prestashop. Non sono la stessa cosa. In quest'ultima architettura e-commerce il client non comunica mai coi dati, ma esiste sempre un middleware di interscambio, quindi risulta tutto un pò più imbalsamato e meno friendly. La MVC è triangolare, più flessibile e meno integralista, eppure è più vecchia di oltre 10 anni (1980, circa).

Saper realizzare buoni siti di e-commerce, passa anche da queste disquisizioni di ingegneria del software.