Computational Thinking

Počítačové myslenie je súborom rôznych zručností pri riešení problémov, ktoré vychádzajú zo zručností potrebných na prácu programátora. Tieto zručnosti však nie sú užitočné len pri programovaní, ale sú použiteľné aj mimo informatiky.

Šesť zručností na riešenie problémov, s ktorými pracujeme v projekte, vychádza z kompilácie Bocconiho a ďalších (2016):

Pre lepšie vysvetlenie tu použijeme každodenný príklad na opis jednotlivých schopností.

Algoritmické myslenie:

Recept na prípravu polievky nie je v podstate nič iné ako algoritmus – návod krok za krokom na dosiahnutie cieľa. Algoritmické myslenie je potrebné, keď chceme recept vytvoriť sami.

Rozklad:

Pri tvorbe receptu je potrebné rozdeliť veľký problém na menšie. Mohli by sme si napríklad najprv položiť otázku, aké suroviny chceme v prvom rade použiť, a potom sa zamyslieť nad jednotlivými spôsobmi prípravy zeleniny.

Automatizácia:

Krájanie zeleniny a miešanie polievky sú úlohy, ktoré sa opakujú a vyžadujú si len malý ľudský vklad. Namiesto toho sa táto úloha môže zveriť stroju.

Ladenie:

Schopnosť „ladiť“ zahŕňa dva rôzne východiskové body procesu:

  1. Na jednej strane je to schopnosť, že ak je výsledok nesprávny (napríklad polievka, ktorá nechutí), môžeme nájsť chybu a opraviť ju.
  2. Na druhej strane je to aj schopnosť, že môžeme odhaliť chyby ešte pred vykonaním receptu a tiež ich opraviť.

Zovšeobecnenie:

Riešenie, ktoré funguje pre určitý problém, možno v niektorých situáciách rozšíriť tak, aby fungovalo pre celú triedu podobných problémov. Aby sme zostali pri príklade s polievkou: Keď vieme, ako funguje polievka, môžeme podobný prístup použiť aj pre iné typy polievky.

Abstrakcia:

Rozpoznávanie vzorov v zložitejších procesoch a ich abstrahovanie na podstatné veci bolo vždy jednou z najdôležitejších ľudských zručností pri riešení problémov. Táto schopnosť sústrediť sa na základnú logiku namiesto toho, aby sme boli zahltení každým technickým detailom, je pri programovaní kľúčová. S mnohými abstrakciami sa však stretávame aj v analógovom svete. Napríklad formálne napísaný recept na varenie polievky možno často ďalej abstrahovať a prezentovať napríklad vo forme vývojového diagramu, ktorý zobrazuje len základnú logiku a vynecháva všetky nepotrebné detaily.