Author Topic: Objektove programovanie  (Read 152329 times)

radix

  • Moderator
  • Hero Member
  • *****
  • Posts: 3506
    • View Profile
Re: Objektove programovanie
« Reply #350 on: 16.04.2009, 22:47:28 »
co pride po backpacku?  br

Patto

  • Sr. Member
  • ****
  • Posts: 380
    • View Profile
Re: Objektove programovanie
« Reply #351 on: 16.04.2009, 22:58:23 »
Spravil som si skoro cele 8.cviko doma, kedze nam v pondelok odpadlo cviko ... akurat som nepochopil, ako to mam spravit to s prenositelnostou predmetu. OK tie veci ktore budu prenositelne budu implementovat rozhranie IMoveable, ktore je prazdne. Uz tomu nechapem naco mam implementovat prazdne rozhranie. Ibaze by sa v metode pri vkladani predmetu testovalo, ci dany objekt ako parameter implementuje rozhranie IMoveable? takto je to myslene? Ak to ma byt robene takto, tak ako sa robi tato podmienka, pretoze na nete som nieco nasiel, ale nechcelo mi to nejako fungovat.

Mao

  • Sr. Member
  • ****
  • Posts: 392
    • View Profile
Re: Objektove programovanie
« Reply #352 on: 16.04.2009, 23:13:24 »
otestujes to napriklad takto
Code: [Select]
if (obj is IMoveable)
{
///      TODO
}

nighthunter

  • ING
  • Hero Member
  • *****
  • Posts: 7786
    • View Profile
Re: Objektove programovanie
« Reply #353 on: 16.04.2009, 23:20:27 »
keby si poriadne popozeral, tak by si vedel, ze najde.. ;)
alebo keby si poriadne popozeral ten c mreza, tak by si zistil, ze si vies spravit kludne aj sam..

joj ty moj ziak radostny - az som vysmiaty, ked to citam. nakolko si predmet vlani opakoval, nechal si si uznat zapocet, ale vdaka (neviem comu, neviem komu) si sa rozhodol, ze si to zadanie aj tak spravis. nuz - nie vsetci sa na to takto pozeraju... :-(
klypso (aj ked on sa nezda) je charakter
10 veci ktore na PC nenavidim
1. MAIS 2. Vista 3. Office 07 4. ICQ 5 Internet Explorer 6 WMP 7 BSOD 8.......(prijimam napady)

Patto

  • Sr. Member
  • ****
  • Posts: 380
    • View Profile
Re: Objektove programovanie
« Reply #354 on: 17.04.2009, 00:33:25 »
Mao diki .... toto ma nenapadlo ... myslel som, ze is sa pouziva len na zistenie, ci je objekt danej tiredy, ale nevedel som ze sa tym zistuje aj, ci implementuje nejake rozhranie.

mirek

  • Sr. Member
  • ****
  • Posts: 448
  • darkman ZX 128k
    • View Profile
    • domovská stránka
Re: Objektove programovanie
« Reply #355 on: 17.04.2009, 01:42:28 »
Mao diki .... toto ma nenapadlo ... myslel som, ze is sa pouziva len na zistenie, ci je objekt danej tiredy, ale nevedel som ze sa tym zistuje aj, ci implementuje nejake rozhranie.

operator is sa pouziva na zistenie, ci objekt je daneho typu. takze nie len, ci je typu danej triedy, ci implementuje dany interface, ale vies napisat aj napriklad taketo nieco:

int x = 5;
if( x is int )
   Console.WriteLine( "je to intidzer" );

vyssie uvedeny kod sice nema velky zmysel, ale je to len ukazka toho, ze pri pouziti is ide naozaj o typovu kontrolu.
So say we all!

morrfun23

  • Jr. Member
  • **
  • Posts: 96
    • View Profile
Re: Objektove programovanie
« Reply #356 on: 17.04.2009, 03:02:48 »
mimochodom kedy budu spravene materialy k dalsiemu cviceniu?

mirek

  • Sr. Member
  • ****
  • Posts: 448
  • darkman ZX 128k
    • View Profile
    • domovská stránka
Re: Objektove programovanie
« Reply #357 on: 17.04.2009, 09:38:36 »
mimochodom kedy budu spravene materialy k dalsiemu cviceniu?

od 3. scenara ku textovke ich uz robia ini cviciaci, takze to zalezi od nich. najneskor ale v pondelok.
So say we all!

piton

  • Hero Member
  • *****
  • Posts: 715
    • View Profile
Re: Objektove programovanie
« Reply #358 on: 17.04.2009, 14:53:26 »
skoda, ako poznam "inych cviciacich", oni si s tym daju na cas...
"Iba život, ktorý žijeme pre ostatných, stojí za to." - Albert Einstein

morrfun23

  • Jr. Member
  • **
  • Posts: 96
    • View Profile
Re: Objektove programovanie
« Reply #359 on: 17.04.2009, 16:40:18 »
skoda kedze mne by sa to hodilo keby to bolo aj skor ako pondelok

Patto

  • Sr. Member
  • ****
  • Posts: 380
    • View Profile
Re: Objektove programovanie
« Reply #360 on: 17.04.2009, 16:46:53 »
mne by sa to hodilo tiez skor, ako je pondelok ... ze clovek si moze aspon pozriet, co bude mat na cvicku a tak ... aspon sa moze pripravit lepsie

morrfun23

  • Jr. Member
  • **
  • Posts: 96
    • View Profile
Re: Objektove programovanie
« Reply #361 on: 17.04.2009, 17:35:00 »
presne tak a potom na cviku sa uz len opytat na veci ktorym nechape

domino3d

  • Full Member
  • ***
  • Posts: 161
    • View Profile
Re: Objektove programovanie
« Reply #362 on: 17.04.2009, 21:27:13 »
mne by sa to hodilo tiez skor, ako je pondelok ... ze clovek si moze aspon pozriet, co bude mat na cvicku a tak ... aspon sa moze pripravit lepsie
no a ne? aj aj si myslim
vivat academicus

mirek

  • Sr. Member
  • ****
  • Posts: 448
  • darkman ZX 128k
    • View Profile
    • domovská stránka
Re: Objektove programovanie
« Reply #363 on: 17.04.2009, 23:20:44 »
mne by sa to hodilo tiez skor, ako je pondelok ... ze clovek si moze aspon pozriet, co bude mat na cvicku a tak ... aspon sa moze pripravit lepsie
no a ne? aj aj si myslim

no ale teraz kvoli velkej noci sa meska za cvikami... poznamky svoje ku scenarom (taka kostra) vam ale pastnem - je to ale len take strohe... neviem, ci vam to vobec pomoze... :-)))

4. prikazovy riadok
• vytvorenie parsera pre prikazovy riadok
• vytvorit prikazy (triedy) pre prechod miestnostami implementovanim rozhrania ICommand a kazdy prikaz bude potomkom triedy ACommand
• pouzitie enumeracnych typov

5. historia prikazov
• ukladanie prikazov do historie
• nacitavanie historie prikazov
• osetrovanie vynimiek
• ukladanie len vybranych prikazov vs. ukladanie vsetkeho (problem s load/save prikazmi v historii)
• vypnutie zaznamenavania prikazov do historie (vyuzitelne pri loadovani prikazov zo suboru a ich interpretovani)
• odchytavanie vynimiek pri praci so subormi

6. tdd
• unit testy
• test pre overenie scenara
• popripade test pre overenie funkcnosti batohu - batoh ma kapacitu, takze skusit navkladat vela veci a skontrolovat, ci sa nevkladaju veci navyse
So say we all!

Agamemnon

  • Hero Member
  • *****
  • Posts: 2942
  • Per aspera ad Astra
    • View Profile
Re: Objektove programovanie
« Reply #364 on: 17.04.2009, 23:44:20 »
6. tdd
• unit testy
• test pre overenie scenara
• popripade test pre overenie funkcnosti batohu - batoh ma kapacitu, takze skusit navkladat vela veci a skontrolovat, ci sa nevkladaju veci navyse

to nie je tdd :) na tdd máš prv testy až potom kód :)
All code is crap.

42

andy

  • Newbie
  • *
  • Posts: 49
    • View Profile
Re: Objektove programovanie
« Reply #365 on: 18.04.2009, 03:59:58 »
Ako by som mohol v hlavnej triede (kde vytvaram instanciu triedy Game), zavolat ShowBackpack() z triedy Backpack
pretoze
newGame.Backpack.ShowBackpack() nefunguje.. :'(

vsetky ostatne metody z triedy Backpack idu, len tuto jednu nemozem pouzit.. nvm preco
« Last Edit: 18.04.2009, 04:02:12 by andy »

piton

  • Hero Member
  • *****
  • Posts: 715
    • View Profile
Re: Objektove programovanie
« Reply #366 on: 18.04.2009, 04:05:48 »
Musis to pretypovat na Backpack, lebo v triede Game mas ten backpack typu IBackpack, a to rozhranie nema definovanu metodu ShowNackpack. Tak dajak:
((Backpack)newGame.Backpack).ShowBackpack()
"Iba život, ktorý žijeme pre ostatných, stojí za to." - Albert Einstein

andy

  • Newbie
  • *
  • Posts: 49
    • View Profile
Re: Objektove programovanie
« Reply #367 on: 18.04.2009, 04:09:51 »
Musis to pretypovat na Backpack, lebo v triede Game mas ten backpack typu IBackpack, a to rozhranie nema definovanu metodu ShowNackpack. Tak dajak:
((Backpack)newGame.Backpack).ShowBackpack()
tyyy jo... dik..  :)

Patto

  • Sr. Member
  • ****
  • Posts: 380
    • View Profile
Re: Objektove programovanie
« Reply #368 on: 18.04.2009, 16:10:00 »
Tak aspon z coho bude pisomka v pondelok by nam niekto mohol prezradit, kedze to byva napisane vo wiki, ci to sa mame tiez dozvediet az na cviku rano?

thom

  • Jr. Member
  • **
  • Posts: 92
    • View Profile
Re: Objektove programovanie
« Reply #369 on: 18.04.2009, 17:40:12 »
Caute ,neviete poradit???
Vytvorim tie triedy Dragon, Chest, Key... ale stale mi vyhadzuje chybu , ze :" TextGame.Items.AItem' does not contain a constructor that takes '0' "
mam to vytvorene takto:

class Dragon : AItem
    {
        string name = "Je to sedemhlavy drak a rozhodne sa netvari tak, ze by sa chcel kamaratit prave so mnou";
        string description = "drak";

        Dragon(string name, string description)
        {
            this.name = name;
            this.description = description;
        }

    }
A vyhadzuje to u vsetkych tried.Nebude chyba niekde v tom dedeni?

Ing. nemtom

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 7709
  • lofr dyslektik
    • View Profile
Re: Objektove programovanie
« Reply #370 on: 18.04.2009, 17:45:01 »
nemas konstruktor ktory nepotrebuje parametre
brix will be shat

Agamemnon

  • Hero Member
  • *****
  • Posts: 2942
  • Per aspera ad Astra
    • View Profile
Re: Objektove programovanie
« Reply #371 on: 18.04.2009, 17:55:24 »
vždy pri dedení sa volá konštruktor predka... a ten musí byť explicitne definovaný... takže v tomto prípade to je tak, že pri vytváraní tej tvojej triedy sa pokúšaš zavolať konštruktor AItem(), ktorý neexistuje... v tom AItem je tam myslím len konštruktor s 2 stringami alebo taký nejaký... pozri a uprav podľa toho ten tvoj kód...
All code is crap.

42

Patto

  • Sr. Member
  • ****
  • Posts: 380
    • View Profile
Re: Objektove programovanie
« Reply #372 on: 18.04.2009, 17:56:22 »
Caute ,neviete poradit???
Vytvorim tie triedy Dragon, Chest, Key... ale stale mi vyhadzuje chybu , ze :" TextGame.Items.AItem' does not contain a constructor that takes '0' "
mam to vytvorene takto:

class Dragon : AItem
    {
        string name = "Je to sedemhlavy drak a rozhodne sa netvari tak, ze by sa chcel kamaratit prave so mnou";
        string description = "drak";

        Dragon(string name, string description)
        {
            this.name = name;
            this.description = description;
        }

    }
A vyhadzuje to u vsetkych tried.Nebude chyba niekde v tom dedeni?

Ano mas chybu s dedenim. Spravne by to malo byt tak, ze sa zavola konstruktor z rodicovskej triedy AItem a tie clenske premmene name a description nie je potrebne vytvarat, kedze sa uz dedia od AItem.

Cize takto:

Code: [Select]
class Dragon:AItem
    {
        public Dragon() : base("drak", "Je to sedemhlavy drak a rozhodne sa netvari tak, ze by sa chcel kamaratit prave so mnou") { }
    }

drtic

  • Full Member
  • ***
  • Posts: 200
    • View Profile
Re: Objektove programovanie
« Reply #373 on: 18.04.2009, 18:27:47 »
Vedeli by ste mi poradit, ze preco mi ak aplikujem get property na objekt odovzdany metode cez parameter vracia 0.
Konkretne:
Code: [Select]
.
.
.
public bool MoveTile(Tile tile)
{
 int row = tile.row;
 int col = tile.col;
 Console.WriteLine(row);
 Console.WriteLine(col);
.
.
.

pricom objekt este pred tym ako je poslany ako parameter vracia spravnu hodnotu
« Last Edit: 18.04.2009, 18:30:06 by drtic »

Patto

  • Sr. Member
  • ****
  • Posts: 380
    • View Profile
Re: Objektove programovanie
« Reply #374 on: 18.04.2009, 18:50:33 »
pretoze chces ziskat clensku premennu, ktora nie je viditelna, a nie property Row a Col

namiesto tile.row a tile.col daj: tile.Row a tile.Col

a inac to sa nahodou netyka dotNetu? :)


-------------
Este som sa chcel opytat ohladom toho priebezneho testu na certifikat z microsoftu: Ohladom coho budu otazky? Podla kurzov, co su na itacademy.microsoftelearning.com ??
« Last Edit: 18.04.2009, 18:53:29 by Patto »