Ahoj všetci,
rozhodol som sa investovať do seba a naučiť sa nejaký programovací jazyk, keď už je tá pandémia a ešte k tomu aj zima a dlhé večery.
To nie je taký problém, ale čo ma ťaží, to je výber jazyka - tu budem potrebovať pomoc.
Padol mi do oka Rust, lebo má pekné stránky a logo a všetko okolo. Myslíte že je to dobrý prvý jazyk na naučenie? Lebo ono tak trochu klamem, v podstate už som programoval, v BASIC-u, takže PRINT-y a GO TO mi nerobí žiaden problém.
Alebo aký jazyk doporučujete? A prečo? Nepáčia sa mi veľmi také jazyky kde je veľa šípok a potom sa píše pod seba a niekedy sa to spracúva od konca, inokedy od začiatku, to je taký bordel trošku.
Ďakujem za každú dobrú radu.
otazka znie, co chces programovat ?
pyton, alebo C, alebo PHP na web develop ?
Este sa zda, ze nechces pouzivat objektovo orientovany, ale proceduralny kod.
Pavel Tišnovský mal práve nedávno prednášku o Ruste, ale ešte nie je online. Celkovo to pre Rust vyznelo dosť pozitívne.
Python je celkom kamarátsky jazyk a hlavne väčšina umelej inteligencie sa motá okolo neho.
PDF z prednášky.
Tak už je online. Je to tá druhá prednáška čo spomínam v blogu.
Rust ako prvý jazyk? No neviem.
Asi by som začal s nejakým syntakticky jednoduchým, interpretovaným jazykom, osahal by som si to, skúsil niečo naprogramovať, popozerať cudzie programy na githube.
V mojej TOP 5 pre začiatočníka by minimálne 3x bol Python (lebo veľa materiálov a celkovo populárny jazyk), potom možno Lua (jednoduchosť)a keď už kompilovaný jazyk, tak asi skôr Go (populárne, jednoduché).
Co chces programovat?
Asi skôr niečo ako že keď mi chýba utilitka, tak si ju napíšem alebo sa pridám k zaujímavému projektu.
Na malé skriptíky často stačí bash/shell, inak množstvo práve interpretovaných jazykov, v nich to nabúšiš asi rýchlejšie, ak to ni eje obrovský projekt. Takže ešte raz - Python, Lua, Raku, Ruby - všetko pomerne rýchle na naučenie, pomerne vysokoúrovňové jazyky, množstvo "zlepšovátok" ktoré uľahčia prácu alebo ktoré by v nižších jazykoch boli rozpísané "na pol strany". Samozrejme, daňou za to je rýchlosť.
Nakoniec skončíš tým, že ak ťa to bude baviť, budeš vedieť viac jazykov a pre konkrétne použitie si vyberieš ten vhodný. Ale začal by som jednoducho, nekomplikovane, Pythonom (je v podstate na každom linuxovom stroji by default).
Ale pokiaľ bolo to všetko myslené nesarkasticky, zaujímavé jazyky s peknými logami, ale niektoré majú aj šípky, tak si vyber:
Ocaml, Haskell / Idris / Agda, D, J (áno, všetko stále jazyky, samozrejme do googla/ddg/qwant nedávaj len "J" ale radšej niečo ako "J programming language"), Clojure (alebo lispové jazyky všeobecne, napríklad aj nad Pythonom postavený Hy), ... Je toho asi tak trilión
Jednoduché. Pozriem všetky a začnem s hadom. Ďakujem a lúčim sa.
Ja som zacal s C a stale mi to pride ako najlepsia volba na zaciatok. Ale samozrejme je to jazyk na programovanie HW. Ale take arduino ta tiez nauci ako to cele funguje. No chce to nejake financie na kupu tychto veciciek.
Ale asi by mal kazdy zacat s jazykom ktory mu ako prvy pride sympaticky nech uz je to aj delphi alebo assembler :D.
Samozrejme dneska je najlepsia volba ucit sa python.
Python je super no je tam dost volny syntax co ti moze robit problemy pri inych jazykoch kde sa kladie doraz aj na dodrzanie syntaxu.
Moja cesta bola asi takato. C-c++-html/css-java-python.
C je asi OK a tiež som sa na strednej "učil" tento jazyk.
Ale podľa autora otázky (keď si odmyslím zjavné sarkazmy), tento nevie (nepovedal) čo chce robiť, prečo sa o to zaujíma a tak.
A v takých prípadoch sa doporučuje Python, lebo (ako som už písal) veľa materiálov, je interpretovaný (ohromná výhoda pri začiatkoch, keď odpadá kolečko napíš-skompiluj-spusť (OK, beriem, časť chýb odhalí IDE (hlavne preklepy a zjavné nezmysly), ale to tiež musí človek vedieť nastaviť.
Python spustíš a ideš, nájdeš kopec tutoriálov do začiatkov (aby si zabudol na PRINT-y a GOTO-y, ako je napísané v otázke).
Taktiež neviem či "sympatický" jazyk je dobrá voľba. Môže byť, ale nemusí. Ako človek, ktorý nikdy serióznejšie neprogramoval zistí niečo viac o jazyku? Čo mu povie fakt, že je to "strict", "strongly typed" a podobne? Asi nič extra, pokiaľ sa do tejto problematiky neponorí namiesto samotného učenia sa programovať.
A ešte možno jeden dôvod prečo Python. Je pomerne "non-verbose", takže s malým množstvom písania dosiahneš pomerne dosť. Jasné, je to len taká naoko výhoda, ale v začiatkoch, čo by som ja za to dal - strašne to motivuje v pokračovaní. U Javy než usmolíš Hello World, tak je to pomaly na výmenu klávesnice.
Kua pozri si porovnanie s Rustom a prečo páve vznikol.
V zmysle použitia ako prvý jazyk, pre toho kto sa pýtal, "kua".
Z osobnej skúsenosti ti odporúčam posluchnut radu ktorá tu padla najčastejšie.
Dobre si uvedom, čo chceš robiť a podla toho hľadaj pomoc.
Ja som sa na základe toho aký je obľúbený a jednoduchý pustil do pythona. Stiahol som si apku, našiel nejaké weby a knihy a začal sa tým prekusavat. Aj keď mi to celý čas niekde v hlave vrtalo, tak som sa nezaujímal o to ako to co sa učím priniesť do klikacieho okna.
Dostal som sa do bodu keď som tušil, že veľmi jednoduchá hra pre sestru by sa už dala dat dokopy s tým co viem. A hopsa. Zrazu sa neprekusavam iba materiálom pre Python, ale aj materiálom pre Tkinter. A keďže by som v ďalšej verzii chcel mal možnosť hrať aj na telefone budem sa prekusavat aj cez niečo ďalšie.
aktualne urcite python. Niet lepsej volby.
Jednoznacne sa mrkni golang. Jednoznacne. Na youtube pozri Rob Pike a hraj sa s kodom, hovorim hraj sa lebo golang nie je programovanie je to zabava. Je to rozumne napisany prog jazyk, krasne citatelny.
Go má za sebou Google, čo je určite dobrá zábezpeka, to je ale si tak všetko.
Priznam sa ja som len c c++ golang miestami python, o rust som este nezavadil. Skusal si uz oba alebo aka je tam tvoja motivacia ho tlacit? neber to ako utok skor ako zvedavost.
akoze isto by som novacikovi odporucil nieco poriadne nech sa nieco poriadne nauci a nech ma z toho potom uzitok.
tiez je jasne ze nie vzdy kazdemu jazyk sekne.
ja mam napr rad c/c++ mix ked sa to vsetko optimalizuje a atomicky prisposobi, poriadne sa s tym kodom pohrajkat a poriadne nakodeny evm tak to ti ziaden go ani rust nechyta...
no ked som potreboval https file server a nejaky restik tak v gocku to bolo na 10 minut...
ked rychlo skript zbuchat tak python tuk tuk....
no atomicku DB s MT pristupom co dava 20M mix add/del/ref... operaci za sekundu na golangu asi nedas... mozno v ruste? ale posim virtual mem/fragmentaciu v rozmedzi +1%...