Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

mgr-szz:in-pos:6-pos [2019/06/10 09:23]
lachmanfrantisek návrhové vzory
mgr-szz:in-pos:6-pos [2020/04/12 16:56]
Řádek 1: Řádek 1:
-====== IN-POS 6. Objektové metody návrhu systémů ====== 
  
-===== Zadání ===== 
- 
-  * Návrhové vzory. 
-  * Softwarové architektury. 
-  * Rozhraní komponent, signatury a omezující podmínky služeb, OCL. 
-  * Komponentové systémy a modely, kvalitativní aspekty služeb (QoS). 
-  * Objektové metody vývoje softwaru, RUP. 
- 
-  * PA103 
- 
-===== Vypracování ===== 
- 
-==== Návrhové vzory ==== 
- 
- 
-<box 90% red|vzor (pattern)>​ 
-Obecné řešení pro opakující se problém, tak aby jej bylo možné aplikovat v různém kontextu. 
-</​box>​ 
- 
- 
-=== Analytické vzory === 
- 
-Existují i vzory využitelné při fázi analýzy. Seznam kategorií od M. Fowlera: 
- 
-  * **Accountability** 
-    * Party 
-    * Organization Hierarchies 
-    * Organization Structure 
-    * Accountability 
-    * Organization Structure 
-    * Accountability Knowledge Level 
-    * Party Type Generalization 
-    * Hierarchic Accountability 
-    * Operating Scopes 
-    * Post 
-  * **Observations and Measurements** 
-    * Quantity 
-    * Conversion Ratio 
-    * Compound Units 
-    * Measurement 
-    * Observation 
-    * Subtyping Observation Concepts 
-    * Protocol 
-  * **Observations for Corporate Finance** 
-    * Enterprise Segment 
-    * Measurement Protocol 
-    * Range 
-    * Phenomenon with Range 
-  * **Referring to Objects** 
-    * Name 
-    * Identification Scheme 
-    * Object Merge 
-    * Object Equivalence 
-  * **Inventory and Accounting** 
-  * **Planning** 
-  * **Trading** 
-  * **Derivative Contracts** 
-  * **Trading Packages** 
- 
- 
-=== Návrhové vzory dle GoF === 
- 
-Podle knihy "​Design Patterns: Elements of Reusable Object Oriented Software (1995)"​ (Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides). 
- 
-  * Návrhové vzory 
-    * Popis šablony, kterou lze použít pro řešení problému v různých situacích. 
-    * Popisují úspěšné návrhy a softwarovou architekturu. 
-    * Popisují statickou i dynamickou strukturu a komunikaci mezi objekty. 
-    * Vzor je pouze "​meta-model",​ je potřeba jej instanciovat. 
- 
-  * Jednotlivé vzory jsou pěkně vysvětlené zde: https://​refactoring.guru/​design-patterns/​ 
- 
-3 kategorie: 
- 
-  * **Creational patterns** 
-    * inicializace a konfigurace objektů 
-    * lze skrýt specifika vytváření objektu 
-    * lze oddálit určení přesné třídy při instanciaci 
- 
-<box 90% blue|Abstract Factory> 
-Vytváření skupiny souvisejících objektů. 
-</​box>​ 
- 
-<box 90% blue|Builder>​ 
-Postupné vytváření komplexních objektů. 
-</​box>​ 
- 
-<box 90% blue|Factory Method> 
-Virtuální konstruktor. 
-</​box>​ 
- 
-<box 90% blue|Prototype>​ 
-Instanciace objektů přes klonování "​prototypu"​. 
-</​box>​ 
- 
-<box 90% blue|Singleton>​ 
-Tvorba maximálně jedné instance pro celý systém. 
-</​box>​ 
- 
-  * **Structural patterns** 
-    * řeší dělení rozhraní a implementace 
-    * kompozice objektů 
- 
-<box 90% blue|Adapter>​ 
-Překlad rozhraní. 
-</​box>​ 
- 
-<box 90% blue|Bridge>​ 
-Abstrakce pro spojení více implementací. 
-</​box>​ 
- 
- 
-<box 90% blue|Composite>​ 
-Tvorba rekurzivní hierarchie objektů. 
-</​box>​ 
- 
-<box 90% blue|Decorator>​ 
-Transparentní rozšíření objektů. 
-</​box>​ 
- 
-<box 90% blue|Facade>​ 
-Zjednodušení a agregace rozhraní komplexního subsystému. 
-</​box>​ 
- 
-<box 90% blue|Flaywight>​ 
-Sdílení mnoha objektů. 
-</​box>​ 
- 
-<box 90% blue|Proxy>​ 
-Aproximace objektů. 
-</​box>​ 
- 
-  * **Behavioral patterns** 
-    * řeší dynamické interakce mezi třídami/​objekty 
-    * dělba zodpovědnosti 
- 
- 
-<box 90% blue|Chain of Responsibility>​ 
-Delegování žádosti na zodpovědného poskytovatele. 
-</​box>​ 
- 
-<box 90% blue|Command>​ 
-Realizace žádostí/​příkazů. 
-</​box>​ 
- 
-<box 90% blue|Interpreter>​ 
-Interpretr jazyka pro malé gramatiky. 
-</​box>​ 
- 
-<box 90% blue|Mediator>​ 
-Koordinace komunikace mezi zúčastněnými. 
-</​box>​ 
- 
-<box 90% blue|Memento>​ 
-Uchování a obnovení stavu. 
-</​box>​ 
- 
-<box 90% blue|Observer>​ 
-Update několika objektů při změně "​sledovaného"​. 
-</​box>​ 
- 
-<box 90% blue|State>​ 
-Objekty, jejichž chování závisí na stavu. 
-</​box>​ 
- 
-<box 90% blue|Strategy>​ 
-Abstrakce pro volbu jednoho z více algoritmů. 
-</​box>​ 
- 
-<box 90% blue|Template Method> 
-Algoritmus s několika kroky implementovanými v podtřídě. 
-</​box>​ 
- 
-<box 90% blue|Visitor>​ 
-Operace aplikované na různorodé struktury objektů. 
-</​box>​ 
- 
- 
- 
- 
- 
- 
-==== Softwarové architektury ==== 
- 
-==== Rozhraní komponent, signatury a omezující podmínky služeb, OCL ==== 
- 
-==== Komponentové systémy a modely, kvalitativní aspekty služeb (QoS) ==== 
- 
-==== Objektové metody vývoje softwaru, RUP ==== 
- 
-===== Zdroje ===== 
- 
-  * slidy pa103 (jaro 2019) 
mgr-szz/in-pos/6-pos.txt · Poslední úprava: 2020/04/12 16:56 (upraveno mimo DokuWiki)
Nahoru
CC Attribution-Noncommercial-Share Alike 4.0 International
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0