Stránka 1 z 1

Neznáte kvalitní online/knižní/jiný tutorial na Javu?

Napsal: 07 srp 2011 13:00
od zelnidav
Dobrý den. Už dlouho mám zájem o programování her, a nedávno jsem se začal učit Javu podle Java tutorialu. Nemám žádné předchozí zkušenosti, pouze Karla ve škole. :smile:
Teoreticky umím nějaké ty základy, ale zatím jsem je příliš nezkoušel v praxi. Nerozumím například polím, dále "continue, break" atd.
Chtěl bych se učit dál, ale čím víc se toho naučím, tím více věcem nerozumím. Ale když jsem před chvílí zjistil, že jedno studio připravuje podobnou hru, jakou jsem chtěl udělat já, už jsem se opravdu naštval. :evil:

Takže bych se chtěl zeptat, i když vím, že už je to mnohokrát diskutované, jestli neznáte nějaký tutorial, kterému bych rozuměl, který by mi vysvětlil i to, co nechápu a pokud možno i vysvětlil jak v Javě/s pomocí nějakého programu vytvořit GUI a grafiku?
(V návodu nemusí být samozřejmě všechno dohromady, stačí mi i úzce zaměřený návod na pouze něco z mých požadavků)

Za všechny odpovědi předem děkuji

Re: Neznáte kvalitní online/knižní/jiný tutorial na Javu?

Napsal: 07 srp 2011 19:32
od CZechBoY
Zdravim a Vítej na PC-HELP!
na netu je haldy návodů na všechny možný jazyky, Javu neumim, ale vim k čemu by mohly sloužit příkazy break/continue, pole znám taky :)
break: používá se v cyklech (while, for, for each) na ukončení cyklu - tzn. další kolo cyklu už nebude a bude se pokračovat dál v kodu jako kdyby proběhl cyklus celý
continue: pokud si breaknul cyklus, pomocí continue ho můžeš opět nahodit a bude se pokračovat v cyklu
pole: skvělá věc, podobně jako List(nevim jestli je v Javě, používám C#) - je to takový seznam proměnných, nevim jak bych to napsal :)
prostě pole vypadá nějak takhle:
nejakePole = [10,20,30,40];
nebo taky řetězcový pole = ["hoj","cs","zdravim"];

Re: Neznáte kvalitní online/knižní/jiný tutorial na Javu?

Napsal: 07 srp 2011 23:09
od Iron
Tutoriál od Oracle - V angličtině a pro začátečníka ne moc vhodný, ale později se bude hodit.

James Keogh - Java bez předchozích znalostí - naučí vše potřebné od základů

Re: Neznáte kvalitní online/knižní/jiný tutorial na Javu?

Napsal: 08 srp 2011 11:10
od zelnidav
Díky za vysvětlení break a continue, pole ale pořád nechápu. Na co je mi pole, když můžu místo toho použít proměnnou?
Vzpomněl jsem si ještě na return, ale ten už chápu, jenom k jeho pochopení bylo třeba přečíst si pozdější lekce.

Konkrétně je to ten tutorial od Oracle, konečně někdo uzná, že se nehodí pro začátečníky. Myslím, že by to měli jinak uspořádat - jak mám pochopit něco, co je vysvětlené až později.
Na tu knížku se taky podívám, díky.

Re: Neznáte kvalitní online/knižní/jiný tutorial na Javu?

Napsal: 08 srp 2011 13:00
od CZechBoY
no tak zkusim trošku jinak vysvětlit pojem pole, jen praxe ze C# načtení souboru ve tvaru "jmeno,ip,heslo" - jeden řádek = jeden záznam jakoby
kdybych měl dělat proměnné jmeno, heslo a ip tak bych se z toho asi zbláznil, kdyby toho bylo víc
takže si udělám pole, dejme tomu radek, který bude mít 3 "chlívečky" - v chlívku s indexem 0 (první) bude jmeno, dalším ip a dalším heslo
z pole to vytáhnu takhle: Console.WriteLine( "Načteno jméno:" + radek[0] );

zkusim najít pořádnej příklad, tenhle stojí za houby :D

Re: Neznáte kvalitní online/knižní/jiný tutorial na Javu?

Napsal: 09 srp 2011 17:12
od faraon
zelnidav píše:čím víc se toho naučím, tím více věcem nerozumím


To jsi na dobré cestě se skutečně něco naučit, protože, jak (údajně) pravil Sókratés: "Vím že nic nevím." To že všechno vědí si myslí jen lidé kteří nevědí nic.

Ale k věci. Karel je určitě dobrý začátek, na Stanfordské univerzitě s ním začínají také a pak přecházejí rovnou na Javu (to už asi tak dobrý nápad není), ale naučí tě jen skutečné základy, jenže právě na nich můžeš dál stavět...

Příkazy break a continue slouží k zjednodušení řízení cyklů. Základní cykly for, while a do...while už asi znáš, víš jak začínají, probíhají, a jak je možné je opustit, ale někdy je třeba udělat něco navíc, například část cyklu vynechat, vrátit se na začátek nebo ho úplně přerušit. To všechno se samozřejmě dá udělat pomocí if a testování nějakého flagu, případně pomocí nuceného nastavení řídící proměnné (což třeba v Pascalu u for() není možné, protože je to nebezpečná činnost) a navíc se někdy hodí v té řídící proměnné mít hodnotu která tam zrovna v tom okamžiku byla.

Nejdřív to continue. Tím programu říkáš "vynech zbytek cyklu a pokračuj novým oběhem", takže se skočí rovnou na test konce cyklu a pokud je platný, probíhá další iterace:

Kód: Vybrat vše

while (x<y)
      {
      příkaz1;
      příkaz2;
      if (x==5)
         continue;
      příkaz3;
      příkaz4;
      }
příkaz5;


Cyklus probíhá dokud je x menší než y, ale v okamžiku kdy je v jeho průběhu x rovno 5, proběhnou jen první dva příkazy. Zbytek cyklu se vynechá, otestuje se jestli platí x<y a jede se znova. Pokud neplatí, pokračuje se za cyklem příkazem 5.

Mnohem jednodušší je break. Tím programu řekneš "vynech zbytek cyklu a okamžitě ho ukonči",
nic se netestuje a jede se dál:

Kód: Vybrat vše

while (x<y)
      {
      příkaz1;
      příkaz2;
      if (x==5)
         break;
      příkaz3;
      příkaz4;
      }
příkaz5;


Cyklus probíhá stejně jako předchozí dokud je x menší než y, ale když je u příkazu if() rovno pěti, všechny další příkazy se vynechají a skočí se rovnou na příkaz 5.

Pole je vlastně balík proměnných se stejným názvem, které rozlišuješ jejich pořadovým číslem (indexem). Tak můžeš najednou zpracovávat velké množství údajů, zkus si třeba do programu vymyslet názvy pro sto proměnných, vyplnit je náhodnými čísly a ta pak seřadit podle velikosti a nakonec vypsat :lol:

A z toho že někdo vyvíjí podobnou hru jakou jsi chtěl vytvořit ty si nic nedělej, skutečně originálních her bylo v historii jen pár a všechno ostatní jsou variace a napodobeniny, v naprosté většině horší kvality.

Re: Neznáte kvalitní online/knižní/jiný tutorial na Javu?

Napsal: 21 srp 2011 17:15
od zelnidav
Moc díky za to vysvětlení break, continue a dokonce nastínění polí i za projevenou podporu. No, pro příklad nesrozumitelnosti návodu přidávám útržek z textu (Je to slovenský překlad tutoriálu od Oracle, mimochodem dost mizerný, jak ukazuje tučně označené slovo):

Príkaz continue (pokračuj) preskočí aktuálny prechod opakovania v príkazoch for, while , or do-while. forma bez návestia preskočí na koniec tela najvnútornejšieho opakovania a vyhodnotí výraz typu boolean, od ktorého závisí opakovanie. :smile:

Chtěl bych se ještě zeptat, jestli teda neznáte nějaký vážně super návod, a když se tady dlouho nic neobjeví, tak tohle téma asi uzavřu.

Re: Neznáte kvalitní online/knižní/jiný tutorial na Javu?

Napsal: 21 srp 2011 19:16
od faraon
Nojo, místo toho or tam mělo být nebo, vypadá to že ten překlad je trochu neúplný a navíc ho asi dělal někdo kdo moc Javu neovládá, nebo jí prostě neumí vysvětlit, případně má celkově problém se vyžvejknout. Bohužel dost běžný jev u SMSkové generace :-( Navíc je zjevné že nemá šajnu o bohatosti české počítačové terminologie, protože cpe anglismy kam může, asi aby vypadal jako "odborník".
On J.V.Sládek, který překládal do češtiny asi z deseti jazyků, říkal, že dobrý překladatel potřebuje znát dokonale jen jeden jazyk, ten svůj 8)

Zkus se podívat na tuhle knihu: http://www.root.cz/clanky/myslime-v-jazyku-java/ Je trochu starší, tak by se mohla nechat sehnat levněji v nějakém antikvariátu. Můžeš si jí stáhnout v angličtině z webu autora, případně jinde v češtině, ale netuším jaká bude kvalita scanu...
Teď jsem náhodou narazil na tohle: http://skola.isd.cz/07_08_l_ap4_teorie.html a jak se vyvarovat nejběžnějších chyb: http://vyuka.pecinovsky.cz/debugging_z/chyby.html

(Ale pro skutečné učení bych zvlášť u úplného začátečníka spíš než Javu poradil tradiční Pascal ;-))



EDIT: Zrovna teď se rozjelo podobné téma: http://forum.root.cz/index.php?topic=2759.0