Objektově relační mapování: Porovnání verzí

Smazaný obsah Přidaný obsah
JAnDbot (diskuse | příspěvky)
m Náhrada šablon {{Hlavní článek}} -> {{Viz též}}; kosmetické úpravy
m →‎Dědičnost: opraven link
Řádek 42:
== Dědičnost ==
{{Viz též|Dědičnost (objektově orientované programování)}}
Dědičnost je jedna ze stěžejních vlastností objektově orientovaného programování. Pomocí dědičnosti lze vytvářet hierarchickou strukturu tříd a při správném návrhu zvýšit znovu-použitelnost kódu. Relační databáze však dědičnost (a tím pádem ani [[Polymorfismus (programování)|polymorfismus]]) nepodporují a proto je potřeba využít techniky, jak hierarchii tříd rozložit do databázových tabulek. V případě použití dědičnosti je typické, že podoba datového modelu závisí na vybraném návrhovém vzoru. Návrhové vzory pro dědičnost lze kombinovat se vzory ''Row Data Gateway'', ''Active Record'' a ''Data Mapper''. U vzorů ''Row Data Gateway'' a ''Active Record'' je nutné, aby entitní třída byla potomkem speciální třídy, která je součástí ORM knihovny. To může komplikovat návrh diagramu tříd. Proto je vhodné kombinovat vzory pro definování dědičnosti se vzorem ''Data Mapper'', jehož implementace zpravidla nevyžaduje, aby entitní třída byla potomkem speciální třídy, která by byla součástí ORM knihovny.
 
* [[Single Table Inheritance]]