[Tutor PyCZ] Zachytavani udalosti v cyklu
Martin Petr
martin261 na gmail.com
Pondělí Duben 3 13:26:52 CEST 2006
Dekuju za podrobny komentar. Je fakt, ze jsem se snazil premyslet tak
"realne" a tak objektove az jsem to asi prehnal :o) Jak rikam, v OOP
jsem naprostej zacatecnik...
Vsechno si to prostuduju a uvidim, jak to zvladnu...taky diky za odkaz.
Martin
Jiri Vit napsal(a):
> Jinak osobne si myslim, ze ten problem s otockou je problemem struktury
> trid, kterou sis zvolil. Vetsinou se podobne koncepce doporucuji resit
> nejakym zavedenym objektovym
> schematem. V tomto pripade by slo zvolit klasicke schema
> Model-Controller-View.
>
> Podle meho nazoru pricina tvych problemu tkvi v tom, ze je tam prima
> zavislost na aktualizaci
> herni plochy, aktualizace hada a vstupem z klavesnice. Jak si spravne
> vypozoroval, to vse se odehrava v
> jednom stejnem cyklu a proto se to zpracovava najednou a otocka nefunguje.
>
> Pokud pouzijes schema MVC pak oddelis data od vlastni prezentace, coz je
> asi to, co potrebujes.
>
> Ja osobne bych v objektu tridy Snake rozhodne nezachytaval prime
> keyEventy. Snake by mel
> prezentovat skutecne jen informace o hadovi jako souradnice, velikost,
> rychlost a nemel by nic vedet
> o nejakych klavesach nebo dokonce o tom, ze se ma na obrazovce sam
> posunout a toto posunuti i sam provest!
> Samotne stisky klaves by mohla zachytavat nejaka pomocna trida
> Controlleru, ktery by jen zaslal zaregistrovanym
> hernim objektum (v tomto pripade hadovi Pythonovi :-)) zpravu o tom, ze se
> neco bylo stiknuto. Herni plocha si jen bude v pravidelnych intervalech
> refreshovat Pythonova data a menit jeho pozici na obrazovce podle dat,
> ktere aktualne ziska od Pythona. Vyhodou je, ze ten refresh je jiz v ciste
> rezii tridy Herni plochy.
>
> Takto se ti budou lepe implementovat dalsi objekty do hry az se veci
> zacnou komplikovat (vice hadu, jidla, zdi apod.)
>
> Jinak vice k MVC je na:
> http://cs.wikipedia.org/wiki/Model-view-controller
>
> Jirka
--
To follow the path:
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.
Další informace o konferenci Tutor