Beste svaret
Selv om det følgende ikke er en perfekt representasjon av systemarkitekturen, og til tross for at det eksisterer andre arkitekturer , Jeg har brukt følgende diagram tidligere for å forklare de typiske lagene for arkitekturen til et webprogram.
Denne arkitekturen støtter MVC, som jeg definerer nedenfor i henhold til et gammelt lysbilde fra et kurs for webapplikasjoner jeg pleide å gjøre:
Hvor lagdelingen av arkitekturen vesentlig tilsvarer MVC som følger:
Selv om lysbildene og så videre som brukes i dette svaret gjelder Java-baserte webapplikasjoner, er konseptene generiske.
En mer nylig arkitektur er bruk av mikrotjenester der et applikasjons arkitek turen er delt inn i et sett med tjenester som følger:
Der hver tjeneste har et smalt, fokusert ansvarsoppsett , og blir uavhengig eksponert i form av eksternt tilgjengelige API-er, f.eks REST, forbrukes ved bruk av protokoller som HTTP.
En online shoppingtjeneste kan ha separate mikrotjenester for brukerkontoer, produktkatalog, vedlikehold av handlekurven og ordrebehandling.
Våren Boot framework er designet for denne typen implementering.
Svar
Du kan vurdere MVC – Model – view – controller ( MVC ) er et av de mest brukte rammene for programvarearkitektur for utvikling av brukergrensesnitt som deler en applikasjon i tre sammenkoblede deler (modell / visning og kontroller). Dette gjøres for å skille interne representasjoner av informasjon fra måtene informasjon blir presentert for og akseptert fra brukeren.
MVC-arkitekturen frakobler disse hovedkomponentene, noe som muliggjør effektiv gjenbruk av kode og parallell utvikling ved bruk av konseptet separasjon av bekymringer som er egnet for både web- og skrivebordsprogrammer.
For eksempel: JHispter er MVC-rammeverk (sammen med REST API) for Nettapplikasjoner, mens det mest populære rammeverket også tilhører MVC for alle slags applikasjoner.
I UML kan du bruke en sekvens diagram for å representere MVC-programvarearkitekturen. (Kilde: Visual Paradigm – MVC Framework – Visual Paradigm Community Circle )
- Enheter er objekter som representerer systemdata: kunde, produkt, transaksjon, handlevogn osv.
- grenser er objekter som grensesnitt med systemaktører: UserInterface, DataBaseGateway, ServerProxy, etc.
- Kontroller er objekter som formidler mellom grenser og enheter.
De orkestrerer utførelsen av kommandoer kommer fra grensen ved å samhandle med enhet og grenseobjekter. Kontroller tilsvarer ofte brukssituasjon og ofte representert med et sekvensdiagram.
Du kan bruke stereotyper for livlinjen i MVC-sekvensdiagrammet for å gjøre det klart visuelt hvilken type objekter du bruker i MVC
For å lage MVC-sekvensdiagram med gratis UML-verktøy
Forstå mer om UML-diagrammer
Lær mer om sekvensdiagrammer