O počítačích, programování a systematickém přístupu


ZŠ Modřice  >  Mini-web  >  Obsah sekce:  ^^^

kapitola 1.

  Současný počítač můžeme charakterizovat jako stroj na automatické zpracování dat, řízený množinou programů. K tomu definujme data jako informace, zaznamenané v digitální formě, zpracovatelné počítačem. Pojem digitální (= číselné) znamená, že vše, s čím většina současných počítačů pracuje, je obvykle fyzicky zaznamenáno v binární (= dvojkové) soustavě pomocí nul a jedniček.

  Pro bližší představu k tomu na webu nabízíme odkaz na článek „Exkurze do světa Mikrosekund“. Napsal jsem ho sice před 50 lety pro informaci spolupracovníků v brněnském Ingstavu, ale podle popisovaných principů, které v roce 1945 navrhl budapešťský rodák John von Neumann, počítače v podstatě fungují dodnes. Pro hlubší zájem je dispozici odkaz na článek „O strojovém kódu“ od Vladimíra Vérosty.

  Počítač jako stroj, tedy „hardware“ (čti „hárdvér“ = těžké zboží) se skládá z pěti podstatných částí: paměť, procesor, vstupní zařízení, výstupní zařízení a zdroj elektřiny. To platí obecně, ať již jde o řízení náramkových hodinek, kuchyňskou váhu, mobil, notebook či skupinu propojených serverů ve velkém počítačovém centru.

  Aby počítač realizoval to, co se po něm požaduje musí v něm být zabudováno nebo do něj být zavedeno programové vybavení, tedy „software“ (čti „softvér“ = měkké zboží), což je zpravidla množina programů. Ta představuje souhrn jednoznačných pokynů pro realizaci požadované činnosti, zapsaných v některém počítačovém jazyku.

  Pro různé účely máme k dispozici různé počítačové jazyky, kterými lze tyto pokyny zadat. Bezkonkurenčně nejrozšířenější počítačový jazyk, ve kterém jsou na počítačích celého světa popsány webové stránky, si můžeme prohlédnout po stisku kombinace kláves Ctrl+U na kterékoliv z nich (tedy i na této).

  Obecně můžeme říct, že programovací jazyk je takový, který umožňuje popis všech základních struktur pokynů pro činnost počítače, kterými jsou posloupnost, opakování (cyklus) a větvení (rozhodování). Základní prvky programu pak tvoří zmíněné pokyny k akci, pojmenovaná místa v paměti a programátorem definované konstanty.

 


Jak vypadaly počítače a jejich využití před 50 lety


  Na obrázku z webu TM v Brně je pro srovnání sál počítače Tesla 200 (asi 15x10m) v suterénu skleněné budovy tehdejšího podnikového ředitelství n.p. Ingstav Brno na dnešní Vídeňské č. 55 na počátku 70-tých let min. století. Podnik patřil k největším stavebním firmám v republice, měl na 300 stavbách v 10 závodech kolem 8000 zaměstnanců, miliardový roční obrat a jako jeden z prvních i vlastní podnikový počítač.

  Operační paměť počítače 64 kB by dnes možná stačila na uložení textu tohoto článku (bez obrázku). Programy se zadávaly z 80-sloupcových děrných štítků, pro ukládání dat měl pouze magnetické pásky bez disků, ale dokázal měsíčně zpracovat 2500 vstupních děrných pásek a vytisknout 1 t skládaných papírových sestav s výsledky. Výpočetní středisko mělo 50 lidí, z toho 15 tvořilo vedení a zajištění 3-směnného provozu, 20 pracovnice na decentralizovaných závodech, které opisováním prvotních dokladů děrovaly pásky a 15 programátoři s analytiky (projektanty).

  Ti vytvářeli a dle potřeby aktualizovali vlastní programové vybavení včetně asi stovky individuálních tiskových sestav. Nabídka nějakých typizovaných řešení pro stavebnictví nebyla žádná, už proto, že každý podnik měl jiný typ počítače s odlišným operačním systémem. Děrné pásky a papírové sestavy se posílaly v taškách vlakovou poštou a o nějakém dálkovém propojení se nedalo ani snít.

  Náplní podniku byly inženýrské a vodohospodářské stavby, např. Březovský vodovod, ale tehdy především vodní dílo Dalešice-Mohelno na řece Jihlavě se 100 m vysokou sypanou hrází a betonovou tížní přehradou. Materiál ve stavebnictví tvoří jednu z největších položek nákladů a tak byla jednou z nejdůležitějších agend na počítači jeho evidence. Představovala měsíčně bezchybně dostat do počítače asi 80 tisíc řádků příjmů a výdejů ze skladů, podle nich aktualizovat některé z jim příslušných 150 tisíc skladových karet na magnetické pásce a vytisknout závěrkové sestavy, které účetně musely do haléře souhlasit.

  Z dnešního pohledu se zdá až neuvěřitelné, že počítač Tesla 200, uvedený do provozu v létě 1971 s různými formami modernizace a průměrnou směnností 2,8 úspěšně sloužil více než 15 let, kdy byl nahrazen počítačem EC 1026.





ČeV

 


kapitola 2.

  Zásadní impuls k rozvoji počítačů dala 2. světová válka (skončila 1945), když se ukázalo, že se mohou vhodně používat k dešifrování vojenských kódů, pro řízení protiletadlové palby a pro výpočty kolem atomové i později vodíkové bomby. Hned po válce však vznikly ještě dva velice významné vědecko-technické obory – kybernetika a teorie systémů, které s počítači úzce souvisí.

  Kybernetika pojednává o řízení a sdělování v živých organizmech a strojích. Zásadní roli v ní hraje automatická regulace na principu zpětné vazby. Teorie systémů nabízí obecná pravidla, jak se vyrovnat se složitostí technických zařízení i reálného světa vůbec. Celkově jsou to obory náročné, ale jejich obecné principy jsou velice užitečné a v zásadě jednoduché. Pokusíme se je stručně popsat a pod názvem systematický přístup je budeme považovat za metodiku práce při analýze problémů a jejich programování.

  Všechno na světě je relativní a tak si pro složité problémy musíme stanovit úhel pohledu podle cíle nebo účelu našeho zájmu, tj. CO máme řešit. V dalším pak zkoumáme vše podstatné, co by mohlo dosažení potřebného cíle ovlivnit.

  Složité záležitosti nemůžeme řešit jako celek, ale musíme si je rozdělit na několik uchopitelných částí - prvků (max 5 až 7) a pracovat od postupně od nejvyšší po dalších nižších úrovních podrobnosti, ve kterých pak každý prvek budeme podobně brát jako celek atd.

  Prvky na každé úrovni budeme chápat jako „černé skříňky“, pro které nás bude zajímat pouze CO řeší a jejich vnější souvislosti. Nebudeme se sice hned zabývat tím JAK to řeší, ale musíme mít jako zpětnou vazbu ověřené, že „vše podstatné k plnění jim vymezeného úkolu“ skutečně umí realizovat.

  Nic neexistuje samo, ale vždy je ovlivňováno nějakým okolím a také na toto okolí tak či onak působí. Proto musíme brát v potaz nejen souvislosti mezi prvky, ale i naší záležitosti jako celku ve vztahu k okolí.

  Nic se neděje samo od sebe, ale je tomu potřebná nějaká energie, motivace či finanční zajištění. Má-li to fungovat požadovaným způsobem, musí také existovat zpětná vazba, která fungování reguluje. Nic není trvale stabilní, ale vše i vnější podmínky se postupně více či méně intenzívně mění – proto je nutno vždy zvažovat, co s naší záležitostí udělá čas. Posledním nepominutelným hlediskem pak je zhodnocení rizika, že to či ono nebude tak, jak předpokládáme.

 


Vše podstatné, co by mohlo ovlivnit ... !?!


  Systematický přístup (SP) v podstatě znamená, že si budeme klást otázky dle uvedeného schematického popisu a budeme na ně hledat odpovědi. Protože jde o univerzální metodu, která umí zviditelnit mlhavé stavy a procesy či souvislosti, na webu nabízíme odkaz na článek „Principy systematického přehledu“, který na příkladech (dva z nich jsou přímo z Modřic) ukazuje důsledky situací, kdy při realizaci významných záležitostí systematický přístup chyběl.

  Při intenzívním rozvoji Modřic po sametové revoluci došlo k výstavbě velkých obchodních a výrobních celků, které dnes městu zajišťují velké příjmy z daní. Ale v oblasti pěší dostupnosti pro občany města bohužel nebyl v přípravě a realizaci těchto významných investic zodpovědný systematický přístup uplatňován, což přináší závažné problémy do dneška.

  Na přiložené mapce je mezi body (2) a (3) vyznačen 150m dlouhý úsek od mostu přes řeku směrem k nákupnímu centru Olympia, kde se zatím musí chodit po frekventované silnici mezi auty nebo v zimě v blátě a mokru terénem vedle ní. Teprve po více než 15 letech se nyní konečně vážně připravuje stavba zbývajícího chodníku. O chodníku do čtvrti Bobrava či do kterékoliv sousední obce, např. na 1. zastávku autobusu v Brně-Přízřenicích, na rozdíl od Želešic nebo Rajhradu zatím můžeme jen snít.

  Zásadní podmínkou SP je, že si musíme klást skutečně všechny zmíněné otázky a při řešení problémů z běžné životní praxe musíme odpovědi zaznamenat písemně, v oblasti analýzy a programování pak v rámci příslušné dokumentace. Ono je totiž jedním z hlavních motivů, „aby se na něco důležitého nezapomnělo“ a když se důležité věci zapíšou, tak se pak následně lépe kontrolují.

  Znalost a používání principů SP má velký význam při rozhodování pro vedoucí pracovníky, členy zastupitelstva a v dalších podobných rolích. Nemohou zvládnout každou problematiku, ale mohou jako podklad vyžadovat stručné písemné odpovědi na všechny otázky dle popsaných pravidel. Samozřejmě je to užitečný postup i pro každého, kdo má sám řešit různé složité situace.

  Princip rozdělení celku na samostatné dílčí prvky se již desítky let běžně využívá v technických oborech i při výrobě počítačů a dalších elektronických zařízeních. Při programování se nejprve jednalo o podprogramy, ze kterých se postupně došlo až k současným třídám s metodami, obecně řečeno k funkcím. Funkce přestavují pokyny pro řešení úzce vymezeného menšího úkolu a zpravidla obsahují formální parametry, které jsou při jejich volání nahrazeny konkretními argumenty.

  Počítač je vždy „férový partner“ a tak na rozdíl od lidí nic neopomene úmyslně. Ale vzhledem ke složitosti programování, dané technickou možností mnoha variant řešení, je zcela běžné, že při tvorbě programu se v něm objevují „mouchy“ (volně anglicky „bugs“). Složitost totiž roste exponenciálně s rpzsahem úkolu a tak kromě těch nejjednodušších zadání zpravidla není reálné program napsat „z jedné vody načisto“, ale musí se postupně provádět jeho „odladění“ („debugging“) a testování.

  Při programování složitějších zadání musíme také prakticky průběžně kontrolovat soulad požadavků na celek s funkčností jednotlivých prvků. Proto byla vyvinuta různá vývojová prostředí, která práci programátora v tomto smyslu usnadňují. O možnosti využít běžné prostředí windows pro dávkové ladění bude také řeč v některé z dalších kapitol.

ČeV

 

 

Připravuje Vlastimil Čevela za pomocí kolegů z branže (Vladimír Vérosta, Branislav Lacko, Miroslav Sycha)
a vedoucího kroužku programování na ZŠ Modřice Tomáše Stejskala.

 

 


Mini-web, redakce ČeV, aktualizace 04.12.2023-11:23