Zdravím . Chcem začať s programovaním a chcem sa opýtať , akým programovacím jazykom by som mal začať , či kupiť knihu alebo z netu či pascal alebo delphi.. Dik
Osobne by som nešiel hneď tak zhurta. Najprv by som išiel na html. To je asi najlepší jazyk na začiatok. Nejde o to, naučiť sa príkazy. Tie si nájdeš na nete, alebo skopíruješ zo starých súborov ktoré si už robil, ale ten jazyk treba pochpojiť. Z môjho pohľadu je už spomínaný html najlepší na začiatok. Potom by som pokračoval s CSS, php.
z kompilovaných: C# , tutok elitistov čo ti radia C (že, @matwejo ) ignoruj, C je také že si z neho trhajú vlasy aj profíci, nie to ešte začiatočníci, to ti akurát tak celé programovanie znechutí a vydesí ťa že aké je to ťažké a nepochopiteľné a neproduktívne...
...rozhodne nezačínaj Javou, lebo tá ťa naučí všetky najhoršie návyky čo v programovaní existujú.
ale že "z dynamických ruby alebo python", s tým môžem súhlasiť, akurát majú nevýhodu že majú silno neštandardnú syntax, čiže fakt odporúčam C#, high-level veľmi dobre nadizajnovaný jazyk z c-like syntaxou vďaka čomu potom budeš schopný čítať c-like kód aj keď bude v jazyku čo nepoznáš.
@midnight ach Miro, sam vies aky je rozdiel medzi programovanim a kodenim a ked sa ma ucit programovat, potrebuje pochopit algoritmizaciu, low-level zaklady a skakat okolo magie najprv ...
a mimoto C# je objektovy, urcite by bolo dobre najprv si prejst proceduralny sposob a od neho nadviazat objektovy ... a ked uz ma rovno skakat do "another way of thinking" cize objektovo-funkcionalne je ruby a python lepsia volba ako C#, aj ked su interpreted, nastavuju mysel na uplne ine odlisne zmyslanie ako klasicke objektovky odvodene od proceduralov ako C#, Java, Delphi atd.
a jasne, najlepsi je C# a preto sa rovno uci v prvaku na MIT, Caltechu, EPFL a pod.
súhlas že ich potrebuje pochopiť. nesúhlas že ich na seba má nechať vygrcnúť všetky naraz skrz jazyk kde sa bez dokonalého chápania všetkých low-level základov nedá spraviť absolútne nič. myslím že môj názor na toto už poznáš, už o tom kedysi diskusie boli, že školy fungujú celé úplne naopak, namiesto toho aby šli z vrchu, z povrchu postupne do hĺbky, tak začnú od atómov ktoré ti samé osebe na nič nie sú, a čakajú že ťa bude motivovať... neviemčo, a že s touto nulovou motiváciou to vystavajú do nejakých v praxi použíteľných úrovní, a že si ešte vtedy ten low-level budeš pamätať.
hovadina.
začínaš povrchnou znalosťou a schopnosťou praktického použitia, postupne prenikáš do hĺbky. čiže high-level a algoritmizácia, zvyknutie si na syntax a vo všeobecnosti uvažovanie a pracovanie s programovacím jazykom všeobecne, a keď si v tom doma a schopný prakticky robiť, začneš prenikať hlbšie a hlbšie, až sa dostaneš k železu.
...myslíš že ja som sa učil nejak inak?
"urcite by bolo dobre najprv si prejst proceduralny sposob a od neho nadviazat objektovy"
...lebo? keď sa učíš jazdiť s autom tiež ti najprv povedia že bude lepšie naučiť sa najprv jazdiť s konským povozom?
"cize objektovo-funkcionalne je ruby a python"
jediná výhrada moja voči nim bola ich prudko netypická syntax, ktorá mi nepríde ako dobrá na prvé stretnutie s programovaním. nech si najprv zvykne na štandardnú c-like syntax (ale na high-level), potom nech ide na exotické novotvary.
"a jasne, najlepsi je C# a preto sa rovno uci v prvaku na MIT, Caltechu, EPFL a pod."
mhm, a keď ti niekto povie že o programovaní nič nevie a že sa chce začať učiť základy tak ho hneď pošleš na špičkovú IT vysokú školu, hej?
nehnevaj sa, ale... tebe čo sa stalo? pamätám si ťa ako silno rozumného človeka, ale v poslednom čase produkuješ stále viac a viac podivných vecí...
@midnight
a mozno sa nestalo nic mne, ale tebe - a to tu mozeme polemizovat do rana,
ako mame rozdielny pristup k tomu teda ... ja rad zaklady niecoho co nepotrebuje skoro ziadny podklad (k ANSI C ti staci gcccko, C# je prasa velke) a ucit to postupne stavanim na tom. Ak ho C odradi, nie je to chyba algoritmizacie a programovania, ale jeho. C nema az taku super zlozitu syntax. Urcite by sa dalo rozmyslat, kde spravit tu pomyslenu latku na prechod k objektom a high-level veciam.
analogia so soferovanim mi nesedi, skor by som ju okresal na 1. C - ucit sa zapnut motor, otacat volantom, preradovat , 2. C# - ist do premavky z cviciska, vsimat si okolie, interakciu, reagovat na situacie, parkovanie a pouzitie znalosti dopr. znaciek v praxi
na python ruby som naschval napisal to zmyslanie v uvodzovkach, pretoze dnes je trendom od zakladu skusit vychovat programmerov, ktori budu na tuto "podivnu" syntax zvyknuti a rozmyslat tym stylom. Je to novy approach uplne a skusa sa to teraz, ci to ma zmysel a na urcite projekty je to velmi efektivne (ako ranne podchytenie agilneho vyvoja, TDD a BDD).
@matwejo
"(k ANSI C ti staci gcccko, C# je prasa velke)"
k ansi c ti stačí gccčko, samostatný editor, debugger, nainštalovať osobitne, nakonfigurovať cesty, prepínače, include paths, pochopiť pointu headerov a ich linkovania, zistíť že máš zle nastavené include paths, hrabať sa v konfigurákoch...
...C# stiahneš a nainštaluješ za 20 minút, spustíš a programuješ.
Skus sa pozriet na to Ccko najprv a ked sa naucis v Ccku pointre, pracu s pamatou (tak aby si neprodukoval memory leaky a segmentation faulty), zaklady objektoveho programovania... tak potom sa mozes posunut dalej k viac high-level jazykom, bud C# alebo cokolvek co sa ti zapaci.
Ked prejdes na nejaky ten vyssi programovaci jazyk, tak by si mal skusit rozne veci ako pracu s databazou, nejaku primitivnu grafiku, zlozitejsie datove struktury (stromove nejake) a podobne...a postupne zistit co ta najviac bavi a podla toho si aj vybrat nejaky vhodnejsi jazyk. Lebo napriklad klasicke weby nebudes robit v C# ale v php/js. Bankove aplikacie sa zas robia hlavne v Jave. Grafika sa robi v C++ a tak dalej. Je vzdy treba pouzit "right tool for the right job", cize zbytocne ti tu niekto bude vypisovat, ze nejaky jazyk je najlepsi, kazdy je dobry na nieco ine.
Zacal by som klasicky s Cckom, na nete mas vyborne lekcie, na webe cplusplus.com napriklad. Hlavne je pochopit fakt tie elementarne veci - algoritmizaciu (tzn. sposob akym problem/ulohu prevedies na algoritmus), pracu s pamatou (aby si nevytvaral zabugovane aplikacie co padaju kvoli chybam pri praci s pamatou) a nejake objektove principy potom. Zbytok su uz take specificke veci, ktore sa naucis podla toho aky jazyk pouzivas.
Roleta je špeciálny inkognito mód, ktorým skryješ obsah obrazovky pred samým sebou, alebo inou osobou v tvojej izbe (napr. mama). Roletu odroluješ tak, že na ňu klikneš.
17 komentov
z kompilovanych - C
z dynamickych - python alebo ruby
Ale ja neprogramujem, takže neporadím. @4
...rozhodne nezačínaj Javou, lebo tá ťa naučí všetky najhoršie návyky čo v programovaní existujú.
ale že "z dynamických ruby alebo python", s tým môžem súhlasiť, akurát majú nevýhodu že majú silno neštandardnú syntax, čiže fakt odporúčam C#, high-level veľmi dobre nadizajnovaný jazyk z c-like syntaxou vďaka čomu potom budeš schopný čítať c-like kód aj keď bude v jazyku čo nepoznáš.
a mimoto C# je objektovy, urcite by bolo dobre najprv si prejst proceduralny sposob a od neho nadviazat objektovy ... a ked uz ma rovno skakat do "another way of thinking" cize objektovo-funkcionalne je ruby a python lepsia volba ako C#, aj ked su interpreted, nastavuju mysel na uplne ine odlisne zmyslanie ako klasicke objektovky odvodene od proceduralov ako C#, Java, Delphi atd.
a jasne, najlepsi je C# a preto sa rovno uci v prvaku na MIT, Caltechu, EPFL a pod.
"otrebuje pochopit algoritmizaciu"
súhlas.
"low-level zaklady"
súhlas že ich potrebuje pochopiť. nesúhlas že ich na seba má nechať vygrcnúť všetky naraz skrz jazyk kde sa bez dokonalého chápania všetkých low-level základov nedá spraviť absolútne nič. myslím že môj názor na toto už poznáš, už o tom kedysi diskusie boli, že školy fungujú celé úplne naopak, namiesto toho aby šli z vrchu, z povrchu postupne do hĺbky, tak začnú od atómov ktoré ti samé osebe na nič nie sú, a čakajú že ťa bude motivovať... neviemčo, a že s touto nulovou motiváciou to vystavajú do nejakých v praxi použíteľných úrovní, a že si ešte vtedy ten low-level budeš pamätať.
hovadina.
začínaš povrchnou znalosťou a schopnosťou praktického použitia, postupne prenikáš do hĺbky. čiže high-level a algoritmizácia, zvyknutie si na syntax a vo všeobecnosti uvažovanie a pracovanie s programovacím jazykom všeobecne, a keď si v tom doma a schopný prakticky robiť, začneš prenikať hlbšie a hlbšie, až sa dostaneš k železu.
...myslíš že ja som sa učil nejak inak?
"urcite by bolo dobre najprv si prejst proceduralny sposob a od neho nadviazat objektovy"
...lebo? keď sa učíš jazdiť s autom tiež ti najprv povedia že bude lepšie naučiť sa najprv jazdiť s konským povozom?
"cize objektovo-funkcionalne je ruby a python"
jediná výhrada moja voči nim bola ich prudko netypická syntax, ktorá mi nepríde ako dobrá na prvé stretnutie s programovaním. nech si najprv zvykne na štandardnú c-like syntax (ale na high-level), potom nech ide na exotické novotvary.
"a jasne, najlepsi je C# a preto sa rovno uci v prvaku na MIT, Caltechu, EPFL a pod."
mhm, a keď ti niekto povie že o programovaní nič nevie a že sa chce začať učiť základy tak ho hneď pošleš na špičkovú IT vysokú školu, hej?
nehnevaj sa, ale... tebe čo sa stalo? pamätám si ťa ako silno rozumného človeka, ale v poslednom čase produkuješ stále viac a viac podivných vecí...
a mozno sa nestalo nic mne, ale tebe - a to tu mozeme polemizovat do rana,
ako mame rozdielny pristup k tomu teda ... ja rad zaklady niecoho co nepotrebuje skoro ziadny podklad (k ANSI C ti staci gcccko, C# je prasa velke) a ucit to postupne stavanim na tom. Ak ho C odradi, nie je to chyba algoritmizacie a programovania, ale jeho. C nema az taku super zlozitu syntax. Urcite by sa dalo rozmyslat, kde spravit tu pomyslenu latku na prechod k objektom a high-level veciam.
analogia so soferovanim mi nesedi, skor by som ju okresal na 1. C - ucit sa zapnut motor, otacat volantom, preradovat , 2. C# - ist do premavky z cviciska, vsimat si okolie, interakciu, reagovat na situacie, parkovanie a pouzitie znalosti dopr. znaciek v praxi
na python ruby som naschval napisal to zmyslanie v uvodzovkach, pretoze dnes je trendom od zakladu skusit vychovat programmerov, ktori budu na tuto "podivnu" syntax zvyknuti a rozmyslat tym stylom. Je to novy approach uplne a skusa sa to teraz, ci to ma zmysel a na urcite projekty je to velmi efektivne (ako ranne podchytenie agilneho vyvoja, TDD a BDD).
kurva ani gifyo mi nejde načítať...
jednoducho, I came here to troll and chew bubblegum and I'm... all out of trolling, actually
*sad blkrisq is sad*
"(k ANSI C ti staci gcccko, C# je prasa velke)"
k ansi c ti stačí gccčko, samostatný editor, debugger, nainštalovať osobitne, nakonfigurovať cesty, prepínače, include paths, pochopiť pointu headerov a ich linkovania, zistíť že máš zle nastavené include paths, hrabať sa v konfigurákoch...
...C# stiahneš a nainštaluješ za 20 minút, spustíš a programuješ.
uplne teraz zavadzas, napr. na linuxe uz je, (co ak pouziva linux?) ... a na win staci napr. nainstalovat devcpp
Ked prejdes na nejaky ten vyssi programovaci jazyk, tak by si mal skusit rozne veci ako pracu s databazou, nejaku primitivnu grafiku, zlozitejsie datove struktury (stromove nejake) a podobne...a postupne zistit co ta najviac bavi a podla toho si aj vybrat nejaky vhodnejsi jazyk. Lebo napriklad klasicke weby nebudes robit v C# ale v php/js. Bankove aplikacie sa zas robia hlavne v Jave. Grafika sa robi v C++ a tak dalej. Je vzdy treba pouzit "right tool for the right job", cize zbytocne ti tu niekto bude vypisovat, ze nejaky jazyk je najlepsi, kazdy je dobry na nieco ine.
Zacal by som klasicky s Cckom, na nete mas vyborne lekcie, na webe cplusplus.com napriklad. Hlavne je pochopit fakt tie elementarne veci - algoritmizaciu (tzn. sposob akym problem/ulohu prevedies na algoritmus), pracu s pamatou (aby si nevytvaral zabugovane aplikacie co padaju kvoli chybam pri praci s pamatou) a nejake objektove principy potom. Zbytok su uz take specificke veci, ktore sa naucis podla toho aky jazyk pouzivas.