Vlákno názorů k článku Papírový počítač CGS od Jindru - sem taky videl toto: 10 PRINT "AHOJ : GOTO...

  • Článek je starý, nové názory již nelze přidávat.
  • 31. 12. 2002 11:18

    Jindru (neregistrovaný)

    sem taky videl toto:
    10 PRINT "AHOJ : GOTO 20
    20 neco : GOTO 30
    30 ......

    proste tomu cloveku nerekli, ze zpracovani automaticky pokracuje na dalsim radku.

    jinak myslim, ze BASIC je pro zacatecniky dobrej,
    jednoduchej. nemusi se kontrolovat ENDy a tak.

    presne, kdo chce psat prasacky, dokaze to v cemkoli.

  • 31. 12. 2002 11:56

    markon (neregistrovaný)

    jj, me nerekli tu drobnost, ze existuje i jiny prikaz nez GOTO LINE xx. Takze program jsem psal typem...

    10:neco
    20:neco

    pak jsem to prepsal
    10:neco
    15:neco
    20:GOTO LINE 15

    Jaksi jsem pozapomel ze existovali i astupne symboli :-) Takze proto se psalo po 10 radcich, abyste mezi to mohli jeste neco vlozit.. Pak to vypadalo tak, ze jste mezi 10 radek potrebovali narvat 100 radek kodu, takze jste odskocili jinam atd... Novejsi Basic nejsou nastesti tak strasne a umej posouvat radky kodu :-)

  • 31. 12. 2002 15:41

    Yeti (neregistrovaný)

    Kdo chce psát prasácky, dokáže to v čemkoli, ale důležité je, aby nemusel, zejména, když se učí programovat.

    Taky jsem začínal na BASICu (a assembleru, resp. já tehdy psal přímo kódy instrukcí v hex-editoru :-) a není to dobrý jazyk pro začátečníky.

    Dobrý jazyk pro začátečníky by měl umožňovat soustředit se na problém namísto válčení s podružnostmi. Takže by měl být (1) interpretovaný (nebo zcela transparentně kompilovaný), (2) mít přehlednou syntaxi a (3) umožňovat všechny základní programovací konstrukce bez nějakých triků.

    BASIC: jen (1).

    Assembler: nic.

    Pascal a C: částečně (2) a (3).

    Java: částečně (2) a (3).

    Python: (1) a (2) a částečně (3).

  • 31. 12. 2002 17:47

    Anselm (neregistrovaný)

    Souhlasim. Pascal (jak je notoricky znamo) byl primo navrzen pro vyuku programovani. Ja osobne si myslim, ze je pro zacatecniky nejlepsi, protoze je relativne high-level, strukturovany, a jeho prekladace jsou rychle i na 386. Ja zacal v r. 1991 v Pascalu, pozdeji pro me bylo velmi snadne prejit na C, C++ a Javu. To bych se napotil, kdybych zacal s Basicem a pak se snazil zbavit navyku na GOTO...

  • 2. 1. 2003 21:13

    xChaos (neregistrovaný)

    PascaL byl strasna nuda. Porad nejaky inicializace, a tak, stve mi to doted, libi se mi PHP ;)

    Nechapu, proc se z Basicu porad mluvi jen o tom strasnem cislovani radku. To byla vlastne jen pomucka, protoze nebyly fullscreen editory - pouze 8mi bity mely debilni Basicy - krome Sharpu MZ-800, ktery mel prikaz "renum", ktery se vsechno presilovalo opet po desitkovych krocich. Misto GOTO 10 se pouzival prikaz
    GOTO "navesti" a navesti se definovalo LABEL "navesti", a to uz bylo docela prijemne.

    A co teprve Turbo Basic na IBM PC - to byla uz docela pohoda, akorat u nas chybela dokumentace, protoze vsichni se hnali po hlave do Pascalu.

    Basic je docela prijemna koncepce programovani, kterou temer beze zbytku prejima treba PHP, Perl, a dalsi jazyky. Dalo by se to shrnout tim, ze program nezacina ve vzduchoprazdnu, ale uz urcitem predem definovanem prostredi, takze bez jakychkoliv inicializaci, zavadeni knihoven, apod. muzu rovnou zacit treba kreslit geometricke utvary po obrazovce, nebo vypisovat text, nebo tak. Proste jenom programuju - a nestaram se include fajly, deklarace promennych nebo dokonce celych procedur pred zacatkem programu, apod.

    Jak rikam, je skoda, ze par debilnich implementaci Basicu, jmenovite ZX Spectrum Basic (nemel ani ELSE!), IQ 151 basic, G-BASIC na PMD, Atari Basic a Commodore Basic (nejcastejsi prikaz: POKE ;-), a caste pretiskovani vsech tech zrudnosti v ruznych casopisech pro mladez, vyvolalo v tuzemskych kruzich takovou nechut k Basicu a naprosto nesmyslny obdiv k tak naprosto nepouzitelnemu pajazyku, jako je Pascal. (Kdyz uz, tak C aspon cloveka primeje uvazovat napul v assembleru, a tudiz optimalne ;-).

    Shrnuti - Basic jaky doopravdy je:

    1) nemusi se v nem cislovat radky
    2) existuji lokalni promenne, kdyz to chceme
    3) existuje moznost pouzivat rekurzi

    Basic muze by tak strukturovany, jak strukturovany
    program v nem napiseme. Vim, jaky byl muj sok,
    kdyz jsem kdysi videl jakysi program v Basicu
    psany pro Amigu, ktery se fakt hodne lisil od vseho
    to 10 PRINT "ZADEJ CISLO", ktere si vsichni pod pojmene Basic predstavuji.

    Skoda, ze pro Linux existuje tak malo Basic interpreteru - namatku tusim Yabasic, ktery splnuje podminku jednoduchosti, je to oficialni GNU projekt, ale neni... jak bych to rekl... neni tak docela nepodobny tomu Basicu pro Spectrum. Ale stejne - kreslit se v nem da po zavolani pouze jedineho prikazu "Window", ktery otevre X window - a to je velmi prijemne ;-)

    Napsat vlastni dobry Basic interpreter, pripadne pre-compiler (generoval by se zdrojak v jazyce C, ktery by slo prelozit do EXE souboru), je muj dlouholety sen.

  • 3. 1. 2003 11:20

    Jan Šimůnek (neregistrovaný)

    Existuje X-basic jako free v podobě interpreteru
    (modul převádějící do .exe je za peníze), jak pro
    wokna tak pro Linux. Odradila mě obrovská a nepřehledná
    dokumentace (jen ta bazální má několik set stran)
    a skutečnost, že se nedá pracovat s již naeditovanými
    texty programů, ale musí se použít zaintegrované
    prostředí s nepříliš kvalitním editorem.

  • 2. 1. 2003 11:14

    Jan Šimůnek (neregistrovaný)

    On ten BASIC má jednu obrovskou výhodu: Dají se jím
    napsat smysluplné (= v praxi použitelné) programy i
    bez kompletní znalosti syntaxe. (Byť člověk po čase
    zjistí, že s pomocí jiných příkazů by se to dalo
    napsat líp).
    U Pascalu (ale třeba i JAVY) strávíte spoustu času
    bez toho, že byste byli schopni napsat kód, který
    by byl k něčemu (a opisovat pečlivě vypreparované
    "školní" programy je dost neefektivní).
    Nehledě k tomu, že se posléze dostaneme k takovým
    zbytečnostem, jako je objektové programování, jehož
    smysl (vyjma rozdělení programu do samostatně odladitelných
    modulů) jsem dodnes nepochopil a jehož logiku (např.
    některé funkce jsou dostupné jen v dynamickém a některé
    jen ve statickém kontextu - většinou ty, u kterých
    by bylo potřeba, aby vzájemně splupracovaly) nechápu.
    Jo, kdyby tak někdo napsal kopmilátor, který by
    převedl program z BASICu do javovského bytového
    kódu ...

  • 5. 1. 2003 5:56

    Milan Sorm (neregistrovaný)

    smysl OOP ? zapouzdreni, dedicnost, polymorfismus. bez techto vlastnosti by program jako je treba muj dbMan nikdy nesel napsat tak pekne, prehledne a efektivne. a jak tu kdosi psal, ze myslet efektivne nuti C kvuli assembleru, tak to byl doufam vtip. efektivita neni o jazyku, ale o algoritmizaci. jazyk je jen prostredek vyjadrovani, tak jako jsou matematicke symboly a znamenka jednim ze zpusobu zapisu konkretnich fakt o realnem svete. a taky jsem tu cetl blabol o tom, ze perl cloveka nenuti deklarovat promenne a proto je skvelej. tak ja zacinam kazdy program v perlu use strict; prave proto, abych se donutil vsechno deklarovat. ale to je mozna jen o tom, ze mne zivot naucil, ze deklarovanim zabranim desitkem trapnych a zbytecnych chyb a proto se mi cas venovany deklaracim velmi rychle vrati v odvsivovani programu. to jen tak ze uz jsem nevydrzel cist kvanta nesmyslu.

  • 6. 1. 2003 10:22

    Jan Šimůnek (neregistrovaný)

    1. Zapouzdření se dá nahradit i v tom basicu tím, že
    prostě nebudu dělat GOTO do procedur a podprogramů
    (a pár podobných skopičin).
    2. Dědičnost a polymorfismus docela dobře nahrazují
    funkce COPY a PASTE při psaní programu (nehledě k tomu,
    že většina inteligentnějších programátorů to dokáže
    vyřešit univerzálněji napsanými procedurami, napsanými
    jednou pro vždy pro celý program).

    Jinak jen narůstá balastní kód (import tříd, z nichž
    využívám třeba jen jednu metodu) a vytvářením objektů
    roste nárok na paměť počítače a její obsluhu (tedy i
    rychlost počítače). Prakticky neexistuje problém, který
    by objektové programy řešily efektivněji než neobjektové.

  • 7. 1. 2003 15:15

    Radim (neregistrovaný)

    Ty jsi snad spadl z visne nebo co? Zapouzdreni jaksi plne v basicu (a snad ani v jinem neobjektovem prog. jaz. - ale nechci se o tom hadat, nevim) proste neudelas,
    Dedicnost a polymorfismus NENAHRADI zadne copy a paste - to je proste nesmysl, kteremu snad ani ty sam nemuzes verit - jak bys pak asi tak udelal nejakou zmenu, kdyz bys to 10x zkopcil a zjistil ze je to spatne? Univerzalne napsane procedury by to mozna castecne vyresily, ale plne nikoliv. Take dedicnost asi nicim moc nenahradis - to je proste tak skvela vlastnost objektu, ktera kdyz jsem byl nucen psat v C mi opravdu velmi a velmi chybela, stejne jako zapouzdreni.
    Import trid nedela v Jave vlastne vubec nic, tim jenom prekladaci oznamujes, ze ma identifikatory hledat taky nekde jinde. Muzes klidne psat uplne bez importu - pak ale musis vsude vypisovat cele cesty a jmena trid. Importem java nevytvari zadne objekty ani nic jineho - je to pouze poznamka pro prekladac, abys nemusel vypisovat cele napr. "javax.swing.JLabel" tak si importnes "javax.swing.*" a muzes pak psat jenom "JLabel", prekladac uz si zjisti, ze tim myslis to "javax.swing.JLabel". Import proste nic jineho neznamena.

  • 3. 7. 2004 0:24

    Petr Nevařil (neregistrovaný)

    Omlouvam se za prispevek - nasel jsem tento clanek a reakci na nej jen nahodou. S OOP jsem se poprve setkal v roce 92 na skole a pri prvnim nahlednuti ho jako 90% mych spoluzaku povazoval za zbytecnost. Pak jsem si dal tu praci a PROSTUDOVAL (ne procetl) jsem si uvod do OOP v prirucce TurboPascalu 5.5 (mimochodem podle meho nejlepe napsany navod na pochopeni OOP co jsem dodnes cetl). Krok za krokem jsem delal vse jak bylo psano a vytvoril primitivni editor obrazcu v OOP. Az kdyz fungoval, pochopil jsem jak je to mocny nastroj. Dnes patrim mezi pojidace kolacu (lidi z VUT Brno z konce 80let minuleho stoleti vi co to znamena) - na PC programuji v DELPHI. Zabyvam se ridicimy systemy stroju - 80% casu ASM pro 16bit Motoroly, 15% C++ pro Motoroly (prace s float je preci jen pohodlnejsi na necem vyzsim ;-) ) a 5% Delphi. Pokud se mam vyjadrit k jazykum obecne - zacinal jsem na Pascalu (kdyz nepocitam Basic na Spectru vypujcenem na weekend). Zkusil jsem Lisp, Prolog a dalsi jazyky na skole (linkovani neceho na ADT10.. nebo EC.... byl zazitek). Vetsina jazyku ma smysl a jak bylo receno - kdo umi napise smysluplnou vec i na TI57, kdo neumi muze psat v C-cku a presto mu na PC setriduje seznam o 5000 polozkach prez noc - to jsem na vlastni oci videl u jednoho ucetniho softu - pri setrizovani cca 5000 faktur dle casu to delal celou noc na Celeronu 600MHz. Soft byl psan "Panem Programatorem" v CPP. Tak nevim ci to byla chyba, predpokladam ze C-cka ne. Troufnu si rict, ze bych to mel na ADT rychleji i pouze se tremi paskovymi jednotkami (doufam ze to nekomu neco rika). Trochu jsem se rozkecal.
    Zaver pojidace kolacu
    1) OOP je jedinecny system a je potreba ho pochopit
    2) Vetsina jazyku najde uplatneni - kazdy se hodi na neco jineho. Ideal jako "Na vsechno Javu" nebo "Na vsechno C++" je podle meho blbost.
    Tak se mejte a odpustte, jestli jsem nekoho urazil, nebo jestli pisu blbosti.