Uživatelské nástroje

Nástroje pro tento web


informatika:maturita:17a

Rozdíly

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

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
informatika:maturita:17a [31. 03. 2015, 12.33]
xzemla1 [UML]
informatika:maturita:17a [13. 02. 2018, 20.00] (aktuální)
xsilling zvětšení use case nadpisu
Řádek 1: Řádek 1:
 ====== Grafický popis algoritmu ====== ====== Grafický popis algoritmu ======
- 
-<WRAP center round tip 60%> 
-POUZE KONCEPT 
-</​WRAP>​ 
  
 ===== Vývojový diagram ===== ===== Vývojový diagram =====
-slouží ke grafickému znázornění algoritmu pomocí symbolů a čar (šipek) 
  
-==== Pravidla: ==== +Vývojový diagram slouží ke grafickému znázornění algoritmu ​pomocí symbolů a čar (šipek). Algoritmus je přesný postupkterým lze vyřešit danou úlohu.
-algoritmus postupuje shora dolů, zleva doprava, pokud není jiný směr uveden šipkami, ty určují směr v jiném případě  +
-  * **obdélník s popisem** - krok algoritmu +
-  * **kosočtverec** - větvení postupu algoritmu podle splnění podmínky(cyklus) ?? +
-  * **obdélník se zaoblenými rohy** - počátek nebo ukončení ​algoritmu +
-  * **obdélník s čarami po stranách** - programy +
-  * **rovnoběžník(lichoběžník)** - vstupvýstup +
-  * **šestiúhelník** - cyklus+
  
 +==== Pravidla ====
  
-==== Druhy algoritmů ==== +Ve vývojovém diagramu se postupuje shora dolů a zleva doprava, lze však změnit směr užitím šipek.
- +
  
-  * **document flowcharts** - ukazují ​řízení toků dokumentů +Pro zápis diagramu používáme následující symboly (spolu s vnitřními popisy):
-  * **data flowcharts** - řizení toků dat +
-  * **system flowcharts** - řízení toků fyzické vrstvy, nebo vrstvy zdrojů +
-  * **program flowcharts** - řízení toků v programu+
  
 +  * **obdélník** – krok algoritmu (příkazy – například i výpis)
 +  * **kosočtverec** – větvení postupu algoritmu podle naplnění podmínky; bývá (z hlediska ISO normy pro neimperativní paradigmata nesprávně) používán i jako podmínka pro cykly
 +  * **zaoblený obdélník** – počátek nebo ukončení algoritmu
 +  * **obdélník se svislými čarami po stranách** – dodatečné podprogramy
 +  * **rovnoběžník** – vstup
 +  * **obdélník s ořezanými rohy** – ohraničení kroků cyklu tak, aby byly ohraničeny neořezanými stranami (pro //for// a //while// je podmínka uvnitř horní hranice, pro //do while// uvnitř hranice spodní)
  
 +{{:​informatika:​maturita:​250px-vyvojovy_diagram_zarovka.png?​500 | Příklad vývojového diagramu}}
 +
 +==== Druhy vývojových diagramů ====
 +
 +  * **document flowcharts** – řízení toků dokumentů
 +  * **data flowcharts** – řízení toků dat
 +  * **system flowcharts** – řízení toků fyzické vrstvy nebo vrstvy zdrojů
 +  * **program flowcharts** – řízení toků v programu
  
 ===== UML ===== ===== UML =====
-název z angličtiny - unified modeling language 
  
-Grafický jazyk pro vizualizaci a návrhy programových způsobů. Podporuje objektově orientovaný přístup k analýze, ale již nespecifikuje metodiku funkce programu.+Název z angličtiny – **unified modeling language**.
  
-====Účely UML==== +Jedná ​se o grafický jazyk pro vizualizaci a návrhy programových způsobů. Podporuje objektově orientovaný ​ístup k analýzeale již nespecifikuje metodiku funkce programu.
-  * **Kreslení konceptu** - do diagramů ​se nakreslí podstatné věci  před programováním +
-  * **Kreslení detailních návrhů** - aby programátor přesně pochopil, co mu analytik zadává +
-  * **Jako programovací jazyk** - z diagramů ​ímo spustitelný kódv této souvislosti se často používá pojem MDA (model driven architecture)+
  
 +==== Účely UML ====
 +
 +  * **Kreslení konceptu** – do diagramů se nakreslí podstatné věci před programováním. Modelovací software jako Umbrello poté umožňuje generování šablony kódu podle UML konceptu.
 +  * **Kreslení detailních návrhů** – umožňují programátorovi lépe pochopit analytické zadání.
 +  * **Jako programovací jazyk** – kód spustitelný přímo z diagramů, v této souvislosti se často používá pojem MDA (model driven architecture).
  
 ==== Základní dělení diagramů UML ==== ==== Základní dělení diagramů UML ====
-  * **Diagramy struktury** (tříd, objektů, apod.) - zobrazují vnitřní strukturu programu 
-  * **Diagramy chování** (use-case diagramy,​...) - zobrazují pouze vnější chování, to, co uvidí běžný uživatel 
  
-=== Use-Case diagramy === +UML umožňuje tvorbu několika typů diagramů, které můžeme kategorizovat podle toho, jaké aspekty systému reprezentují:​ 
-doslova ​"​případ užití" ​zobrazují ​pouze funkcionalitu systémuchování programu ​tak, jak jej vydí uživatel, ​nikoliv přesnou realizaci. Diagram ukazuje, co má systém umět, ale nikoliv jak to bude zrealizováno+ 
-Základní dva prvky diagramu jsou značky aktérů (actors ​ivatelů) a případů užití (use case - jednotlivých ​možností, které se aktérům nabízejí).+  * **Diagramy použití a chování** – zobrazují vnější chování systému a jeho funkce (use case diagramy). 
 +  * **Diagramy struktur** – zobrazují prvky, které musí být přítomny v systému, aby mohl správně fungovat, respektive jeho logickou strukturu (diagramy tříd, diagramy objektů, diagramy komponent). 
 +  * **Diagramy interakcí** – speciální druh diagramů chování, který se zaměřuje na znázornění toku dat a komunikace uvnitř modelovaného systému (sekvenční diagramy, komunikační diagramy). 
 + 
 +==== Use case diagramy ​==== 
 + 
 +Doslova diagramy ​"​případů užití" ​– zobrazují funkcionalitu systému ​– pouze chování programu ​(nikoliv přesnou realizaci), a to přímo očima koncového uživatele. Diagram ​tedy pouze ukazuje, co má systém umět. 
 + 
 +Základní dva prvky diagramu jsou značky aktérů (actors ​– ivatelé) a případů užití (use cases – jednotlivé ​možnosti, které se aktérům nabízejí). 
 + 
 +{{ :​informatika:​maturita:​usecase_diagram.png?​500 | Příklad use case diagramu}}
  
 ==== Diagramy tříd ==== ==== Diagramy tříd ====
-můžeme využít k zobrazení tříd, jejich metod, atributů a vztahů mezi nimi. 
  
-=== Vztahy ​mezi ídami: ===+Diagramy tříd se využívají k zobrazení tříd, jejich metod, atributů a vztahů mezi nimi. 
 + 
 +=== Vztahy ​a značení === 
 + 
 +  * **Asociace** – vztah informuje o spojení instancí dvou íd  
 +  * **Agregace** – vztah celek – část 
 +  * **Kompozice** – silnější verze agregace 
 +  * **Dědičnost** – potomek dědí atributy předka 
 +  * **Závislost** – změna jedné třídy ovlivní třídu druhou 
 +  * **Realizace** – souhrn všech veřejně dostupných metod dané třídy 
 +  * **+** = public 
 +  * **−** = private 
 +  * **#** = protected 
 + 
 +{{ :informatika:​maturita:​class_1.gif | Příklad diagramu tříd}} 
 + 
 +==== Diagramy objektů ==== 
 + 
 +Diagramy objektů (nebo také instancí) fungují podobně jako diagramy tříd, ovšem zachycují stav běžícího systému v přesně daném momentu – nezobrazují třídy, ale jejich konkrétní instance, u kterých očekáváme,​ že by se v systému mohly za běhu vyskytnout.
  
-  * **Asociace** - vztah informuje o spojení instancí dvou tříd  +{{ :​informatika:​maturita:​objektovy.gif | Příklad diagramu objektů}}
-  * **Agregace** - vztah celek - část  +
-  * **Kompozice** - silnější verze agregace +
-  * **Dědičnost** - potomek dědí atributy předka +
-  * **Závislost** - změna jednohé třídy ovlivní druhou +
-  * **Realizace** - souhrn všech veřejně dostupných metod dané třídy+
  
 +==== Sekvenční diagramy ====
  
 +Sekvenční diagramy (také diagramy událostí) se starají o znázornění posloupného zasílání zpráv a požadavků mezi sledovanými objekty. Ty jsou znázorněny v horní části diagramu a vychází z nich svislé přerušované čáry (lifelines) indikující jejich existenci (při smazání končí znakem X). Následně se (zleva) posílají objektům požadavky pomocí šipek doplněných o název volané funkce. Šipky mohou být rovněž přerušované,​ v takovém případě však značí odpovědi na požadavky. Doba zpracování požadavků se znázorňuje obdélníky na lifeline.
  
 +{{ :​informatika:​maturita:​sekvencni.png | Příklad sekvenčního diagramu}}
  
informatika/maturita/17a.1427798015.txt.gz · Poslední úprava: 31. 03. 2015, 12.33 (upraveno mimo DokuWiki)