Stránka 1 z 2

Jak začít programovat

Napsal: 19 črc 2011 23:44
od 9!=362880
Dobrý den, nedávno jsem se rozhodl, že bych se chtěl naučit programovat, ale nevím jaký jazyk si zvolit. Mohli byste mi poraditt s jakým jazykem začít a doporučit mi i nějakou učebnici? Rád bych v budoucnu zkusil programovat hry,zatím ovšem nemám žádné zkušenosti s programováním.

Re: Jak začít programovat

Napsal: 20 črc 2011 16:40
od General
Jestli myslíš hry jako desktopovej program, tak na začátek asi C#. Počítej s tim že opravdu v budoucnu - nějakou chvíli ti potrvá pochopit o čem je programování, naučit se programovací jazyk a programátorsky myslet. Potom můžeš udělat nějakou 2D hru, třeba takovýho hada sem udělal za pár hodin.
Kdybys už uměl programovat, tak bych ti místo C# doporučil C/C++.
Nepočítej s tim, že sám zvládneš 3D hry jako si kupuješ v obchodě..

Re: Jak začít programovat

Napsal: 20 črc 2011 17:04
od Nexmor
http://knihy.cpress.cz/mistrovstvi-v-c.html Doporučuji
ale toto nějakou chvíli trvá než pochopíš (trošku větší chvíli pokud jsi vůbec nic nikdy nezkoušel v programování)

možná bych radši doporučil zkusit JAVU, ta je myslim o něco jednodušší a třeba BlueJ je na to docela dobrej. Bohužel materiály k tomuto neznám asi bych se zkusil podívat na http://knihy.cpress.cz/java-6.html

Re: Jak začít programovat

Napsal: 20 črc 2011 17:36
od mircony97
A nebo Basic nebo Visual Basic

Re: Jak začít programovat

Napsal: 20 črc 2011 18:01
od faraon
Co všechno už s počítačem umíš a co o nich víš? Máš představu jak se programování vlastně provádí?

Pro úplný začátek, pochopení jaké možnosti v programovacích jazycích máš a jak se v nich dá vyjádřit požadovaná činnost, je vhodný Karel, můžeš si ho spustit přímo v prohlížeči a hrát si. Naučí tě základům strukturovaného programování a algoritmizaci, a přitom se nemusíš učit jediné cizí slovo, vše je v češtině. Příklad:

Kód: Vybrat vše

ČTYŘLÍSTEK
  OPAKUJ 5-KRÁT
    KROK
  KONEC
  VLEVO-VBOK
  OPAKUJ 5-KRÁT
    POLOŽ
    POLOŽ
    KROK
  KONEC
  OPAKUJ 4-KRÁT
    OPAKUJ 4-KRÁT
      OPAKUJ 3-KRÁT
        POLOŽ
        POLOŽ
        KROK
      KONEC
      VLEVO-VBOK
    KONEC
    VLEVO-VBOK
  KONEC
  DOKUD NENÍ ZÁPAD
    VLEVO-VBOK
  KONEC
  OPAKUJ 2-KRÁT
    DOKUD NENÍ ZEĎ
      KROK
    KONEC
    VLEVO-VBOK
  KONEC
KONEC

Karel dokáže řešit spoustu problémů, například procházet bludištěm, předvádět akrobacii, postavit si domeček, ale také počítat s čísly, i když se mu na první pohled nedají nikam zadat. Je to vlastně taková kombinace hlavolamu a docela zábavné hry.
V historii vznikla řada podobných platforem, například Logo, Alice, Scratch, nebo komerční Baltík, je možné si vybrat.

Mezitím se hodí podívat se na principy fungování počítačů, a pokusit se pochopit jak funguje dvojková soustava a jak jsou v počítači kódována čísla a znaky.

Až budeš chápat takové věci jako jsou cykly, podmíněné větvení, rekurze a dělení na podprogramy, což je s Karlem otázka několika týdnů, je čas přejít ke skutečnému programovacímu jazyku.
Za třičtvrtě století vývoje počítačů vznikly stovky programovacích jazyků, a desítky z nich se více rozšířily, přičemž naprostá většina dnes používaných má prapůvod v jazyce Algol, jednom z prvních jazyků které na konci padesátých let minulého století vznikly.

V dávných dobách minipočítačů a osmibitových mikropočítačů byl králem programovacích jazyků BASIC ve stovkách nejrůznějších dialektů, byl součástí každého počítače (včetně lepších kalkulaček) a daly se v něm velmi jednoduše psát jednoduché programy. S důrazem na to "psát programy", protože o skutečné programování se v něm pokoušet nedalo.
To bohužel platí i pro jeho dnešní nástupce jako je VisualBasic a SmallBasic.

Speciálně pro výuku programování byl vytvořen jazyk Pascal, dodnes pro tento účel používaný na některých školách (i univerzitách). Jeho výhodou je obrovské množství ukázkových programů které se dají najít na netu i v mnoha učebnicích. Opět příklad:

Kód: Vybrat vše

{nalezeni nejvetsiho spolecneho delitele}

program delitel(input,output);
  var x,y:integer;
  begin
    write('Zadej dve cisla oddelena mezerou: ');
    read(x,y);
    while (x<>y) do
      begin
        if (x>y) then
          begin
            x:=x-y;
          end
        else
          begin
            y:=y-x;
          end
      end;
    writeln('Nejvetsi spolecny delitel je ',x);
  end.

Tady už tě pár cizích slov nemine, ale není to tak hrozné, Pascal je poměrně jednoduchý a kvůli svému školnímu určení má řadu výhod, které začátečníkovi ušetří hodně trápení. Hlídá totiž kdejakou ptákovinu během překladu i při běhu zkompilovaného programu, takže ti za všechny chyby okamžitě nafackuje, občas dokonce napoví jak je řešit, zatímco v "ostrém" jazyce jako je C za tebe program neudělá vůbec nic a nechá tě pěkně si rozbít hubu o zeď.
Velkou výhodou Pascalu ja také možnost stažení vývojového prostředí (Turbo Pascal) s kompilátorem zdarma.
Pascal je už čtyřicet roků starý, takže je to na dnešní poměry trochu vykopávka, i když pořád velmi užitečná. Vychází z něj moderní objektový jazyk Delphi, který umožňuje psaní graficky ovládaných programů pro Windows.

Jiná možnost jak začít s objektově orientovaným programováním je Python, také poměrně jednoduchý a docela vhodný pro začátečníky. Je také k dispozici zdarma, včetně zdrojových kódů interpretu a také je možné na netu najít dost příkladů, návodů a tutoriálů (kolísavé kvality).

Tady bys měl mít zvládnutou práci s různými typy proměnných, s pamětí, předávání parametrů procedurám a funkcím i předávání jejich návratových hodnot, práci se soubory a spoustu dalších věcí.
Další krok by mohl být některý z těch ostrých jazyků, jako jsou nízkoúrovňový C vytvořený pro psaní operačních systémů, velmi těžký a obsáhlý C++ který z něj vychází, interpretovaná Java která podle nejnovějších poznatků trvale deformuje (jako kdysi BASIC) programátorské myšlení nebo z Javy odvozený C#.
Pár dalších příkladů - například PHP je určený k vytváření dynamických webových stránek, Prolog pro umělou inteligenci, Cobol pro hromadné zpracování dat...

Ale pokud ti jde jen o to rychle a jednoduchým způsobem vytvářet hry, podívej se na GameMaker.

P.S. Když tak koukám na tvůj nick, tak mě napadl ještě jeden ukázkový program v tom BASICu:

Kód: Vybrat vše

10 LET f=1
20 FOR i=2 TO 9
30 LET f=f*i
40 NEXT i
50 PRINT "9!=";f
60 END

Hádej co spočítá a napíše po zadání příkazu RUN :lol:

Re: Jak začít programovat

Napsal: 20 črc 2011 19:37
od 9!=362880
Díky všem za rady, ted jsem se ptal kamaráda co programuje a ten mi doporučil knihu C# pro zelenáče. Co myslíte?

Re: Jak začít programovat

Napsal: 21 črc 2011 07:34
od karlos
Mám obavu, že se chystáš naskočit do rozjetého vlaku ve stanici, kde nestaví. Asi bys měl popojet pár stanic lokálkou a počkat na něj ve stanici, kde staví... :wink:

Re: Jak začít programovat

Napsal: 21 črc 2011 09:40
od Nexmor
Teď jsem si vzpomněl jak jsem začínal - na základce Karel, Baltík a Baltazar, na gymplu Pascal a Delphi, na vejšce JAVA a C++

pokud jsi nikdy s ničim nedělal tak C# pro zelenáče je docela těžké, nebudeš tomu ze začátku moc rozumět. Ale když k tomu budeš trošku googlit a prozkoumávat fóra, tak bys to mohl tak za dva roky přelouskat.

Určitě doporučuju chvilku si pohrát s tim karlem, baltazarem, pascalem a teprve potom se podívat na C, C#, C++, Delphi bylo docela jednoduchý

Re: Jak začít programovat

Napsal: 24 črc 2011 09:56
od faraon
9!=362880 píše:ted jsem se ptal kamaráda co programuje

Kolik let ten tvůj kamarád programuje? Já se to učím dvacet let :listen:

Můj kamarád se na škole začal učit programování právě v C# a nadává na něj kudy chodí. Je to jako kdybys měl řídit Airbus 380 bez toho, abys někdy předtím pilotoval jakékoliv (menší) letadlo. Naštěstí se tím živit nehodlá, je to pro něj jen součást výuky.

Jen pro zajímavost, na univerzitě ve Stanfordu výuka programování (úplných začátečníků) probíhá tak, že si vysokoškoláci prvních měkolik týdnů hrají s Karlem, a potom plynule přechází na Javu: http://www.stanford.edu/class/cs106a/cs ... s-java.pdf

Video z přednášky: http://academicearth.org/lectures/progr ... nformation

Re: Jak začít programovat

Napsal: 26 črc 2011 03:01
od Default User
Tak s tím Karlem to mě dostalo :D Jinak fajn věc slyším o tom poprvé...nám na výšce rovnou šoupli Céčko a i gympláci co o tom předtím neměli šajna se s tím docela ucházejícně poprali (neříkám že všichni). S trvalou deformací z Javy bych tak úplně nesouhlasil :)

Jinak autorovi topicu bych asi z vlastní zkušenosti doporučil nějakou knihu z rubriky "bez předchozích znalostí" pokud vím je na C i na javu a když to srovnám s jinými tituly které se tváří že vyučují jazyk od základů...je to jako nebe a dudy. Zde se od základů opravdu jede a myslím že tam není pasáž kterou by začátečník nepochopil nebo nezvládl. Prokládáno vhodnou doplňující literaturou a pravidelným procvičováním se myslím dá dobře začít.

Re: Jak začít programovat

Napsal: 26 črc 2011 09:47
od domitea
Programování robotů v legu (robolab?) - diagramový jazyk :lol: - 6. třída
Pascal - ten mi vůbec nešel - 7. třída
C# - jen si prohledej mé příspěvky, co o něm píši :D - 8. třída dodnes, člověk už uměl v devítce OOP a ani učitel nevěděl, co to píšu za kód :smile:

To byla má cesta k programování a nebyla by taková, kdyby jsem nechodil do DDM

Re: Jak začít programovat

Napsal: 11 pro 2018 17:10
od marcel.ujcek
Ja jsem zacal tutorialem na youtube. je to supr, ale pozdeji jsem zistil ze se nedokazu prinutit sedet u toho jako backora :clap: našel jsem tohle https://www.learn2code.sk/kurzy/zaklady ... ania-a-oop a je to perfektni i kdyz to neni jenom na jedno shlednuti, ale je to skutecne pro kazdeho blba. :lol: