UML a Flowchart ve výuce programování na gymnáziu
využito ve
výuce
Anotace
hodnocení
hodnocení
využito ve
výuce
hodnocení
hodnocení
využito ve
výuce
Vaše hodnocení pomůže ostatním při výběru toho pravého materiálu.
hodnocení
hodnocení
využito ve
výuce
Základní atributy materiálu
- Autor: Michal Černý
- Poskytovatel: Metodický portál RVP.CZ
- Datum vložení do systému: 04. 12. 2018
- Datum vzniku: 30. 09. 2011
- Umístění materiálu: -
- Stupeň vzdělání: gymnaziální vzdělávání
- Ročník: -
- Dostupnost: Volně dostupné bez registrace
- Typ materiálu: článek
- Licence: Creative Commons - Uveďte původ-Neužívejte komerčně-Nezpracovávejte 3.0 ČR
- Jazyk: Čeština
- Otevřený zdroj: Ano
Chcete se k materiálu vyjádřit?
Využijte prostor pro férovou diskusi.
#fairplay
Komentář
UML je dost dobrý jazyk na konceptuální modelování, ale diagramy UML, které slouží k návrhu algoritmu (tj. activity diagrams, state transition diagrams) jsou pro výuku programování stejně nevhodné jako vývojové diagramy (flowcharts dříve také nazývané bloková schemata). Viz dopis Edsgera Dijkstry \"Go To Statement Considered Harmful\" z března 1968 (vyšel v Communications ACM 11 / 3, http://www.cs.utexas.edu/users/EWD/ewd02xx/EWD215.PDF ) nebo článek Eda Posta \"Real Programmers Don\'t Use Pascal\", viz http://www.cs.bgu.ac.il/~omri/Humor/real-progstory.html - obojí doporučuji přečíst, zvláště ten druhý mě před asi třiceti lety dost pobavil. Nehodlám tady znovu rozpoutávat války za strukturované programování, myslel jsem, že je už dávno dobojováno.
Strukturované programy lze docela dobře zaznamenat pomocí myšlenkových map (viz články \"7 tipů, jak použít myšlenkové mapy\" a \"Myšlenkové mapy v edukačním procesu\" na tomto portálu). Klasické jsou Jacksonovy strukturogramy (použité např. v dříve populárním Soukupově nástroji SGP) nebo např. kopenogramy autorů Kofránka, Pecinovského a Nováka použité např. v \"Dálkovém kursu číslicové techniky\", který v 80. letech vydávala 602. ZO Svazarmu. Ještě lepší než pouhá kreslítka na diagramy jsou jistě vývojová prostředí, kde diagramy můžete rovnou spustit (Karel, Baltík, Scratch, MS Kodu apod.) - viz článek \"MS Kodu ve výuce\" Terezy Humpolcové zde na portálu. Mně se osvědčila didaktická hra \"Záhada slibového pahorku\", kterou jsem podrobněji popsal v diskusi k článku \"MS Kodu ve výuce\". Před tím jsem naprogramoval podobnou hru \"Zachraňte Karla!\" (viz http://members.upc.cz/ryant/personal/okarlovi.htm).
Další zásadní námitka proti vývojovým diagramům (a také proti strukturogramům a stavovým diagramům všeho druhu) je, že vývojovým diagramem neznázorníte rekurzi, redukujete algoritmus na pouhý konečný automat a žáci (studenti) tak nemohou pochopit vyjadřovací sílu algoritmického myšlení - podrobnosti jsem uvedl v článku \"Nahraďte algoritmizaci systémovým přístupem!\" zde na portálu. Ukázky algoritmizace úloh z počtů (např. trojčlenka, kořeny kvadratické rovnice, Pythagorova věta, největší společný dělitel, numerická integrace obdélníkovou nebo lichoběžníkovou metodou, řešení rovnic metodou sečen atd.) - to všechno jsou pěkné názorné ukázky pro laiky, ale algoritmické myšlení je především myšlením matematických důkazů. A pokud jde o střední školu, tak právě to je jediné téma z matematiky (počty nechme stranou), kde algoritmizace pomůže studentům pochopit podstatu věci (stejně jako Alanu Turingovi umožnila v roce 1937 převést problém nerozhodnutelnosti na daleko názornější problém nezastavení Turingova stroje).
Vaše hodnocení pomůže ostatním při výběru toho pravého materiálu.
Přidejte hodnocení anonymně nebo pod svým profilem.