Hlavní navigace

Názor k článku Logo – dětská hračka nebo programovací jazyk? od Pavel Tisnovsky - O tom, ze by Pascal byl navrhnuty pro...

  • Článek je starý, nové názory již nelze přidávat.
  • 26. 6. 2007 21:38

    Pavel Tisnovsky (neregistrovaný)
    O tom, ze by Pascal byl navrhnuty pro vyuku nic nevim :-), to o nem pouze tvrdi jeho tvurce o po nem to opakuji dalsi stovky lidi. Dneska se to stejne rika o Jave a za par let pravdepodobne o C# ...

    Na Pascalu je dobra jedna vec - jednopruchodovy preklad, to opravdu znacne urychluje kompilaci a na osmibitech, ADT a 86/286 se jednalo o dobrou variantu: rychly preklad a rychlost kompilovaneho kodu.

    Pascal (psany podle specifikace) dokazal spoustu lidi otravit uz pri psani prvniho programu, protoze je "skolne-buzeracni". Sam si pamatuji, jak nam ucitel napsal (tj. z knizky opsal na tabuli) prvni program v Pascalu na vypocet obvodu kruznice. Melo to osm radku, nejaka podivna klicova slova se stredniky a teckami a my, co jsme predtim uz delali nejake programky na osmibitech jsme se divili, proc nejde napsat neco podobne jednoducheho:

    input r
    print "Vysledek=";r*2*3.14

    Pascal nas opravdu buzeroval, upozornoval na chybejici stredniky (a presne vedel kde chybi - proc je tedy potrebuje, kdyz si je dokaze doplnit?), vzajemne neprevoditelne datove typy atd. Chapu - pro jazyk pouzivany v praxi je to dobre reseni (treba cecko je mnohdy zbytecne benevolentní), ale normalni studenty to dokaze pekne otravit, kdyz hodinu "ladi" program, ktery ma najit maximum z deseti cisel. Tedy "ladit" - spis ten vetsinou na prvni pokus spravne napsany algoritmus osperkovat tak, aby byl prekladac spokojeny. Dneska bych asi pro prvni seznameni s programovanim pouzil prave Logo nebo treba Python.

    Dalsi nedostatky Pascalu:

    1) zbytecne zacmodrchana syntaxe (end s teckou)
    2) jazyk obsahuje speciality typu write/writeln, ktere v tom samem jazyku nejdou naprogramovat
    3) nejsou podporovany seznamy/dynamicka pole - to je pro jazyk urceny pro vyuku dost nevyhoda, klasicka pole jsou pro mnoho aplikaci strasne rigidni
    4) podpora vyctu je nedokonala - promennou typu vycet nelze jednoduse nacist ani vytisknout
    5) funkce jsou omezeny v tom, co mohou vracet za hodnoty
    6) pri programovani abstraktnich datovych typu se nevyhneme ukazatelum - to by IMHO v jazyce urcenem pro vyuku vubec nemelo existovat