Beste antwoord
Hoewel het volgende geen perfecte weergave is van de betreffende systeemarchitectuur, en ondanks het bestaan van andere architecturen , Heb ik in het verleden het volgende diagram gebruikt om de typische lagen van de architectuur van een webapplicatie uit te leggen.
Deze architectuur ondersteunt MVC, die ik hieronder definieer volgens een oude dia van een webapplicatietraining die ik vroeger deed:
Waar de gelaagdheid van de architectuur substantieel overeenkomt met MVC als volgt:
Hoewel de dias en dergelijke die in dit antwoord worden gebruikt betrekking hebben op op Java gebaseerde webapplicaties, zijn de concepten algemeen.
Een meer recente architectuur is het gebruik van microservices waarbij de architec van een applicatie tuur is als volgt onderverdeeld in een reeks services:
Waar elke service een beperkte, gerichte reeks verantwoordelijkheden heeft , en worden onafhankelijk weergegeven in de vorm van op afstand toegankelijke APIs, bijv REST, verbruikt met behulp van protocollen zoals HTTP.
Een online winkeldienst kan afzonderlijke microservices hebben voor gebruikersaccounts, productcatalogus, het bijhouden van het winkelwagentje en het verwerken van bestellingen.
The Spring Boot-framework is ontworpen voor dit type implementatie.
Antwoord
U kunt overwegen MVC – Model – view – controller ( MVC ) is een van de meest gebruikte softwarearchitectuurraamwerken voor het ontwikkelen van gebruikersinterfaces die een applicatie opsplitst in drie onderling verbonden delen (model / weergave en controller). Dit wordt gedaan om interne representaties van informatie te scheiden van de manieren waarop informatie wordt gepresenteerd aan en geaccepteerd door de gebruiker.
De MVC-architectuur ontkoppelt deze hoofdcomponenten, waardoor efficiënt codehergebruik en parallelle ontwikkeling mogelijk is met behulp van het concept van scheiding van zorgen die geschikt is voor zowel web- als desktopapplicaties.
Bijvoorbeeld: JHispter is MVC-framework (samen met REST API) voor Webapplicaties, terwijl de meest populaire framework Spring ook tot MVC behoren voor alle soorten applicaties.
In UML kunt u een reeks gebruiken diagram om uw MVC-softwarearchitectuur weer te geven. (Bron: Visual Paradigm – MVC Framework – Visual Paradigm Community Circle )
- Entiteiten zijn objecten die systeemgegevens vertegenwoordigen: klant, product, transactie, winkelwagentje, enz.
- Grenzen zijn objecten die communiceren met systeemactoren: UserInterface, DataBaseGateway, ServerProxy, etc.
- Controls zijn objecten die bemiddelen tussen grenzen en entiteiten.
Ze orkestreren de uitvoering van commandos afkomstig van de grens door interactie met entiteit- en grensobjecten. Besturingselementen komen vaak overeen met use cases en worden vaak weergegeven door een sequentiediagram.
U kunt stereotypen gebruiken voor de levenslijn in het MVC-sequentiediagram om visueel duidelijk te maken welk type objecten u gebruikt in de MVC
MVC-sequentiediagram maken met gratis UML-tool
Meer informatie over UML-diagrammen
Meer informatie over volgordediagrammen