unified modelling language sjednocený modelovací jazyk http://www.uml.org/ UML unified modelling language sjednocený modelovací jazyk
Co to je UML The Three Amigos Základy OOA: UML spadá pod „objektové modelovací techniky“. Základy OOA: Abstrakce Dědičnost Polymorfismus Zapouzdření Posílání zpráv Asociace Agregace Booch, Rumbaugh, Jacobson The Three Amigos
UML Třídový diagram
Jednoduchá třída v UML
Třídový diagram
Třída (obecně) Etymologie Filosofická a matematická definice východiska Etymologie Filosofická a matematická definice Definice vycházející intenzí Nadřazené / souřadné / podřadné Srovnatelné / nesrovnatelné Striktně prázdné / empiricky prázdné distinguish classes from types and kinds
Etymologie Vztah k tříditi. východiska Etymologie Vztah k tříditi. Ze všeslovanského střída, což je zase ze staroslovanského *čerda (rus. čeredá) které původně znamenalo stádo. stádo řada střídat se třída Střída také znamená střed, vnitřek, prostředek, jádro – původně část pečiva mezi kůrkami. Jádro pojmu .
východiska Třída filosoficky Třída je souhrn objektů, které mají společnou vlastnost. Třídu můžeme definovat extenzivně, nebo intenzivně Výčtem vlastností (intenzivně) Výčtem objektů (extenzivně) Tedy třídu všech koček můžeme definovat buď pomocí vlastnosti (predikátu) „kočkovitost“, nebo tak, že vyjmenujeme všechny kočky.
východiska Třída matematicky Třída (resp. množinová třída) je matematický pojem z oboru teorie množin používaný pro označení souboru objektů, u kterých lze určit, zda do dané třídy náleží nebo nenáleží. Respektive, u kterých má smysl se ptát po jejich náležení do dané třídy. http://cs.wikipedia.org/wiki/T%C5%99%C3%ADda_%28matematika%29
Definice vycházející intenzí východiska Definice vycházející intenzí http://til.phil.muni.cz/ pravda / nepravda PSW množina všech možných světů (maximální souhrn faktů, které mohou platit) výrok (propozice) čísla veličina vlastnost, predikát množiny, třídy individuální úřad, role situace individua Materna, P., (2000). Svět pojmů a logika. Praha: Filosofia, 2000. sekvence předchozích událostí
Nadřazené / souřadné / podřadné východiska Nadřazené / souřadné / podřadné Živočichové úroveň pojmů (větve pojmového stromu) Pojmy třetí úrovně Savci Ptáci Plazy Pojmy druhé úrovně Jeleni Srnci Lidé Pojmy první úrovně Jelen Větrník úroveň objektů (listy pojmového stromu) Souřadné pojmy jsou pojmy stejné úrovně obecnosti
Obsah a rozsah Obsah pojmu / třídy Rozsah pojmu / třídy východiska Obsah a rozsah Obsah pojmu / třídy Je soubor všech vlastností, které náleží všem předmětům, které spadají pod daný pojem / třídu. Rozsah pojmu / třídy Třída předmětů, které pod daný pojem / třídu spadají Čím větší obsah, tím menší rozsah. Platí tato poučka vždy?
Srovnatelné / nesrovnatelné východiska Srovnatelné / nesrovnatelné Srovnatelné pojmy / třídy Mají alespoň jednu stejnou vlastnost Slučitelné pojmy / třídy Mají alespoň jedem společný prvek
Striktně prázdné / empiricky prázdné východiska Striktně prázdné / empiricky prázdné Striktně prázdný pojem – neidentifikuje žádný objekt – avšak rozumíme mu – takže je to pojem. Př.: nevyšší prvočíslo, Quasi prázdný pojem – identifikuje prázdnou třídu Př.: kulatý čtverec Empiricky prázdný pojem –identifikuje objekt, který v tomto PSW nemá realizaci. Př.: Paegas, drak, vodník atd.
Mají velmi těsný vztah s ontologiemi MAS!!! Kategorie Mají velmi těsný vztah s ontologiemi MAS!!! Kategorie jsou nejnadřazenější pojmy. Základní ontologické formy v nichž je jsoucno (Aristoteles, cit dle Anzenbacher) Substance Kvantita Kvalita Relace Kde? Kdy? Poloha Habitus Činnost Trpnost Zohledňuje se obecné, od zvláštního se odhlíží. Základem aristotelského třídění věcí je představa nadřazeného rodu (řecky genos, latinsky genus), jehož jednotlivé druhy (eidos, species) se navzájem liší „specifickou“ čili druhovou diferencí. Definice tak spočívá v určení (společného) rodu a tohoto rozdílu vůči ostatním druhům v něm. Jednotlivé předměty se tak dají uspořádat do „stromu“ nadřazených a podřazených kategorií, na čemž spočívá tzv. binomická nomenklatura v botanice, zoologii atd.
Třída Kategorie nebo skupina věcí, které mají podobné vlastnosti a stejné nebo podobné chování Chování popisují specifické operace Ke znázornění tříd a jejich vazeb slouží diagram tříd
Znázornění třídy Jméno třídy atribut: typ operace(argument) Začíná velkým písmenem a je tučně atribut: typ Začíná malým písmenem operace(argument)
Závislost (cílená akce) Vzájemný vztah tříd Asociace (vztah) Třída 1 Třída 2 Závislost (cílená akce) Třída 1 Třída 2 Zobecnění: Agregace: Obecná Třída Celek (agregát) Konkrétní třída Část (komponenty)
Třídový diagram - příklad 1 Znázorněte v jazyku UML vztahy mezi třídami: Manžel, Manželka Učitel, Student Pokladní, Zákazník Dům, Komín
Příklad 1 - řešení
Třídový diagram - příklad 2 Znázorněte v jazyku UML vztahy mezi třídami: zvíře, obojživelník, savec, plaz, rosnička, kůň, zmije, užovka, vraník, grošák, bělouš, Hatatitla, Šemík
Příklad 2 - řešení Subclasses and superclasses
Třídový diagram - příklad 3 Znázorněte v jazyku UML vztahy mezi třídami: osobní počítač, počítačová skříň, klávesnice, monitor, myš, tlačítko myši, Kulička myši, motherboard, procesor, chlazení, grafická, síťová a zvuková karta,
Příklad 3 - řešení
Typy atributů a jejich syntax
Třídový diagram - příklad 4 Vytvořte diagram třídy Zaměstnanec v restauraci Při návrhu uvažujte tyto odvozené třídy: číšník, šéfkuchař, ředitel, vedoucí Pro zadané třídy přiřaďte vhodné atributy a operace
Příklad 4 - atributy Třídě Zaměstnanec přiřazujeme atributy: jméno adresa rodnéČíslo létaPraxe datumPřijetí plat
Příklad 4 - operace Číšník nést() nalít() vybírat() zkontrolovatStavObjednávky() Šéfkuchař připravit() vařit() Ředitel dohlížetNa() říditRestauraci() Barman přijmoutObjednávkuNápojů() připravitNápoj()
Příklad 4 - řešení