Unit of Work vzor z P of EAA (Fowler) 1.

Slides:



Advertisements
Podobné prezentace
Systém ED Manager (EDM) pro práci s elektronickou dokumentací a systémem jednoho značení KKS PŘEMEK VESELÝ VLASTNÍ ED MANAGER SE SPOUŠTÍ NA ÚVODNÍ STRÁNCE.
Advertisements

© 2000 VEMA počítače a projektování spol. s r. o..
Regionální knihovní systém Clavius REKS
Ing. Jan Mittner MySQL Workbench 2. Základy práce s databází 3. Subversion 2.
FG Forrest, a.s. Jan Novotný iBatis SqlMaps.
Ing. Jan Mittner Rozšíření modelu 2. Vazba 1:n 3. Vazba m:n 2.
Databázové systémy Přednáška č. 3 Proces návrhu databáze.
Databázové systémy Přednáška č. 2 Proces návrhu databáze.
Přednáška č. 5 Proces návrhu databáze
ÚVOD DO CPP 7 Dědičnost - pokračování
BLIŽŠÍ POHLED NA TŘÍDY, DĚDIČNOST - úvod
Databázové systémy Přednáška č. 6 Architektura databázových systémů,
Informační systémy ZMVŠ. ERP ERP (Enterprise Resource Planning) –Enterprise Resource Planning (ERP) je informační systém, který integruje a automatizuje.
Komunikace v DS Přednášky z distribuovaných systémů Ing. Jiří Ledvina, CSc.
Koreferát: LISp-Miner a (lékařské) ontologie Vojtěch Svátek.
Podpora výuky a tvorby ER diagramu ve výukovém systému Barborka Petr Kopka VŠB – TU Ostrava, 2005.
State. State – kontext a problém Kontext  chování objektu má záviset na jeho stavu, který se typicky mění za běhu Neflexibilní řešení  metody obsahují.
Dopady zavedení registru práv a povinností na orgány veřejné moci.
Páté cvičení Dědičnost Interface Abstarktní třídy a metody
D ATOVÉ MODELY Ing. Jiří Šilhán. D ATABÁZOVÉ SYSTÉMY Patří vedle textových editorů a tabulkových kalkulátorů k nejrozšířenějším představitelům programového.
1 NASKL v roce 2007 Ing. Alena Fischerová Národní autorizační středisko pro klinické laboratoře při České lékařské společnosti Jana Evangelisty Purkyně.
Algoritmizace a základy programování
Ukládání dat, a spam INTERNET Ukládání dat, a spam.
Softwareová architektura
Modely konzistentnosti Ladislav Kotal PDS 2008Ladislav Kotal2 Konzistentnost Konzistentní = soudržný, neporušený, pevný Konzistenční model = dohoda.
Objektové programování
Vypracoval: Ondřej Dvorský Třída: VIII.A
Databázové systémy Architektury DBS.
Informatika pro ekonomy II přednáška 10
1 Strategie NASKL Ing. Alena Fischerová Národní autorizační středisko pro klinické laboratoře při České lékařské společnosti Jana Evangelisty Purkyně.
OBJEKTOVÉ METODOLOGIE – JEJICH UŽITÍ A VÝKLAD Ing. Martin Molhanec, CSc.
Association table mapping Jakub Chalupa Naim Ashhab ČVUT FEL A7B36ASS – Architektura SW systémů LS 2014.
Databázové systémy II Přednáška V Ing. Tomáš Váňa, Ing. Jiří Zechmeister Fakulta elektrotechniky a informatiky
Databázové systémy II Přednáška č. 9. Transakce je logická jednotka práce sestávající z jednoho nebo více SQL příkazů, které jsou atomické z hlediska.
Transakční zpracování v SQL P. Částek. Transakce Transakce = logická jednotka práce Podaří-li se všechny části transakce, potvrdíme je. COMMIT Jestliže.
Databáze.
ADO.NET – Transakce Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí.
Úvod do JavaScriptu JavaScript je p JavaScript je programovací jazyk, který se používá na webových stránkách. JavaScript je typu KLIENT - KLIENT To znamená,
2. přednáška Databáze, využití MS Excel
Ukládání heterogenních dat pomocí rozvolněných objektů Michal Žemlička.
DATABÁZOVÉ SYSTÉMY. 2 DATABÁZOVÝ SYSTÉM SYSTÉM ŘÍZENÍ BÁZE DAT (SŘBD) PROGRAM KTERÝ ORGANIZUJE A UDRŽUJE NASHROMÁŽDĚNÉ INFORMACE DATABÁZOVÁ APLIKACE PROGRAM.
Databázové modelování
PA152Notes 101 CS 245: Database System Principles Notes 10: More TP Hector Garcia-Molina Pavel Rychlý.
Databázové systémy Informatika pro ekonomy, př. 18.
Databázové systémy 2 Cvičení č. 5 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B10 Autor Ing. Jiří Kalousek Období vytvoření prosinec.
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B3 Autor Ing. Jiří Kalousek Období vytvoření listopad.
Vzor na všechno. Vzor – úvod Problém .. Příklad: widgety .. Jak na to? .. Známý také jako...
Global network of innovation Identity a Access Management v heterogenním prostředí Marta Vohnoutová 19. dubna 2015.
Miroslav Skokan IT Security Consultant
Foreign key mapping Jakub Chalupa Naim Ashhab ČVUT FEL
Komunikace v DS Přednášky z distribuovaných systémů Ing. Jiří Ledvina, CSc.
Service layer. Service layer – úvod Problém  Vytvoření API aplikace  Odstínění bussiness logiky a transakčního chování od zbytku aplikace  Kam s aplikační.
Databázové aplikace v Delphi
Observer Martin Dráb Návrhové vzory, Co to je?  Definuje závislost 1:N mezi objekty  Závislé objekty jsou informovány o změně stavu  Konzistentní.
Strategy. Motivace Různé algoritmy pro stejnou akci Hromada kódu v mnoha podmínkách Důsledky  Komplexnost  Špatná čitelnost  Těžká správa kódu  Těžka.
Vzory a antivzory Dobrá a špatná řešení často se vyskytujících problémů.
24 Používání relačních databází (základní pojmy a principy z oblasti relačních databází, struktura databáze,oblasti použití relačních databází, vkládání.
Konferenční systém ÚVT pro konference pořádané na MU Pavel Budík
Zdravé město V S E T Í N Fórum, 26. března Jak vidí lidé místní situaci? Nejdůležitější zlepšení = "10P" ? ZDRAVÍ KVALITA ŽIVOTA UDRŽITELNÝ ROZVOJ..
Význam relací Typy relací Vytvoření relace Nastavení relace Podtypy relace Referenční integrita.
Konferenční systém ÚVT pro konference pořádané na MU
Lazy load Použity informace z knihy Patterns of Enterprise Application Architecture od M. Fowlera Jan Sládek.
Informatika pro ekonomy přednáška 8
Autor: Mgr. Vladimíra Dvořáková Název: VY_32_INOVACE_3C55Čj8_Úvaha
Relační model databáze
Přednášky z distribuovaných systémů
Přednáška 9 Triggery.
Akční plán GISTR na jaře 2016 OS GeoInfoStrategie.
Scoped Locking, Strategized Locking
Transkript prezentace:

Unit of Work vzor z P of EAA (Fowler) 1

Unit of Work – úvod Problém Příklad: ORM Jak na to? Jak efektivně udržovat konzistentní stav lokálních se vzdálenými objekty? Příklad: ORM Kdy posílat změněný stav doménového objektu? Kdy ho mazat apod.. Jak na to? Udržovat si seznam lokálních objektů, u kterých byl změněn stav během jedné business transakce a pak vše hromadně vyřešit Manager 2

Unit of Work – příklad 3

Unit of Work – účastníci Klient Vyvolá změnu doménového objektu Doménový objekt Registruje se u Unit of Work při vzniku Změny hlásí Unit of Work Unit of Work objekt Uchovává seznam dotčených objektů Při ukončení business transakce se postará o dávkové odeslání změn Postará se o problémy s referenční integritou, pokud se o ně neumí postarat vzdálený systém (databáze) Zajistí pořadí změn 4

Unit of Work – implementace Implementujeme metody Unit of Work na registrování doménových objektů 5

Unit of Work – implementace Potřebujeme zpřístupnit Unit of Work všem doménovým objektům Nemá smsl dávat ho všem jako argument Jelikož všechny operace jedné business transakce probíhají z jednoho vlákna, můžeme objekt Unit of Work svázat s daným vláknem Pokud již existuje objekt, který uchovává session objekty, můžeme Unit of Work přiřadit sem 6

Unit of Work – implementace Předkovi doménových objektů nastavíme metody, kterými registruje změny k Unit of Work 7

Unit of Work – implementace U operací doménových objektů vyvoláme registraci změny 8

Unit of Work – implementace Zajištění vyvolání commitu změn po dokončení business transakce Automaticky (implicitně) Manuálně (explicitně) 9

Unit of Work – použití Ulehčení práce při používání databáze pomocí ORM Lze použít i u jiných systémů využívajících transakce 10

Unit of Work – shrnutí Zpřehledňuje kód Zjednodušuje práci s odesíláním změn do databáze Může řešit problémy s referenční integritou Související vzory Singleton 11

Unit of Work – shrnutí Prevence 12