S akým programovacím jazykom začať skôr ?
Som tu, lebo mám dilemu ohľadom výberu programovacieho jazyka. Už 3 roky sa venujem web designu a všetko, čo k tomu patrí (cháp PHP, (X)HTML, CSS, JavaScript, jQuery, trochu Ajax) - všetko okrem Ajaxu na veľmi slušnej úrovni. Taktiež v Perl nie som začiatočník - ale aktívne sa venujem hlavne len jemu. A teraz prichádza ten bod zlomu. Čo ďalej ? Idem na SPŠE (Stredná priemyselná škola elektrotechnická), kde sa bude vyučovať (pravdepodobne) Pascal, Delphi, C, C#, C++ ( neviem presne ktorý z týchto jazykov, presne ne tá časť ich webu, kde sa to popisuje nefunguje :-) ) Prečítal som už mnoho podobných tém, ako je tá moja, ale všade sa vraví niečo iné. Niekto vraví, že pre začiatočníka je najlepší Pascal na pochopenie celého princípu, ale niekto vraví, že C .. Prezeral som si začiatočné lekcie Pascalu a úprimne poviem, nič nové. :-) Láka ma ísť do C++, kvôli veľkým možnostiam a faktu takom, že C++ je naozaj rozšírený, skvelý a zároveň (asi) najťažší jazyk. C neviem, C# tiež neviem. Dakde som čítal, že keby sa naučím C a prejdem na C++ tak sa to budem musieť učiť "od začiatku" znova.
Preto Vás prosím o prípadnú profesionálnu radu, čo s týmto mojim "problémom". Ďakujem :-)
Pre pridávanie komentárov sa musíte prihlásiť.
Ja ako progamator 4. rocnik na mojej skole odporucam C, a potom prejdi na c++ô
Ale k téme: Keď Ťa to ťahá k programom, tak odporúčam začať s C, potom prejsť na C++ a na C++ nadviazať objektové Gtk/Qt aby si tvoril grafické aplikácie. C++ a Qt programátori sú v dnešnej dobe veľmi solidne platení ( 4 cifry )
Ale veľmi pekne ďakujem za radu. Určite ju využijem a začnem sa učiť to C-čko a neskôr C++
Ozaj, čítal som aj o dákej odporúčanej literatúre od autora "Pavel Herout", píše Učebnice C-čka. Prečítal som si o tých jeho učebniciac viac a zistil som, že by mi to padlo naozaj vhod. Je to učebnica, takže sú tam aj rôzne "úlohy", čo ja potrebujem. Neodporúčaš niečo ty ? ;)
Regards
Začnem asi to C a v kútiku mojej duše dúfam, že sa tomu nebudeme naplno venovať na škole. A rozhodol som sa pre knihu od Pavla Herouta - Učebnice jazyka C (1. díl), vyzerá to veľmi zaujímavo a tiež to dáko neovlyvňuje moje finančné rezervy. ^^ Skúsim to a uvidím.
A btw. ďakujem za odpoveď ;-)
takze, klido, pido.
Nevedel som nič o programovaní, tak som začal s Pythonom. Dal mi skvelé programátorské myslenie, a pekne mi rozšíril obzory programovania. Ale v škole máme Pascal. Nebyť toho pythonu, nešiel by mi pascal tak ľahko - všetko na prvý raz a najrýchlejšie zo všetkých. Pascal som sa neučil z kníh, stačilo mi vedieť syntax. Ostatné som si domyslel.
Potom som sa dva roky nijaký nový jazyk neučil, lebo sa mi nechcelo a ani som to nepotreboval. Možno akurát nejaký ten bash, nakoľko som sa stal počas tej doby linuxákom.
Teraz som tretiak, pred dvoma mesiacmi som začal s PHPčkom, ale neoslovilo ma to. Web nie je moja parketa. Tak som začal s Cčkom, kúpil som si oba Heroutove knihy Učebnice jazyka C a ide to veľmi ľahko. Aj kebyže som nič o programovaní nevedel, tie knihy pochopia aj opice. Rozhodne sa nauč Cčko, nakoľko je to asi najzákladnejší jazyk. Pascal je iba na výuku, ale v cčku už dokážeš urobiť niečo väčšie. Taktiež ber ohľad aj na súťaže. Pravdepodobne sa budeš zapájať do nejakých súťaži v programovaní, kde môžeš najčastejšie programovať v Pascale alebo Cčku. Ak sa tiež budeš chcieť naučiť nejaký iný jazyk, znalosť Cčka ti dá mnoho. Aj kebyže ste sa učili Pascal, prípadne Delphi, Cčko sa nauč. Na C++ máš čas, nebude pre teba ťažké sa ho po Cčku naučiť. Toť môj názor. :)
Pozri si ešte niečo o tom Pythone:
Python 2.5: http://howto.py.cz/index.htm
Python 3.0: http://geon.wz.cz/buwralug/
Si mlady, co je fajn :-) Ak uz vies nieco programovat, Pascal nema vyznam. Robil som v nom roky a stale si neviem zapamatat syntax. Ale aj som ucil programovat :-) Na uplny zaciatok by bol fajn asi Python. Ziskas abstrackiu. No zakladnu abstrakciu mas. Kazdopadne, keby si sa ucil Pascal, jeho znalost nikde nevyuzijes. Kdez to Python vyuzijes aj na male ci stredne projekty.
Co sa tyka C, tie ucebnice od Herouta su super. Ak sa chces nahodou venovat Unix API, pripadne nejake drivere alebo ine znacne low-leve veci, tak tvoja cesta je C. Ale C nie je tazky jazyk, ak si vzijes pointre. Syntax velmi podobnu C ma vela jazykov. Syntax podobnu ako Pascal ma akurat Object Pascal (naozaj strasne sa mi pise ta syntax).
C++ je efektivne najmocnejsi a najzlozitejsi jazyk. Spravit nieco trivialne v C++ nie je problem, no spravit nieco netriviane chce znalost mnohych veci, pravidiel a vynimiek C++.
Co sa tyka programovacich sutazi, jednoznacne vedie C++ kvoli STL (knihovna, kde mas efektivne kodene datove struktur a algoritmy, ktore by si rucne nestihol).
Dalsia vyhoda je C++ je, ze nevyzajude sa cisto OOP kod. Z mojich skusenosti je lepsie zacat bez OOP. Vysvetlujem si to tak, ze mozog sa rad uci nove veci. Teda programovanie ho bavi, lebo ma pocit, ze sa uci nieco nove. Potom ho bavi OOP, lebo sa opat uci nieco nove. Vysledkom toho je, ze student vie rozumne vyuzivat a kombinovat vlastnosti strukturalneho a OOP programovania. Lebo oba pristupy sa naucil a pochopil. Kdez to, ak sa clovek uci rovno OOP (Java, C# ani nedava inu moznost), tak pri strukturalnom pohlade ma pocit, ze sa uci nieco zastarele a sa to neuci. Potom je krasne pozorovanie. Tam, kde je OOP pristup vhodny, obaja studenti napisu kvalitnu OOP kod. No naopak, tam kde je OOP pristup je skor na skodu, student, ktory zacina so strukturalnym programovanim, vyriesi to efektivne a prehladne bez OOP, kdez to student zacinajuci s OOP vytvori sprasene, neprehladne a neefektivne OOP riesenie.
Dalsia vyhoda je to, ze ak sa naucis C++, ziadny procedularny jazyk nebude pre Teba problem. Nevyhoda C++ je, ze chce spustu casu, ak ho chce clovek vediet na Advanced urovni. Teraz neprehanam, kniha Mistrovctvi v C++ je uvod to jazyka. Po prestudovani tej knihy budes vediec v C++ zaklady. Jednak je aj dane tym, ze je na tych 1400 stranach strasne roztahana a zacina uplne do nuly. Radsej by som Ti odporucil Bruce Eckel, Thinking in C++, kde sa v druhej casti uz naozaj trochu venuje veciam, ktore nie su uplny zaklad. Pre advanced C++ je kniha Effective C++ a hardcore je Modern C++.
Ako takto, si mlady, mas cas a sam vravis, ze mas chut na C++. Ja vravim, C++ je najtazsia, ale nie nevhodna volba. Teda kludne sa do neho pust , ak mas chut :)
V Archu mam na programovanie vim + kompilator, QtCreator a Eclipse.
Este som chcel doplnit. Existuju este neprocedularne jazyky, kde Ti znalost C++ velmi nepomoze. Su to fajn jazyky, kde treba ohnut myslenie (uvazovat v inych dimenziach) a na specificke ucely. Najznamejsie su Haskell, Prolog, Lisp... Len aby si nemal pocit, ze svet je cierno-biely a vsetko sa toci okolo procedur :)
K tým programovacím jazykom:
Baví ma PHP, (X)HTML, CSS, JavaScript + jQuery, Ajax (ďalej už len webdesign) s tým som v podstate začínal a doteraz ma to napĺňa a baví. Rozhodne sa toho nechcem vzdať.
Skúšal som C++, to ma tiež bavilo, ale ako som vravel, nevystal na to čas. Asi pred mesiacom (cca.) som sa začal učiť Perl, ktorý je TAKMER identický s PHP, takže to nešlo dáko ťažko (ešte stále sa to učím) - hlavne mi ide o komunikáciu so servermi atp.
Do budúcnosti sa určite chcem naučiť C, C++, sem-tam Python a veci, ktoré ku tomu patria.
Celkovo chcem mať taký prehľad. Do budúcnosti si chcem určite zarábať či už webdesignom alebo samotným programovaním v C++, C atp. Bavia ma obidve a hodlám v obidvoch dosiahnuť slušnú úroveň.
Takže tak. =) Inak, ďakujem všetkým za takéto zdĺhavé, poučné správy ;)
neviem či je dobré venovať sa aj programovaniu, aj webdesignu... vyber si to, ktoré ťa viac baví a rozvíjaj svoje schopnosti istým smerom
samozrejme ešte nemôžeš poriadne vedieť, čo ťa bude baviť - kedysi ma bavilo opravovať windowsy a myslel som, že s nimi budem pracovať stále, ale teraz po nich ani nepachnem... a to preto, lebo som zistil, čo ma skutočne baví
myslím, že webdesign máš dobre preskúmaný, tak vyskúšaj programovanie - ba čo viac, vyskúšaj niečo vytvoriť - napríklad sa ponúkni, že niekomu urobíš za malý honorár webstránku a vyskúšaj si vytvoriť nejaký väčší program, napríklad v C, a uvidíš, čo ti ide lepšie a čo ta viac bude baviť :)
ak sa naučíš Python máš obrovskú výhodu - môžeš v ňom robiť aj web (princíp rovnaký ako s PHP) a taktiež v ňom môžeš programovať, resp. presnejšie skriptovať
takže aby som to zhrnul: nezabíjaj čas zbytočným sa učením programovacích jazykov, ak nevieš, či ťa to naozaj bude baviť
prvé dojmy a skúsenosti sú skvelé, lebo sa učíš niečo nové, ale skutočne sa rozhodneš až vtedy, keď začneš riešiť veľké problémy
a tým, že si máš niečo naprogramovať nemyslím jednoduché programy, ale skús niečo zložitejšie - a zároveň sa takto aj môžeš naučiť jazyk
ja si myslim, ze moze sa kludne ucit aj vsetky jazyky. Cim viac vie, tym lepsie. Kodit nieco netrivialne v dopredu naplanovanom jazyku mi pride dost hlupe. Ovela rozumnejsie mi pride pochopit problem a zvolit vhodny nastroj.
Moj odkaz: Pokracuj v robeni toho, co sa Ta bavi, nespoliehaj na to, ze Ta nieco nauci skola. Ti najlepsi su vzdy ti, ktori sa do toho pustili sami. Ti, ktori sa spoliehaju na skolu su vzdy velmi lahko nahraditelny priemer...
Vela stastia, a tesi ma, ze stale taki ludia su :-)
K tomu dopleteniu: kúp si knihu Učebnice jazyka C od Herouta, sú dva diely tak si môžeš kúpiť hneď oba. V podstate je to jedna kniha ale je rozdelená na dve časti. A uč sa jazyk C. Nič viac ti zatiaľ nebude treba.
Po skončení Cčka si môžeš pozrieť Python, tie dva linky, ktoré som predtým dal nesú dosť rozsiahle základy.
Prípadne to môžeš robiť opačne, alebo python si nemusíš pozerať vôbec. Je to na tebe. Každopádne tvojou prioritou nech je jazyk C.
Hybem sa v tomto smere a ver, jednoznacna odpoved s cim zacat programovat nebola a nie je. Na MIT sa donedavna ucil LISP. A myslim, ze ani nebude, pokial chce byt clovek naozaj programator a pochopit, co a o com je programovanie. Programovanie je naozaj prilis siroke na nejaku jednoznacnost.
Zacinal som s Pascalom. Nemal som inu moznost, ucebnicu pascalu som ukradol ucitelovi na strednej. Dnes by som bol ovela radsej, keby som zacal s C++.
Poznam ludi, co zacinali programovat s GameMakrom a su velmi radi, ze zacinali s nim. Je aj vela ludi, co su vdacny za Pascal. Niekto zacinal so shellom. Niekto s PHP, Haskell, Basic, Assembler...
Aspon mne s autorovych prispevkov nie je jasne, ze najlepsie co pre neho moze byt, je C ;)
Každému totiž padne niečo iné. A myslím, že keď sa naučí C nič tým nestratí. Okrem toho sa všade v literatúre píše, že je lepšie vedieť prv C ako C++. Možno sa mýlim - nemám z toho prax, takže nás môžeš poučiť oboch, prečo je lepšie začať s C++ a na C sa vykašľať. :)
Resp. cital si literaturu s pred 20 rokov... A ak niekto chce sa ucit C ako prechodovy jazyk k C++, tak s tym iba zbytocne trati cas, lebo tie veci zabudne. Ono ja som si teraz musel C oprasit, lebo mi ho treba na Unix API, ale to nie je problem, C fakt nie je tazky jazyk.
Ba aj lektori vravia, ze ludia maju problem pochopit pointrovu aritmetiku (netusim preco) ale prekvapivo chapu iteratory v C++ a cez ich myslienu aj lahko pochopia pointrovu aritmetiku. Mne aj pointrova aritmetika pride trivialna, ale velmi neradim tym, co mne pride trivialne. Jeden kamos aj nieco na nejake forum napisal a zacali sa riesit uplne nezmysli, tak som jednou vetou vysvetlit, co myslel. Potom napisal, ze aspon niekto pochopil jednoduchu vetu a opytal sa, ci je to naozaj nejasne. Odpovedal som mu, ze mne to pride jasne, ale tym by som sa neriadil. Problem by bol, keby to mne neprislo jasne :D (ale aj to sa stava, ked niekto napise blbost a ostatni to pochopia ako on asi myslel a ja to pochopim ako to napisal...)
Tusim, na matfyze v BA sa C++ uci C stylom. Ked chcel kamarat pomoct s ulohou, tak mi z ich Ceckovskeho zdrojaku spadla sanka. Vobec nevyuzivali vyhody C++ ale ba aj pole deklarovali ako pointer...
Ale spravil som v C++ nieco netrivialne (co ludom, ktori si myslia, ze vedia C++, som im to ukazal a povazoavali to za velmi advanced, nemali sajnu o tom) a C++ fakt nie je jednoduchy jazyk. A tom iba pricuchol k jeho komplexnosti a ake a v nom daju robit zakerne finty.... Poznam ludi, co fakt C++ vedia a to je nieco sialene.
Uch, trochu som sa rozpisal. Teda zaver je ten, ze pokial, chce brat clovek C ako prechodovy jazyk k C++, tak je to podla mna strata casu. Kdez to, ak sa rozumne nauci C++, C zvladne velmi velmi rychlo.