Definizione di un sistema a 3 livelli

8

Le persone spesso affermano di stare seguendo un'architettura a tre livelli (o n-tier), e talvolta affermano di passare a un modello di dominio. Ma davvero non ho mai capito cosa sia questa mitica 'architettura a 3 livelli'. Sembra non avere una definizione formale. Considerando che ci sono numerosi riferimenti ed esempi che spiegano e dimostrano il modello del modello di dominio, qualsiasi riferimento al livello 3 suggerisce semplicemente di separare il codice in UI, Business Logic e Data Access Layer. E questo è tutto ciò che sembrano dire.

Ciò che trovo particolarmente strano è che, per me, il modello di dominio è la perfetta incarnazione di questo paradigma a tre livelli. l'ORM e i file di mapping sono il livello di accesso ai dati, il dominio è la logica aziendale e l'interfaccia utente è, beh, l'interfaccia utente. Quindi perché le persone parlano come se fosse qualcosa di nuovo e diverso, e qualcosa a cui dovrebbero passare?

Prima di vedere le persone che implementavano il modello di dominio, la maggior parte delle applicazioni erano interfacce utente che accedono alle stored procedure con la divisione logica nell'interfaccia utente e negli SP. A volte c'erano alcuni assembly chiamati "UI", "BLL" e "DLL", ma di solito questi erano solo dei mediatori tra le UI e gli SP, lasciando più spazio per la logica da distribuire in modo casuale.

Quindi cos'è questa mitica architettura "a tre livelli"? Esiste davvero? e se sì, dove sono alcuni esempi di esso implementato bene?

    
posta Paul T Davies 16.10.2011 - 21:02
fonte

1 risposta

9

La definizione di architettura a 3 livelli è un caso speciale di architettura a più livelli . In un'architettura n-tier, ci sono n componenti e ognuno interagisce solo con il componente immediatamente "sopra" e "sotto". Un'architettura a tre livelli ha tre di questi componenti.

In genere, un'architettura a tre livelli è costituita da un livello di interazione dell'utente, il livello delle regole aziendali e il livello dei servizi di dati (inclusi i database). Il livello di interazione dell'utente invia solo richieste al livello delle regole aziendali, che recupera i dati dai vari servizi dati, li elabora e quindi li restituisce all'utente attraverso il livello di interazione dell'utente.

L'architettura a più livelli è un esempio di un modello architettonico (o di uno stile architettonico). Definisce semplicemente alcuni vincoli sull'architettura del sistema. Di per sé, non è una visione completa dell'architettura del sistema. Sebbene sia sicuro che esistano sistemi che implementano qualcosa come un'architettura a tre livelli, è solo uno schema che ha lo scopo di impostare una discussione per la progettazione e l'implementazione aggiuntive di un sistema.

    
risposta data 16.10.2011 - 21:19
fonte

Leggi altre domande sui tag