Hlavní navigace

Názor ke článku Jaký jazyk jako první? od Róbert Novotný - Na Slovensku momentálne existuje silná tendencia migrovať stredoškolákov...

  • 20. 2. 2014 15:33

    Róbert Novotný (neregistrovaný) 88.212.40.---

    Na Slovensku momentálne existuje silná tendencia migrovať stredoškolákov na Lazarus. Predovšetkým mnoho učiteľov dobre ovláda starý Pascal a Lazarus vyzeral ako prirodzený krok, minimálne preto, že staré Delphi boli skvelé a osvedčené prostredie.

    Pri vzdelávaní učiteľov to tiež veľmi dobre odsýpalo, dalo sa bez problémov začať s jedným oknom, doňho hodiť kresliacu plochu a dlhú dobu sa dalo zabávať s úlohami korytnačieho typu -- kreslenie útvarov, vyfarbovanie a podobne.

    Problémy som zažil v momentoch, keď ľudia začali omylom prepisovať veci, ktoré nemali. Aj keď na začiatku editujete jediný súbor (formulárový zdroják), vidíte v ňom priveľa vecí, ktoré sa dajú nechtiac pokaziť (pasáže interface a implementation), a stávalo sa, že projekt sa rozsypal natoľko, že bolo treba kompletné znovuvytvorenie.

    Boli aj pokusy vyučovať OOP, a celkom sa to darilo, ale úprimne povedané, vytváranie vlastných tried, dedičnosť a spol. sú poplatné dobe vzniku a na úvod extrémne ťažkopádne -- stačí porovnať triedy v ObjectPascale s pythoňáckymi, alebo javáckymi.

    Na druhej strane existuje silný tlak na vytváranie materiálov, učebníc a úloh, čo vie vykryť aj zmienené nedostatky.

    Mimochodom, u nás na fakulte (PF UPJŠ) sa do prvého ročníka zvolila Java. Polovica prvého semestra je venovaná korytnačej grafike -- ľudia programujú nad špeciálnou knižnicou, ktorá reprezentuje korytnačiu grafiku a teda na tradičných útvarových a kresliacich úlohách vedia pochopiť procedurálneho programovania (prakticky ide o filozofiu Loga so syntaxou Javy). Ktosi vyššie spomínal BlueJ: čiastky filozofie sú prebraté do onej knižnice.

    Po druhej polovici odchádza korytnačka do úzadia a prechádza sa na OOP a všetky jeho piliere. Existujúce algoritmy sa ešte neriešia: radostne sa využívajú polotovary z knižnice Javy: kolekcie, triedi sa zabudovanými javáckymi metódami, pretože filozofia je zameraná na to, aby ľudia vedeli používať existujúce veci a naučili sa uvažovať algoritmicky.

    To všetko je podopreté materiálmi (existuje wiki s prednáškami http://web.ics.upjs.sk/paz1a/Prednasky/Prednasky), kopou domácich úloch, a dohromady 7 vyučovacími hodinami programovania týždenne.

    Druhý semester sa venuje zase algoritmickým veciam: rieši sa rekurzia, tradičné triedenia, dátové štruktúry spolu s filozofiou za nimi (v 1. semestri sa povie "máme ArrayList a používame ho, v 2. sa povie, čo sa deje vzadu), backtracky, dynamické programovania a podobné pokročilé veci.

    Kolegovia to nastavili tak, aby na vstupe mohol byť študent, ktorý absolútne neprogramoval a na výstupe, ak sa kontinuálne venuje, človek, s ktorým sa dá bez problémov ďalej pracovať. (Zo stredných škôl totiž prichádza veľmi pestrá paleta maturantov.)

    Jazyk C sa učí až v druhom ročníku, v treťom semestri (keď sa už dá stavať na mnohých znalostiach a často sa zlieza "o úroveň hlbšie").