Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ing. Jaroslav Jakubík jakubik@fiit.stuba.sk www.fiit.stuba.sk\~jakubik NÁVRHOVÉ VZORY Ing. Jaroslav Jakubík jakubik@fiit.stuba.sk www.fiit.stuba.sk\~jakubik.

Similar presentations


Presentation on theme: "Ing. Jaroslav Jakubík jakubik@fiit.stuba.sk www.fiit.stuba.sk\~jakubik NÁVRHOVÉ VZORY Ing. Jaroslav Jakubík jakubik@fiit.stuba.sk www.fiit.stuba.sk\~jakubik."— Presentation transcript:

1 Ing. Jaroslav Jakubík jakubik@fiit.stuba.sk www.fiit.stuba.sk\~jakubik
NÁVRHOVÉ VZORY Ing. Jaroslav Jakubík

2 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
AGENDA (1/3) história a vznik vzorov osobnosti v oblasti vzorov analytické, dátové, návrhové vzory návrhové vzory a ich rozdelenie creational patterns abstract factory builder singleton Ing. Jaroslav Jakubík, FIIT STU Bratislava,

3 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
AGENDA (2/3) structural patterns composite facade behavioral patterns chain of responsibility state j2ee core patterns data access object transfer object Ing. Jaroslav Jakubík, FIIT STU Bratislava,

4 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
AGENDA (3/3) business delegate software reengineering process s podporou Rational Rose data modeling reengineering OO reengineering Ing. Jaroslav Jakubík, FIIT STU Bratislava,

5 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
HISTÓRIA VZOROV Ch. Alexander A Pattern Language, Towns, Buildings, Construction. 1977 J. Coplien, D. Schmidt Pattern Languages of Program Design. 1995 E. Gamma, R. Helm, R. Johnson, J. Vlissides Design patterns. 1995 Ing. Jaroslav Jakubík, FIIT STU Bratislava,

6 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
OSOBNOSTI (1/2) Ch. Alexander narodený vo Viedni 1936 na Cambridge University študoval Matematiku a Architektúru PhD. získal v odbore architektúry na Harvard University od 1963 bol profesorom architektúry na University of California at Berkeley riaditeľ Center for Environmental Structure člen Swedish Royal Academy od 1996 členom American Academy of Arts and Science Prince of Wales’s Institute of Architecture Ing. Jaroslav Jakubík, FIIT STU Bratislava,

7 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
OSOBNOSTI (2/2) E. Gamma technický riaditeľ Object Technology International’s (OTI) Software Technology v Zurichu jedným z architektov VisualAge MicroEdition IDE hlavný návrhár JUnit a Eclipse Ing. Jaroslav Jakubík, FIIT STU Bratislava,

8 VZORY VO VŠETKÝCH FÁZACH
analytické vzory dátové vzory architektonické vzory Layers, Pipes & Filters návrhové vzory Composite, Abstract Factory implementačné vzory C++ templates Ing. Jaroslav Jakubík, FIIT STU Bratislava,

9 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
NÁVRHOVÉ VZORY všeobecné vzory Creational patterns Structural patterns Behavioral patterns doménovo špecifické vzory inštancie všeobecných vzorov riešia obmedzenú skupinu problémov môžu byť podmnožinou všeobecných vzorov vzory typické pre konkrétny jazyk J2EE core patterns Ing. Jaroslav Jakubík, FIIT STU Bratislava,

10 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
CREATIONAL PATTERNS zabstraktňujú proces tvorby inštancií pomáhajú vytvárať systém nezávislí na spôsobu vytvárania, skladania a reprezentácie jeho objektov triedne tvorivé vzory dedičnosť pre zmenu triedy vytvorenej inštancie objektové tvorivé vzory delegujú tvorbu inštancií na iný objekt Ing. Jaroslav Jakubík, FIIT STU Bratislava,

11 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
ABSTRACT FACTORY lisovanie tabuľového plechu v automobilkách rovnaký stroj je používaný pre vytváranie rôznych častí automobilu konfigurácia je realizovaná zmenou valcov a rezníc v lisovacom stroji Ing. Jaroslav Jakubík, FIIT STU Bratislava,

12 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
AF - kontext účel poskytuje rozhranie pre vytváranie rodín príbuzných tried bez nutnosti špecifikácie konkrétnych tried necháva rozhodnutie o konkrétnych triedach až na run time použitie potrebujeme abstrahovať od detailov implementácie potrebujeme viac rodín produktov Ing. Jaroslav Jakubík, FIIT STU Bratislava,

13 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
AF - štruktúra Ing. Jaroslav Jakubík, FIIT STU Bratislava,

14 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
AF - prístup Simple Abstract Factory AF definuje Factory metódy pre vytvorenie konkrétnych podtried voľba konkrétnej podtriedy je definovaná volaním konkrétnej Factory metódy Abstract Factory AF definuje všeobecný protokol Factory metód konkrétne podtriedy implementujú daný protokol Ing. Jaroslav Jakubík, FIIT STU Bratislava,

15 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
AF - charakteristiky Abstract Factory je Object Maker typicky vytvára viac ako jediný typ objektu objekt je známy klientovi len cez rozhranie izoluje konkrétne triedy umožňuje ľahkú výmenu celých rodín registrovaných objektov náročné pridávanie produktov a rodín Ing. Jaroslav Jakubík, FIIT STU Bratislava,

16 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
BUILDER fast food reštaurácie ponúkajú children’s meal zamestnanec podľa objednávky zabalí hlavné jedlo, vedľajšie jedlo, hračku a pridá nápoj Ing. Jaroslav Jakubík, FIIT STU Bratislava,

17 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
B - kontext účel oddeľuje konštrukciu komplexných objektov od ich vnútornej reprezentácie rovnaký konštrukčný proces môžeme použiť na vytvorenie rôznych objektov použitie potrebujeme vytvoriť elementy komplexnej agregácie v nezávislosti od rôznych vstupov, výsledný objekt vytvárame rovnakým spôsobom Ing. Jaroslav Jakubík, FIIT STU Bratislava,

18 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
B - štruktúra Ing. Jaroslav Jakubík, FIIT STU Bratislava,

19 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
B - charakteristiky umožňuje klientovi meniť internú reprezentáciu produktu odstraňuje závislosti medzi konštrukciou a na výsledku participujúcimi časťami podporuje modularitu izolovaním kódu konštrukcie a reprezentácie dáva vývojárovi plnú kontrolu nad konštrukčným procesom Ing. Jaroslav Jakubík, FIIT STU Bratislava,

20 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
SINGLETON úrad prezidenta Slovenskej republiky prezident je v danom volebnom období iba jeden v nezávislosti od konkrétnej osoby označenie Prezident Slovenskej republiky je globálny prístupový bod identifikujúci aktuálnu osobu tohto úradu Ing. Jaroslav Jakubík, FIIT STU Bratislava,

21 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
S - kontext účel kontroluje počet vytvorených inštancií sprístupňuje vytvorenú inštanciu na požiadanie použitie systém vyžaduje vytvorenie jedinej inštancie konkrétnej triedy systém vyžaduje globálny prístupový bod k tejto inštancií logovanie, prihlasovanie, komunikácia Ing. Jaroslav Jakubík, FIIT STU Bratislava,

22 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
S - štruktúra privátny konštruktor, ktorý môže byť volaný len z vnútra konkrétnej triedy statická metóda vracajúca inštanciu konkrétnej triedy statická metóda pri prvom pristúpení vytvorí použitím privátneho konštruktora inštanciu triedy pri ďalších prístupoch statická metód vráti vytvorenú inštanciu Ing. Jaroslav Jakubík, FIIT STU Bratislava,

23 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
S – charakteristiky riadený prístup k jedinej inštancií na rozdiel od globálnych premenných umožňuje pridať do statickej metódy doplňujúcu logiku modifikovaný Singleton umožňuje variabilný počet inštancií môže byť použitý ako nadstavba nad pooling manažment Ing. Jaroslav Jakubík, FIIT STU Bratislava,

24 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
STRUCTURAL PATTERNS skladanie objektov a vytváranie rozsiahlejších štruktúr triedne štrukturálne vzory využívajú dedičnosť výsledkom je trieda, ktorá kombinuje vlastnosti rodičovských tried objektové štrukturálne vzory spôsob skladby objektov z dôvodu podpory nových funkcií zmena skladby v run time Ing. Jaroslav Jakubík, FIIT STU Bratislava,

25 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
COMPOSITE štandardný aritmetický výraz je zložený z operand1 operátor operand2 na pozícií operand1 alebo operand2 môže byť ďalší aritmetický výraz týmto spôsobom vytvárame stromovú štruktúru Ing. Jaroslav Jakubík, FIIT STU Bratislava,

26 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
C - kontext účel skladá objekty do stromových štruktúr k vyjadreniu hierarchií typu časť – celok umožňuje pracovať s celkom rovnakým spôsobom ako s časťou použitie vyjadrenie objektových hierarchií časť – celok klient môže ignorovať rozdiel medzi celkom a časťou Ing. Jaroslav Jakubík, FIIT STU Bratislava,

27 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
C - štruktúra Ing. Jaroslav Jakubík, FIIT STU Bratislava,

28 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
C - prístup Safe Composite metódy pre pridávanie / odstraňovanie sú iba v AbstractComposite chyby sú identifikované už v čase kompilácie Transparent Composite metódy pre pridávanie / odstraňovanie sú definované v AbstractComponent problém čo s Component-ami, ktoré nemajú tieto možnosti podporovať Ing. Jaroslav Jakubík, FIIT STU Bratislava,

29 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
C - charakteristiky definuje triedne hierarchie obsahujúce primitívne a zložene objekty zjednodušuje klienta zjednodušuje pridávanie nových druhov komponentov môže návrh príliš zovšeobecniť Ing. Jaroslav Jakubík, FIIT STU Bratislava,

30 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
FACADE objednávanie cez hotline a katalóg zákazník zavolá na hotline slečna preberajúca objednávky vypĺňí potrebné dokumenty a týmto zákazníkovi sprístupní zložitý vnútorný systém firmy Ing. Jaroslav Jakubík, FIIT STU Bratislava,

31 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
F – kontext účel poskytuje unifikované rozhranie (sadu rozhraní) v subsystéme definuje rozhranie na vyššej úrovni pre uľahčenie práce so subsystémom použitie chceme poskytnúť jednoduché rozhranie k zložitému subsystému chceme subsystémy usporiadať do vrstiev chceme skryť zložité vzťahy a závislosti Ing. Jaroslav Jakubík, FIIT STU Bratislava,

32 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
F - štruktúra Ing. Jaroslav Jakubík, FIIT STU Bratislava,

33 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
F - charakteristiky znižuje počet objektov, s ktorými musí klient spolupracovať pri riešení komplexnejšej úlohy slabé spojenie medzi klientom a subsystémom (pri zmene jadra subsystému sa nemusí nutne zmeniť fasáda) explicitne nezabraňuje použitiu tried a objektov za fasádou pokiaľ je to nutné Ing. Jaroslav Jakubík, FIIT STU Bratislava,

34 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
BEHAVIOURAL PATTERNS zaoberajú sa algoritmami a rozdelením povinností medzi objekty opisujú tiež vzory komunikácie medzi objektmi triedne vzory chovania dedičnosť k rozdeleniu chovania do tried objektové vzory chovania využívajú objektovú skladbu Ing. Jaroslav Jakubík, FIIT STU Bratislava,

35 CHAIN OF RESPONSIBILITY
mechanický stroj pre rozpoznávanie minci na základe ich rozmerov mince prepadávajú dierami až pokiaľ nie sú spracované mincu spracuje prvá diera menšia ako minca O o . Ing. Jaroslav Jakubík, FIIT STU Bratislava,

36 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
CHoR - kontext účel vyhýba sa spojeniu odosielateľa a príjemca zreťazí objekty medzi odosielateľom a príjemcom, ktorý spracuje vyslanú žiadosť použitie žiadosť môže spracovať viac ako jediný objekt neurčujeme explicitne príjemcu skupina objektov, ktoré spracúvajú žiadosť je určená dynamicky Ing. Jaroslav Jakubík, FIIT STU Bratislava,

37 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
CHoR - štruktúra Ing. Jaroslav Jakubík, FIIT STU Bratislava,

38 CHoR - charakteristiky
oslobodzuje objekt od znalosti spracovateľa žiadosti typická implementácia v Smalltalk (pošleme akúkoľvek správu objektu, ak ju nevie spracovať ošetríme poslanie ďalej) nezaručený príjemca žiadosti o spracovanie Ing. Jaroslav Jakubík, FIIT STU Bratislava,

39 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
STATE výdajný automat v závislosti na zásobách, inkasovanej sumy, sumy v depozite sa automat nachádza v rôznych stavoch Ing. Jaroslav Jakubík, FIIT STU Bratislava,

40 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
S – kontext účel zmeniť chovanie objektu, keď sa zmení jeho vnútorný stav objekt zdanlivo mení svoju triedu použitie chovanie objektu závisí na jeho stave operácie obsahujú veľké z viac častí zložené if then else konštrukcie, ktoré závisia od stavu objektu stav objeku je reprezentovaný jednou alebo viacerými konštantami vymenovaného typu Ing. Jaroslav Jakubík, FIIT STU Bratislava,

41 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
S – štruktúra Ing. Jaroslav Jakubík, FIIT STU Bratislava,

42 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
S - charakteristiky oddeľuje chovanie pre rôzne stavy znižuje náklady na udržovateľnosť kódu lepšia štrukturalizácia kódu v porovnaní so switch resp. if then else konštrukciami vyjadruje explicitne prechod medzi stavmi zjednodušuje pridanie ďalšieho stavu (na rozdiel od modifikácie viacerých if then else a switch konštrukcií) Ing. Jaroslav Jakubík, FIIT STU Bratislava,

43 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE Core Patterns typicky používané v spojení s JAVA-ou vyvíjané, zverejňované a propagovane firmou SUN 15 vzorov Core J2EE Patterns: Best Practices and Design Strategies Ing. Jaroslav Jakubík, FIIT STU Bratislava,

44 J2EE – Data Access Object
prístup k údajom úložiska rôzne typy, rôzny výrobcovia, rôzne API prístup k úložiskám typu RDBMS, OODBMS, XML, LDAP alternatívne prístupy bean - managed persistence – využíva API konkrétneho úložiska, priamy prístup bean – managed persistence doplnená o kontainery pre realizáciu transakcií JDBC API a štandardné SQL Ing. Jaroslav Jakubík, FIIT STU Bratislava,

45 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – DAO riešenie riešenie v J2EE = DAO zovšeobecňuje a enkapsuluje všetky prístupy k zdroju dát manažuje pripojenie k zdroju dát, získanie, uloženie a zmenu dát zakrýva implementačné detaily zdroju dát pred klientom voľná zmena zdroju dát interface DAO nezávislý od zdroju dát Ing. Jaroslav Jakubík, FIIT STU Bratislava,

46 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – DAO štruktúra DAO predstavuje adaptér medzi BO a dátovým zdrojom Ing. Jaroslav Jakubík, FIIT STU Bratislava,

47 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – DAO prístupy Automatic DAO code generation 1:1:1 (Tabuľka : DAO : BO) nástroje tretej strany (hibernate, ...) grafické znázornenie mapovania, caching, query caching Factory for DAO s využitím Abstract Factory a Factory method časté zmeny dátového zdroja každý DAO je schopný pripojiť sa k zdroju a realizovať konkrétne operácie s dátami Ing. Jaroslav Jakubík, FIIT STU Bratislava,

48 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – DAO záver BO môže využívať zdroj dát bez nutnosti jeho poznania implementačné detaily ukryté v DAO výmena dátových zdrojov redukuje komplexnosť kódu v BO centralizácia práce s dátami do jedinej vrstvy pridáva ďalšiu vrstvu do architektúry Ing. Jaroslav Jakubík, FIIT STU Bratislava,

49 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – Transfer Object klientska aplikácia potrebuje vymieňať údaje s enteprise bean (EB) volanie metódy EB musí prechádzať cez všetky vrstvy siete aj keď sa jedná o jeden stroj, jednu JVM časté používanie takýchto metód môže znamenať značné spomalenie systému pre potrebný network overhead Ing. Jaroslav Jakubík, FIIT STU Bratislava,

50 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – TO dôvody každé volanie metódy je potenciálne volanie vzdialenej metódy so sieťovým oneskorením väčšia frekvencia čítania údajov ako zmeny údajov klienti vyžadujú aj jednoduché údaje viac krát časté čítanie údajov zvyšuje komunikáciu klient – server a zaťažuje sieť Ing. Jaroslav Jakubík, FIIT STU Bratislava,

51 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – TO riešenie alternatíva odstránenie sieťového oneskorenia s využitím priameho prístupu ak klient požiada EB o business dáta, EB vytvorí TO, naplní TO a pošle TO klientovi klient získava všetky hodnoty volaním jedinej metódy realizácia TO get na každý atribút public atribúty Ing. Jaroslav Jakubík, FIIT STU Bratislava,

52 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – TO štruktúra vytváranie TO je realizované On Demand Ing. Jaroslav Jakubík, FIIT STU Bratislava,

53 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – TO prístupy (1/2) Updateable Transfer Object TO umožňuje aj zmeniť stav obsahuje sadu set a get metód merge metóda pre zistenie, ktoré z atribútov sa premietnu do dátových objektov Multiple Transfer Object ak jeden BO vytvára niekoľko TO BO ako Session Bean komunikuje s viacerými BO a poskytuje ich služby BO ako Entity Bean poskytuje TO z viacerých zdrojov Ing. Jaroslav Jakubík, FIIT STU Bratislava,

54 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – TO prístupy (2/2) Entity Inherits TO BO implementovaný ako entity bean 1:1 (entity bean : TO) TO má prístup ku všetkým atribútom BO eliminuje duplikáciu kódu v BO a TO TO Factory rozširuje Entity Inherits TO o podporu viacerých TO ľahké udržiavanie, rozširovanie a znížená chybovosť Ing. Jaroslav Jakubík, FIIT STU Bratislava,

55 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – TO záver jednoduchšie BO (entity beans) väčšie množstvo prenesených dát na menší počet vzdialených volaní redukuje network trafic ??? niektoré z implementácií redukujú opakovanie kódu ak povolíme aj zmenu TO je potrebné riešiť viacnásobný prístup, transakcie a vzájomné vylučovanie Ing. Jaroslav Jakubík, FIIT STU Bratislava,

56 J2EE – Business Delegate
prezentačná vrstva potrebuje prístup k business službám rôzny klienti vyžadujú prístup k business službám business API sa môže meniť podľa vyvíjajúcich sa požiadaviek klienti môžu vyžadovať implementáciu cache Ing. Jaroslav Jakubík, FIIT STU Bratislava,

57 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – BD alternatíva prezentačná vrstva interaguje priamo s business službami odhaľuje implementáciu business služieb zraniteľné komponenty v prípade zmeny business služieb zahltenie siete pre častú komunikáciu prezentačnej vrstvy s API business služieb žiaden client-side caching Ing. Jaroslav Jakubík, FIIT STU Bratislava,

58 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – BD riešenie zredukujeme komunikáciu medzi vrstvami skryjeme implementačné detaily business vrstvy BD predstavuje klientsku abstrakciu business služieb BD oddeľuje prezentačnú vrstvu od implementačnej nestálosti business vrstvy BD zachytáva business exception a transformuje ich na gui exception Ing. Jaroslav Jakubík, FIIT STU Bratislava,

59 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – BD štruktúra BD môže pre lokalizáciu business služieb využívať LookupService Ing. Jaroslav Jakubík, FIIT STU Bratislava,

60 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – BD prístupy Delegate Proxy BD vyjadruje rozhranie, ktoré klientovi sprístupňuje podstatné metódy Business API Delegate Adapter optimalizovaný pre B2B (business to business) pre služby založené na J2EE Ing. Jaroslav Jakubík, FIIT STU Bratislava,

61 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
J2EE – BD záver redukuje spojenie medzi prezentačnou vrstvou a business vrstvou zvyšuje odolnosť voči zmenám prekladá Business Service Exceptions umožňuje implementáciu cache čím zvyšuje výkon pridáva do aplikácie ďalšiu vrstvu medzi klienta a službu čím zvyšuje komplexnosť a znižuje flexibilitu aplikácie Ing. Jaroslav Jakubík, FIIT STU Bratislava,

62 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
ZDROJE Návrh programu pomoci vzoru Core J2EE Patterns: Best Practices and Design Strategies Non sofware examples of Sofware Design Patterns. UML diagramy vytvorené v MS VISIO 2003 Ing. Jaroslav Jakubík, FIIT STU Bratislava,

63 Ing. Jaroslav Jakubík, FIIT STU Bratislava, jakubik@fiit.stuba.sk
Ďakujem za pozornosť Ing. Jaroslav Jakubík, FIIT STU Bratislava,


Download ppt "Ing. Jaroslav Jakubík jakubik@fiit.stuba.sk www.fiit.stuba.sk\~jakubik NÁVRHOVÉ VZORY Ing. Jaroslav Jakubík jakubik@fiit.stuba.sk www.fiit.stuba.sk\~jakubik."

Similar presentations


Ads by Google