<< Meny

Övningar Flash

Ankapplikation med Strategymönstret

 

Använd Flash och Actionscript för att lösa dessa uppgifter.

  1. Utgå från flashfilen i uppgift 3 bland förra lektionens övningar och skapa en Flashfil anka.fla som kallar på en mainmetod i klassen AnkProgram.as. Döp filerna enligt tabellen nedan. Låt mainmetoden instantiera en Anka. Gör så att konstruktorn i klassen Anka skriver ut "Anka skapad" i meddelandefönstret.
    anka.fla /source
    AnkProgram.as /source/ankor
    Anka.as /source/ankor
  2. Utveckla applikationen genom att:
    - Skapa en klass för en speciell sorts änder, Skedand.as.
    - Låt Skedand ärva Anka.
    - Ändra i AnkProgram så att mainmetoden i stället instantierar en Skedand.
    Skedand.as /source/ankor
  3. Skapa ett interface i en fil KvackBeteende.as och en klass som heter Dubbelkvack i en annan fil .
    - Definiera en metod kvacka() i detta interface.
    - Låt Dubbelkvack implementera interfacet KvackBeteende
    - Skapa en metod kvacka() i Dubbelkvack. Låt metoden innehålla kommandot trace("Kvack kvack!").
    - Kontrollera att koden inte innehåller syntaxfel - i övrigt kan du avvakta med test av funktionalitet till nästa uppgift.
    Dubbelkvack.as /source/ankor
    KvackBeteende.as /source/ankor
  4. Nästa steg är att koppla dubbelkvackandet till skedanden. Testa följande tillvägagångssätt:
    - Definiera en global variabel av typen KvackBeteende i klassen Anka. Låt variabeln förslagsvis heta kvacktyp.
    - Definiera en metod doKvack() i Anka. I metoden utför du en kvackning med genom att kalla på kvacktyp.kvacka().
    - Gå till skedandens konstruktor och Instantiera ett KvackBeteende och lägg i variabeln kvacktyp. (kvacktyp = new Dubbelkvack()).
    - Testa genom genom attha med följande kod i ankprogrammets mainmetod:
       var ankan:SkedAnd = new SkedAnd();
       ankan.utforKvack();
  5. Skapa nu ytterligare kvackmetoder enligt tabellen nedan. Ändra skedandens kvackande dynamiskt i main-metoden med kommandot:
           ankan.kvackMetod = new ankor.Fuiit();
    Kvack.as /source/ankor
    Fuiit.as /source/ankor
    IngetKvack /source/ankor
  6. Skapa ett interface för flygBeteende på motsvarande sätt som du gjort med kvackandet. Hitta på lämpliga tracetexter. Testa interfacet.
    FlygBetende.as /source/ankor
    Flyg.as /source/ankor
    KanInteFlyga.as /source/ankor
  7. Skapa ytterligare ankor. Ge dem beteenden och testa.
    Mandarinand.as /source/ankor
    Plastanka.as /source/ankor
    Bondanka.as /source/ankor