Architektonický vzor - Architectural pattern
An architektonický vzor je obecné, opakovaně použitelné řešení běžně se vyskytujícího problému v systému Windows softwarová architektura v daném kontextu.[1] Architektonické vzory řeší různé problémy v softwarové inženýrství, jako počítačový hardware omezení výkonu, vysoká dostupnost a minimalizace a obchodní riziko. V rámci byly implementovány některé architektonické vzory softwarové rámce.
Používání slova „vzor“ v softwarovém průmyslu bylo ovlivněno podobnými pojmy vyjádřenými tradičně architektura, jako Christopher Alexander je Vzorový jazyk (1977), který pojednával o praxi, pokud jde o založení a vzor lexikon, což přimělo praktiky informatiky k úvahám o vlastní designové lexikonu.
Využití tohoto metafora v rámci profese softwarového inženýrství se staly samozřejmostí po zveřejnění Designové vzory (1994) Erich Gamma, Richard Helm, Ralph Johnson, a John Vlissides - nyní běžně známý jako „Gang čtyř“ - shodný s počátky veřejnosti Internet, označující nástup komplexních softwarových systémů „pojídajících svět“[2] a odpovídající potřeba kodifikovat rychle se rozvíjející svět vývoje softwaru na nejhlubší možné úrovni a přitom zůstat flexibilní a adaptivní.
Architektonické vzory jsou podobné vzory návrhu softwaru ale mají širší rozsah.
Definice
I když architektonický vzor přináší obraz systému, není to architektura. Architektonický vzor je koncept, který řeší a vymezuje některé základní soudržné prvky softwarové architektury. Nespočet různých architektur může implementovat stejný vzor a sdílet související charakteristiky. Vzory jsou často definovány jako „přísně popsané a běžně dostupné“.[3][4]
Architektonický styl
V návaznosti na tradiční stavební architekturu, 'software architektonický styl „je specifický způsob konstrukce, který se vyznačuje vlastnostmi, díky nimž je pozoruhodný.
Architektonický styl definuje: rodinu systémů, pokud jde o vzor strukturální organizace; slovník komponent a konektorů s omezeními, jak je lze kombinovat.[5]
Architektonický styl je pojmenovaná sbírka rozhodnutí architektonického návrhu, která (1) jsou použitelná v daném kontextu vývoje, (2) omezují rozhodnutí architektonického návrhu, která jsou specifická pro konkrétní systém v tomto kontextu, a (3) vyvolávají prospěšné vlastnosti v každém výsledný systém.[1]
Někteří považují architektonické vzory a architektonické styly za stejné,[6] některé považují styly za specializaci vzorů. Společné mají vzory i styly, které architekti používají, „poskytují společný jazyk“[6] nebo „slovník“[5] pomocí kterých lze popsat třídy systémů.
Hlavní rozdíl spočívá v tom, že na vzor lze nahlížet jako na řešení problému, zatímco styl je obecnější a pro jeho vzhled nevyžaduje řešení problému.
Příklady
Zde je seznam vzorů architektury a odpovídající vzory návrhu softwaru a vzory řešení.
Oblast subdomény | Architektura vzor | Softwarové návrhové vzory | Vzory řešení | Související vzory |
---|---|---|---|---|
Integrace dat /SOA |
|
| ||
| ||||
Datová architektura |
|
| ||
Analytics a obchodní inteligence |
|
|
|
|
Správa kmenových dat |
|
|
| |
Datové modelování |
| |||
Umělá inteligence |
|
Několik dalších příkladů architektonických vzorů:
- Systém tabule
- Makléřský vzor
- Architektura založená na událostech
- Implicitní vyvolání
- Vrstvy
- Šestihranná architektura
- Mikroslužby
- Odpovídající doména akce, Model – pohled – řadič, Ovládání abstrakce prezentace, Moderátor pohledu na model, a Model-view-viewmodel
- Entita - komponenta - systém
- Hranice entity-kontroly
- Vícevrstvá architektura (často třívrstvá nebo n-tier)
- Nahé předměty
- Provozní úložiště dat (ODS)
- Peer-to-peer
- Architektura potrubí a filtrů
- Architektura orientovaná na služby
- Vesmírná architektura
- Distribuovaná hash tabulka
Viz také
- Seznam stylů a vzorů softwarové architektury
- Procesní služba zasílání zpráv
- Enterprise architektura
- Běžné vrstvy v logické architektuře informačního systému
Reference
- ^ A b R. N. Taylor, N. Medvidović a E. M. Dashofy, Softwarová architektura: Základy, teorie a praxe. Wiley, 2009.
- ^ Andreessen, Marc (20. srpna 2011). „Proč software žere svět“. The Wall Street Journal. Citováno 25. dubna 2020.
- ^ Chang, Chih-Hung; Lu, Chih-Wei; Lin, Chih-Hao; Yang, Ming-Feng; Tsai, Ching-Fu (červen 2008). „Zkušenosti s aplikací vzorového softwarového rámce ke zlepšení kvality vývoje softwaru: 4. Návrh a implementace OS2F“. Journal of Software Engineering Studies, sv. 2, č. 6. Třetí tchajwanská konference o softwarovém inženýrství (TCSE07). 185–194. Archivovány od originál dne 22. 9. 2011. Citováno 2012-05-16.
Navíc jsou vzory často definovány jako něco „přísně popsaného a běžně dostupného“. Například vrstvená architektura je styl volání a návratu, když definuje celkový styl pro interakci.
- ^ „Architectural Patterns: Definition“. AAHN INFOTECH (Indie) PVT. LTD. Archivovány od originál dne 23.06.2012. Citováno 2012-05-16.
I když architektonický vzor poskytuje obraz systému, nejedná se o architekturu jako takovou. Architektonický vzor je spíše koncept, který řeší a vymezuje některé základní soudržné prvky softwarové architektury. Nespočet různých architektur může implementovat stejný vzor a tím sdílet související charakteristiky. Navíc jsou vzory často definovány jako něco „přísně popsaného a běžně dostupného“.
- ^ A b M. Shaw a D. Garlan, Softwarová architektura: pohledy na rozvíjející se disciplínu. Prentice Hall, 1996.
- ^ A b „Kapitola 3: Architektonické vzory a styly“.
Bibliografie
- Avgeriou, Paříž; Uwe Zdun (2005). Msgstr "Znovu navštívené architektonické vzory: vzorový jazyk". 10. evropská konference o vzorových jazycích programů (EuroPlop 2005), Irsee, Německo, červenec.
- Buschmann F .; Meunier R .; Rohnert H .; Sommerlad P .; Stal M. (1996). Softwarová architektura orientovaná na vzory: systém vzorů. John Wiley & Sons.
- Bass L .; Clements P .; Kazman R. (2005). Softwarová architektura v praxi: Druhé vydání. Addison-Wesley.