Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: novomente 11. 06. 2019, 13:15:03

Název: Má smysl učit se Pascal (Delphi)?
Přispěvatel: novomente 11. 06. 2019, 13:15:03
Dnes je programovací jazyk Pascal již dávno překonaný jazyky JAVA, C# etc. Ale, má smysl zabývat se Pascalem za účelem, pro který byl vymyšlen? Tedy pro výuku programování?
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Gabriel Mlocik 11. 06. 2019, 13:34:16
Pre začiatočníkov bych už skôr doporučil Python, C, prípadne Golang alebo Lua.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Idris 11. 06. 2019, 13:34:50
Pro výuku je vhodný jakýkoliv “rozumný” jazyk, Pascal je poměrně rozumný co do syntaxe i paradigmatu.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: MalyTomi 11. 06. 2019, 14:35:23
Ako dlhorocny vyvojar v Delphi, a v zaciatkoch v Pascale ti mozem povedat, ze to uz nema zmysel. To, co by si urobil v pascale vies hravo urobit aj v c# v konzole. A ovela lahsie. Delphi najma zabilo vyvojove prostredie, ktore je jednak strasne drahe a dost zabugovane. Visual studio si vies stiahnut aj zadarmo, a kopec veci sa tam da urobit ovela lahsie, ako v delphi.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Zdenek Henek 11. 06. 2019, 16:09:11
Pokud máš dostatek literatury a chceš se sám učit, tak proč ne. Pamatuju si, jak jsem ještě na 8bitech začínal s Oxford Pascalem. Důležitá byla tehdy dostupnost dokumentace. K internetu jsem se poprvé dostal až za pár let ...

Pokud chceš zkusit něco jiného, ale s důrazem pro začátečníky.

Podívej se třeba na Processing.
https://processing.org/
https://natureofcode.com/ zajímavá kniha
http://processingjs.org/  processing v javascriptu
https://www.openprocessing.org/browse/# ukázky vizualizací

je to jediný jazyk (z těch mě známých), který má knihu programování pro umělce dokonce už druhé vydání
https://www.amazon.com/Processing-Programming-Handbook-Designers-Artists/dp/026202828X/ref=sr_1_6?s=books&ie=UTF8&qid=1406934187&sr=1-6&keywords=processing
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Martin Dráb 11. 06. 2019, 16:23:35
Citace
Dnes je programovací jazyk Pascal již dávno překonaný jazyky JAVA, C# etc. Ale, má smysl zabývat se Pascalem za účelem, pro který byl vymyšlen? Tedy pro výuku programování?
Co se týče různých konstrukcí (generika, anonymní/lambda věci...), tak ty se do (Object) Pascalu dostaly, ač asi o něco později a v některých případech mi syntaxe (v porovnání s vámi jmenovanými jazyky) přijde poměrně kostrbatá. Ale rozhodně to není tak, že by ten jazyk co se týče moderních vlastností zaostával.

Je ale určitě pravda, že ve většině pracovních nabídek se tento jazyk asi nevyskytuje.

Citace
Ako dlhorocny vyvojar v Delphi, a v zaciatkoch v Pascale ti mozem povedat, ze to uz nema zmysel. To, co by si urobil v pascale vies hravo urobit aj v c# v konzole. A ovela lahsie. Delphi najma zabilo vyvojove prostredie, ktore je jednak strasne drahe a dost zabugovane. Visual studio si vies stiahnut aj zadarmo, a kopec veci sa tam da urobit ovela lahsie, ako v delphi.
V posledních letech mi přijde, že se situace dost zlepšila. I co se týče ceny (ta je stále vysoká, ale často mívají nějaké akce, které alespoň trochu pomohou), nedávno byla vytvořena Community edice (asi po vzoru Visual Studia), která je zdarma s určitým omezením a měla by se co do schopností rovnat edici Professional.

Na výraznější problémy jsem narážel v době, kdy bylo aktuální Turbo Delphi (2006). Pak jsem dlouho pracoval s XE2 a pro moje účely vše fungovalo bez potíží.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Wal-De-Mar 11. 06. 2019, 16:28:45
Nemá, strata času. Pred štvrťstoročím, v 1994, to bol tretí najpoužívanejší jazyk. Ale odvtedy stráca. A to výrazne - pred piatimi rokmi už bol 16. najpoužívanejší, dnes je ... 218!
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: RDa 11. 06. 2019, 16:44:55
Jako clovek co zacal v Pascalu a v dobe DOSove si naprgramoval GUI na urovni W311/W95 vam reknu, ze bych byl opravdu radsi, kdyby nas tenkrat na stredni radeji naucili C, ten prechod byl pro me znacne nepohodlny a s C++ jsem se neszil nikdy - jsem radeji, kdyz vim co program presne dela, nez lovit nejake polymorfni objekty pres sedmy ukazatel :)

Tem, co se programovani nebudou pak dal venovat je to jedno.. ale tem, ktere to zaujme pak zacne byt Pascal (at uz FPC i s GUI moznostma) znacne omezujici. Je to jako se ucit finstinu.. neni to zcela k nicemu, ale extra vyuziti to nema.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: KarelE 11. 06. 2019, 17:37:47
Projekty Lazarus a Free Pascal jsou živé, takže učit se to stále dá.

Delphi jako takové stále existuje. Jenže:

1. Je drahé. Vyjde zhruba na dvojnásobek Visual Studia a nemá žádnou komerční verzi zdarma. Takže každý, kdo bude potřebovat koukat do zdrojáků nebo je kompilovat, musí mít placenou licenci. To dnes už není zvykem, projekty psané ve Visual Studiu dnes můžete přeložit i zdarma.
2. Mají hodně zvláštní politiku nových verzí - s novou verzí se vždycky něco rozbije. Člověk si z jiných jazyků už zvykl na zpětnou kompatibilitu. Tady se na ní nehledí, respektive "to be as compatible as possible".
3. Úplná katastrofa je stav knihoven. Například pro Oracle mají hned dvě, ale každá něco neumí. A na dokumentaci čas nezbyl. Druhá věc je, že do nich nedávají nové věci dostatečně rychle. Například Oracle od verze 12.2 umí v SQL VARCHAR2 až o velikosti 32k. Jenže jakmile to zapnete, tak vám aplikace přestane fungovat, protože knihovna s tím nepočítá a všude cpe default 4000 bytů.

Učit se na tom dá. Ale komerční produkt bych na tom už nestavěl. A když už, tak Free Pascal a Lazarus. Na Delphi zapomeňte, to je dnes těžká rýžovačka na firmy, které stále ještě nezvládly přepsat své legacy věci do něčeho přívětivějšího. Mají příliš malý tým, než aby to udrželi plně funkční včetně knihoven.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: fortran1986 11. 06. 2019, 19:22:54
...

Myslíte že pri prvom jazyku určenom na výuku záleží na jeho používanosti? Najprv je dôležité naučiť sa dobre programovať a potom si môže vybrať jazyk, ktorý sa reálne používa a zároveň mu bude vyhovovať. Bežný programátor sa za život naučí  desiatky jazykov a 5-10 ich pozná do hĺbky a každý mu určitým spôsobom rozšíri obzory. Na syntaxi až tak nezáleží, ale je dôležíté aby ho ten prvý jayk dostatočne zaujal natoľko, že pri ńom chvíľu ostane. Trebárs si v tom spraví nejakú hru, alebo zoberie raspberry pi a naprogramuje si niečo čo ohúri jeho kamarátov. Z pascalu sa lahko prechádza aj na nízkoúrovňové aj na vysokoúrovňové jazyky.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Wal-De-Mar 11. 06. 2019, 23:44:45
...

Myslíte že pri prvom jazyku určenom na výuku záleží na jeho používanosti? Najprv je dôležité naučiť sa dobre programovať a potom si môže vybrať jazyk, ktorý sa reálne používa a zároveň mu bude vyhovovať. Bežný programátor sa za život naučí  desiatky jazykov a 5-10 ich pozná do hĺbky a každý mu určitým spôsobom rozšíri obzory. Na syntaxi až tak nezáleží, ale je dôležíté aby ho ten prvý jayk dostatočne zaujal natoľko, že pri ńom chvíľu ostane. Trebárs si v tom spraví nejakú hru, alebo zoberie raspberry pi a naprogramuje si niečo čo ohúri jeho kamarátov. Z pascalu sa lahko prechádza aj na nízkoúrovňové aj na vysokoúrovňové jazyky.

Bežný programátor sa za život naučí DESIATKY jazykov??? A z toho až 5 - 10 pozná DO HĹBKY??? A len tak si v niektorom z nich urobí HRU??? Kde na také nezmysli chodíš človeče?
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Ink 12. 06. 2019, 04:35:35
Výuka programování je dost široký pojem. Pro praxi ten jazyk moc není a co se týče teorie a pochopení principů, existují IMO také lepší varianty. Otázka zní, kdo je ten vyuučovaný, kým se má stát a jestli je daný jazyk pro to nejlepším možným prostředkem.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: qelurg 12. 06. 2019, 05:36:04
nemá to smysl, je to plýtvání časem
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: robin martinez 12. 06. 2019, 07:38:17
u nas v praci mame hlavni softy psany v Delphi. Nevim, jak je to s tou cenovou politikou a licencema, ale kdyz vidim, kolik za to firma utraci a jak to IDE potom absolutne nefunguje, tak nechapu, ze jsou schopny ten produkt prodavat.

Za me urcite ne, jsou lepsi jazyky. Driv jsem delal rekreacne v pascalu a delphi 7, nicmene vratit bych se k tomu uz fakt nechtel.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: fortran1986 12. 06. 2019, 08:58:52
...

Myslíte že pri prvom jazyku určenom na výuku záleží na jeho používanosti? Najprv je dôležité naučiť sa dobre programovať a potom si môže vybrať jazyk, ktorý sa reálne používa a zároveň mu bude vyhovovať. Bežný programátor sa za život naučí  desiatky jazykov a 5-10 ich pozná do hĺbky a každý mu určitým spôsobom rozšíri obzory. Na syntaxi až tak nezáleží, ale je dôležíté aby ho ten prvý jayk dostatočne zaujal natoľko, že pri ńom chvíľu ostane. Trebárs si v tom spraví nejakú hru, alebo zoberie raspberry pi a naprogramuje si niečo čo ohúri jeho kamarátov. Z pascalu sa lahko prechádza aj na nízkoúrovňové aj na vysokoúrovňové jazyky.

Bežný programátor sa za život naučí DESIATKY jazykov??? A z toho až 5 - 10 pozná DO HĹBKY??? A len tak si v niektorom z nich urobí HRU??? Kde na také nezmysli chodíš človeče?

Samozrejme. A nie sú to nezmysly. U mňa bola takáto postupnosť:

1.   Začínal som v Basicu bol rok 1997 (QBASIC v MS-DOSe) tam som si ako malý siedmak narogramoval jednoduché 2D hry a alebo jednodcuhé gui, kalkulačku a robil som v ňom ďalšie blbovinky. alebo som upravoval Už existujúce basic hry. a vlastne tak som sa naučil základy programovania.

2.   Keďže basic mi prestával stačiť (nemal podporu prerušení biosu ani inline ASM takže som si nevedel rozbehnúť ani myš) prešiel som k turbo pascalu pri ňom som zotrval cca 2 roky. Naučil som sa základy OOP ale nechápal som celkom načo je to dobré.

3.   Keď nastala doba že som si chcel nakódiť niečo pre windows (tuším rok 2001 alebo 2002) prešiel som k delphi (upravený pascal s pár keywordami navyše v ktorom sa ale programovalo dosť odlišne ako v Turbo Pascale) Pri komponentách som konečne som pochopil načo sú dobré tie objekty. Aj keď VCL  malo dosť hnusný objektový model. Programoval som tam aj vlastné vizuálne VCL komponenty čo nebolo vôbec jednoduché. Takže áno môžem povedať že tento jazyk poznám do hĺbky aj keď som sa ním neživil. Urobil som v ňom grafický program na úpravu obrázkov nakódil som si tam rôzne filtre. A kopec ďaších vecí.

4.   Naučil som sa PHP ktoré som potom používal aj profesionálne (živil som sa ním) niekolko rokov. – V tomto jazyku poznám všetky zákutia takže môžem povedať že ho poznám do hĺbky. Aj keď ten jazyk doslova nemám rád. A posledné roky sa mu už nevenujem. Zmeny v 7mičke už sú mimo maňa.

5.   Naučil som sa základy JS – postupne som sa v ňom zdokonaloval až som sa ho naučil na profi úrovni.

6.   Naučil som sa C#. Pri ktorom som zotrval asi najdlhšie. Taktiež ho poznám do hĺbky niekolko rokov som sa ním aj živil.

7.   Naučil som sa F# (rok 2011), zdokonaloval som sa v JS (Babel, TS) – obidva tieto jazyky poznám  do hĺbky )

8.   Teraz sa cca 5 rokov živím ako frontendista najintenzívnejšie používam JS a TS medzitým aj F#  (pre svoje súkromné potreby) C# ma teraz nežíví (predtým ma živilo cca 3 roky) ale používam ho tiež pre svoje projekty.

Medzitým som sa naučil X ďalších jazykov ako SQL, ELM, Python, Java, C / C++, Ruby, Visual Basic,  Scheme, Erlang, VBA. pri ktorých ale nemôžem povedať že ich poznám do hĺbky pretože som v nich neprogramoval dlhšie ako niekoľko mesiacov (no v SQL, T-SQL áno to používam furt – aj keď teraz ako frontendista ho používam len v rámci voľného času ale boli časy keď som ho ako backendista potreboval). Na to aby programátor poznal jazyk do hĺbky a poznal všetky jeho zákutia v ňom musí intenzívne programovať niekoľko rokov. A vôbec si v tomto smere nefandím lebo sú medzi nami programátori, ktorí sa tých jazykov za život naučili oveľa viac ale ich život sa točí len okolo kódenia čo zase neni môj prípad.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Zdeno Sekerák 12. 06. 2019, 10:33:18
www.trsek.com je tam príručka pre začiatočníkov www.trsek.com/pascal/Príručka_pre_Pascal_(lite)
Inak odpoved na otázku: Nemá zmysel sa učiť pascal. Bohužiaľ.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Radovan . 12. 06. 2019, 19:36:20
Keďže basic mi prestával stačiť (nemal podporu prerušení biosu ani inline ASM takže som si nevedel rozbehnúť ani myš)
Možná ti zničím mládí: ;D
Kód: [Vybrat]
mouseInit:
  ax = 0
  GOSUB driver
RETURN

mouseShow:
  ax = 1
  GOSUB driver
RETURN

mouseHide:
  ax = 2
  GOSUB driver
RETURN

mouseStatus:
  ax = 3
  GOSUB driver
  IF mb = 1 THEN
    ... nějaká činnost ...
  END IF
RETURN

driver:
  DEF SEG = VARSEG(asm)
  CALL Absolute(ax, mb, mx, my, VARPTR(asm))
RETURN

mouseStart:
  DIM asm AS STRING * 54
  FOR a = 1 TO 54
    READ a$
    MID$(asm, a) = CHR$(VAL("&H" + a$))
  NEXT a
  GOSUB mouseInit
  DATA 55,89,E5,8B,5E,06,8B,17,8B,5E,08,8B,0F,8B,5E,0C,8B,07
  DATA 8B,5E,0A,8B,1F,1E,07,CD,33,53,8B,5E,06,89,17,8B,5E,08
  DATA 89,0F,8B,5E,0C,89,07,58,8B,5E,0A,89,07,5D,CA,08,00,90
RETURN
Někde se mi tu válí tluuustá knížka QBasic Kompendium, možná to pochází zrovna z ní. Ale to už je jenom nostalgie.

A Pascal? I skladník si může přečíst Vergilia v originále, a Pascal je taková počítačová latina. Jako výukový jazyk je dodnes nepřekonaný, což je pro moderní jazyky dost velká ostuda. Některé věci se v něm totiž naučí mnohem lépe, a o dost méně bolestivě.

Pokud se takový pascalista jednou dostane třeba k siemensímu SCL, ve kterém se řídí průmyslové provozy včetně jaderných, bude se cítit jako doma. Na rozdíl od vyděšeného javovského gůgliče metod!
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Ink 13. 06. 2019, 06:25:06
A Pascal? I skladník si může přečíst Vergilia v originále, a Pascal je taková počítačová latina. Jako výukový jazyk je dodnes nepřekonaný, což je pro moderní jazyky dost velká ostuda. Některé věci se v něm totiž naučí mnohem lépe, a o dost méně bolestivě.

Tohle mě zajímá - co konkrétně Pascal umí tak skvěle naučit a třeba Python to nezvládne? Mě napadají pro dnešní praxi naprosto nepotřebné věci typu implementace spojového seznamu.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: gill 13. 06. 2019, 09:26:31
Tohle mě zajímá - co konkrétně Pascal umí tak skvěle naučit a třeba Python to nezvládne? Mě napadají pro dnešní praxi naprosto nepotřebné věci typu implementace spojového seznamu.

na to jste přišel kde?

https://www.tutorialspoint.com/python/python_linked_lists.htm
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Radovan . 13. 06. 2019, 19:09:09
Tohle mě zajímá - co konkrétně Pascal umí tak skvěle naučit a třeba Python to nezvládne? Mě napadají pro dnešní praxi naprosto nepotřebné věci typu implementace spojového seznamu.
V BASICu jsem spojové seznamy nikdy nepotřeboval ani neřešil. Jsou proto nepotřebné?
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Vlasta A 14. 06. 2019, 07:42:23
Uz pred docela dlouhou dobou nekdo prohlasil, ze PASCAL je nejlepsi programovaci jazyk pro na uceni se PASCALu. Takze asi tak...
Na pascalu nas ucili algoritmizaci a cast programovacich technik (stridali jsme to s C, takze z toho mela spousta lidi v hlave gulas, na druhou stranu pascal mel alespon nejake IDE). Osobne mi znalost pascalu pomohla, abych mohl udrzovat nejaky projekt v delphi, ale to byly v te dobe winXP nejvetsi hit na poli operacnich systemu, dneska uz s delphi diru do sveta clovek neudela. Naucit se spatne programovat se da s kazdym programovacim jazykem, nemyslim si, ze by samotny pascal pomohl nekomu byt lepsi programator, nez kdyby zacal s C nebo s necim modernejsim
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Ink 14. 06. 2019, 20:43:01
Tohle mě zajímá - co konkrétně Pascal umí tak skvěle naučit a třeba Python to nezvládne? Mě napadají pro dnešní praxi naprosto nepotřebné věci typu implementace spojového seznamu.
V BASICu jsem spojové seznamy nikdy nepotřeboval ani neřešil. Jsou proto nepotřebné?

Většina lidí je nepotřebuje implementovat. Zato potřebují řešit věci, které v Pascalu nejsou, například rozumné ošetření chyb nebo paralelní výpočty. To je v klasickém Pascalu, jak jsme se ho učili ve škole třeba my, úplně mimo dosah.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Radovan . 14. 06. 2019, 21:28:03
Ach ano, paralelní výpočty jsou v jazyce pro začátečníky a mírně pokročilé naprosto nepostradatelná věc.

Ale co je nerozumného na tom, že se program zastaví a řekne: "Na tomhle řádku došlo k překročení pole, dál nemůžu pokračovat."? Myslíš že něco ve stylu try/catch je k danému účelu vhodnější? Dokáže to Python vysvětlit lépe?

To mi připomíná skučení, že Raspberry Pi nezvládne video ve 4K, takže je k ničemu. Nezvládne. Jenže ona je to hračka pro děti, a pro svůj účel dost možná to nejlepší co je dnes k dostání... A jen tak mimochodem se s tím dá dělat i spousta dalších věcí, celkem pohodlně a bezpečně. Pascal je na tom podobně.

Vlasta A: Jo, to je pravda. Mám tady jednu starou učebnici Pascalu založenou na používání GOTO, a trochu mě její existence děsí ;D
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Martin Dráb 14. 06. 2019, 23:29:32
Citace
Zato potřebují řešit věci, které v Pascalu nejsou, například rozumné ošetření chyb

Jistě, v Pascalu bylo možné vracet chyby jen skrz návratové kódy. Neoznačoval bych ale vyhazování výjimek za vždy rozumnější alternativu – chybové kódy sice znamenají více práce, ale obvykle pak víte, kde přesně (a z jakého důvodu) k selhání došlo, než když celý blok obalíte do try/catch/finally a prostě řeknete, že se něco nepovedlo.

Citace
nebo paralelní výpočty
Minimálně Turbo/Borland Pascal, který se asi nejvíce proslavil, neměl moc k implementaci mechanismů pro paralelní výpočty důvod, jelikož běžel pod DOSem.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Ink 15. 06. 2019, 10:05:24
Citace
Zato potřebují řešit věci, které v Pascalu nejsou, například rozumné ošetření chyb

Jistě, v Pascalu bylo možné vracet chyby jen skrz návratové kódy. Neoznačoval bych ale vyhazování výjimek za vždy rozumnější alternativu – chybové kódy sice znamenají více práce, ale obvykle pak víte, kde přesně (a z jakého důvodu) k selhání došlo, než když celý blok obalíte do try/catch/finally a prostě řeknete, že se něco nepovedlo.

Existují i jiné způsoby - třeba Result/Either. Nicméně u výjimek nikdo nikomu nebrání ošetřovat chyby tak, že přesně víme, kde a proč k chybě došlo.

Citace
nebo paralelní výpočty
Minimálně Turbo/Borland Pascal, který se asi nejvíce proslavil, neměl moc k implementaci mechanismů pro paralelní výpočty důvod, jelikož běžel pod DOSem.

No a přesně o tohle jde. V DOSu už nikdo nepracuje; co v 90. létech mohlo dávat smysl, to už dnes moc smysl nedává. Pascal je dítě určité doby, dnes už podle mě pro účely výuky moc nevyhovuje.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Martin Dráb 15. 06. 2019, 10:27:54
Citace
Nicméně u výjimek nikdo nikomu nebrání ošetřovat chyby tak, že přesně víme, kde a proč k chybě došlo.
Já vím. Jen se dost často setkávám s přístupem "prostě to obalíme a neřešíme nic".

Citace
No a přesně o tohle jde. V DOSu už nikdo nepracuje; co v 90. létech mohlo dávat smysl, to už dnes moc smysl nedává. Pascal je dítě určité doby, dnes už podle mě pro účely výuky moc nevyhovuje.

To je pravda. Nicméně pokud budeme považovat Delphi za nástupce Pascalu (protože BP/TP se, řekněme od 90. let, už moc nevyvíjel), o možnosti paralelizace a synchronizace ochuzeni nejsme.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Wal-De-Mar 15. 06. 2019, 10:29:56
Ak sa človek chystá do akademickej sféry, minimálne z historických dôvodov má zmysel naučiť sa / preskúmať Pascal, aj jeho objektovú verziu.

Ak sa človek chystá do praxe, chce sa živiť programovaním v nejakom jazyku, len zatiaľ nemá jasno v ktorom, Pascal aj Delphi môže pokojne odignorovať, na jeho kariéru to nebude mať žiadny vply, a naučiť sa ktorýkoľvek z ďaleko perspektívnejších jazykov.

Čo na tak jednoduchej otázke naďalej riešite?
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Kit 15. 06. 2019, 11:11:46
Jistě, v Pascalu bylo možné vracet chyby jen skrz návratové kódy. Neoznačoval bych ale vyhazování výjimek za vždy rozumnější alternativu – chybové kódy sice znamenají více práce, ale obvykle pak víte, kde přesně (a z jakého důvodu) k selhání došlo, než když celý blok obalíte do try/catch/finally a prostě řeknete, že se něco nepovedlo.

Právě s výjimkami vím úplně přesně, kde k nim došlo a za jakých okolností, včetně hodnot, které do dané metody či funkce vstoupily a způsobily nestandardní stav. V chybových kódech spousta informací chybí a v tu chvíli už není způsob, jak je získat.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Radovan . 15. 06. 2019, 11:43:51
Pascal je dítě určité doby, dnes už podle mě pro účely výuky moc nevyhovuje.
Pascal je dítě určité myšlenky, dokážeš jí dnes něčím plnohodnotně nahradit? Co vyhovuje pro účely dnešní výuky, Scratch?

Naučíš se Pascal z roku 1970, a pak potřebuješ programovat paralelně. Je na to dnes už konečně vhodnější jazyk než ADA z roku 1979? Tam ti Pascal přijde hodně vhod. Ale zkus si na Adu přejít z Pythonu :o
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Ink 16. 06. 2019, 20:02:10
Pascal je dítě určité doby, dnes už podle mě pro účely výuky moc nevyhovuje.
Naučíš se Pascal z roku 1970, a pak potřebuješ programovat paralelně. Je na to dnes už konečně vhodnější jazyk než ADA z roku 1979? Tam ti Pascal přijde hodně vhod. Ale zkus si na Adu přejít z Pythonu :o

Tohle mě zajímá - proč by dnes zrovna Ada měla být nejvhodnější na paralelní programování?
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Idris 16. 06. 2019, 20:05:20
Jistě, v Pascalu bylo možné vracet chyby jen skrz návratové kódy. Neoznačoval bych ale vyhazování výjimek za vždy rozumnější alternativu – chybové kódy sice znamenají více práce, ale obvykle pak víte, kde přesně (a z jakého důvodu) k selhání došlo, než když celý blok obalíte do try/catch/finally a prostě řeknete, že se něco nepovedlo.

Právě s výjimkami vím úplně přesně, kde k nim došlo a za jakých okolností, včetně hodnot, které do dané metody či funkce vstoupily a způsobily nestandardní stav. V chybových kódech spousta informací chybí a v tu chvíli už není způsob, jak je získat.
V PHP nebo nějakém normálním jazyce?
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: novomente 29. 06. 2019, 10:52:29
Tak jsem si ten Pascal nějak tak pročetl (aniž bych se ho nějak zvlášť učil) a musím říct, že minimálně z historického hlediska to bylo docela zajímavé čtení. Člověk tak snadněji pochopí vývoj počítačových jazyků. Takže například na jazyku C (který vychází mimo jiné z podobných myšlenek jako Wirthův Pascal) je vidět, proč ho jeho autoři vymysleli tak jakým je a proč a jak řešili určité věci tak, jak je vyřešili.

Nabyté znalosti teď konečně mohu využít při čtení knížky Učebnice jazyka C od P. Herouta, v níž se o Pascalu dost mluví.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: Kit 29. 06. 2019, 13:03:26
Jistě, v Pascalu bylo možné vracet chyby jen skrz návratové kódy. Neoznačoval bych ale vyhazování výjimek za vždy rozumnější alternativu – chybové kódy sice znamenají více práce, ale obvykle pak víte, kde přesně (a z jakého důvodu) k selhání došlo, než když celý blok obalíte do try/catch/finally a prostě řeknete, že se něco nepovedlo.

Právě s výjimkami vím úplně přesně, kde k nim došlo a za jakých okolností, včetně hodnot, které do dané metody či funkce vstoupily a způsobily nestandardní stav. V chybových kódech spousta informací chybí a v tu chvíli už není způsob, jak je získat.
V PHP nebo nějakém normálním jazyce?

V PHP se s výjimkami pracuje perfektně. Normální jazyky to tak dobře zpracováno nemívají. V C++ programátoři obvykle přes výjimku pošlou jen jakýsi int nebo string, což je velmi chudé - skoro až nepoužitelné. Nedivím se, že nechtějí výjimky používat, když je tak prasí.
Název: Re:Má smysl učit se Pascal (Delphi)?
Přispěvatel: krouziciorel 30. 06. 2019, 22:47:47
Moderní Pascal má možná i dnes co nabídnout, kromě komerčního RAD Studia je k dispozici stále se vyvíjející parádní kombo FreePascal + Lazarus a informace od aktivních uživatelů vypadají nesmírně zajímavě. Programy v Turbo Pascalu už dnes kromě historických důvodů studovat netřeba, pro konečné rozhodnutí bych se ale podíval na programátora využívajícího Lazarus na chytrém telefonu a Raspberry:

https://www.quora.com/Is-Lazarus-worth-learning-today
http://kriscode.blogspot.com/

dle mého názoru velmi povedený článek od autora Castle game engine popisující moderní Pascal včetně parádních příkladů:

https://castle-engine.io/modern_pascal_introduction.html

zajímavá a obsáhlá dokumentace:

https://wiki.freepascal.org/Lazarus_Documentation

možnost převodu nativního kódu do Javascriptu:

https://wiki.freepascal.org/pas2js

podpora Androidu:

https://www.itnetwork.cz/programovani/delphi/diskuzni-forum-pascal-borland-turbo-freepascal/lamw-lazarus-android-module-wizard-5ab95f3555c94

podpora webových aplikací s několika zajímavými frameworky:

https://wiki.freepascal.org/Developing_Web_Apps_with_Pascal

a obrovské množství knihoven dělá z tohoto IDE velmi zajímavou alternativu. Moc se mi líbí "dosové" IDE FP inspirované stařičkým Turbo Pascalem pro příkazovou řádku, které v aktuální vývojové verzi konečně nemá problém s debuggerem GDB, i když se s češtinou stále nekamarádí a klikací Lazarus běžící skutečně použitelně na starších Windows, Linuxu, BSD i na prvních verzích Raspberry.

Já dříve programováním zcela nepolíben jsem se před několika lety učil systém TADS3 pro tvorbu textových her, je však dost jednoúčelový a dnes se již nevyvíjí, takže jsem se rozhodoval mezi moderním Pascalem, Cčkem a Pythonem. Syntaxe Pascalu je mi zatím z těchto jazyků nejbližší, takže studuji právě jej s tím, že časem prozkoumám Heroutovu knihu o jazyce C a poté velmi povedené Pythoní kurzy Pyladies:

https://pyladies.cz/

Pokud se seznámím s více jazyky, budu si schopen vybrat ten ideální pro konkrétní účel. Třeba se mi zalíbí i Javascript, když je tak pěkně integrován s Lazarusem a částečná podpora pro Python už je také k dispozici:

https://wiki.freepascal.org/Using_Python_in_Lazarus_on_Windows/Linux

Je tedy možné, že Pascal je stále využitelný, to zjistím časem. Někteří uživatelé jej zatracují nebo se domnívají, že jeho OOP model je zastaralý, to je věc názoru. Rozhodně však doporučuji vyzkoušet aktuální Lazarus v dvojkové řadě a jeho zajímavá rozšíření, toto prostředí jsem si vedle také parádního VSCode a QT Creatoru oblíbil asi nejvíce.

Programy právě v něm naprogramované a mnohdy kombinující vlastnosti Pascalu a třeba C++ také stojí za to prozkoumat:

https://wiki.freepascal.org/Lazarus_Application_Gallery
https://wiki.lazarus.freepascal.org/Case_Studies
https://wiki.freepascal.org/FPC_Applications/Projects_Gallery
https://wiki.freepascal.org/Projects_using_Lazarus

Castle game Engine, Gestinux, Hedgewars, Lazpaint, Prometerp, Skychart, Virtualmoonatlas, Virtualplanet nebo ZCad jsou velmi pěkné aplikace a studiem jejich zdrojových kódů se člověk leccos naučí.

Přeji příjemné studium, všechny jazyky mají něco do sebe a určitě stojí za to jejich možnosti co nejvíce prozkoumat.