wiki:menustaRungoksi
Last modified 2 years ago Last modified on 2016-01-06 19:33:23

Menusta rungoksi

Etenemisohjeita vaiheiden 4 ja 5 välille

Katso miten vaiheiden kehittyminen näkyy versionhallinnasta

Malli https://trac.cc.jyu.fi/projects/ohj2/wiki/harjoitustyo/malli, erityisesti vaihe5.1. Tosin katso mieluummin yksinkertaista mallia

MOTTO! Älä koskaan tee paljoa muutoksia kerralla. Testaa aina pienten muutosten jälkeen!

  1. tee Jasen ja testaa se pikku pääohjelmalla, vaikka:
    public static void main(String args[]) {
        Jasen aku = new Jasen(), aku2 = new Jasen();
        aku.rekisteroi();
        aku2.rekisteroi();
        aku.tulosta(System.out);
        aku.vastaa_aku_ankka();
        aku.tulosta(System.out);
      
        aku2.vastaa_aku_ankka();
        aku2.tulosta(System.out);
      
        aku2.vastaa_aku_ankka();
        aku2.tulosta(System.out);
    }
    
    Käännä ja testaa!
  1. tee Jasenet ja testaa se pikku pääohjelmalla, vaikka:
    public static void main(String args[]) {
        Jasenet jasenet = new Jasenet();
    
        Jasen aku = new Jasen(), aku2 = new Jasen();
        aku.rekisteroi();    aku.vastaa_aku_ankka();
        aku2.rekisteroi();   aku2.vastaa_aku_ankka();
    
        try {
            jasenet.lisaa(aku);
            jasenet.lisaa(aku2);
        
            System.out.println("========== Jäsenet testi ==============");
        
            for (int i=0; i<jasenet.getLkm(); i++) {
                Jasen jasen = jasenet.anna(i);
                System.out.println("Jäsen nro: " + i);
                jasen.tulosta(System.out);
            }
    
        } catch ( Jasenet.SailoException ex ) {
            System.out.println(ex.getMessage());
        }
    }
    
    Käännä ja testaa!
  1. Tee Kerho-luokka ja testaa
  1. Lisää toimivat osat käyttöliittymäluokkaan ja lisää puuttuvat palat Kerho-luokkaan

Käännä ja testaa!

  1. Vastaavasti jos olisi esim. harrastukset, niin
    • tee ja testaa Harrastus
    • tee ja testaa Harrastukset
    • Lisää Kerhoon harrastukset
  1. lisää käyttöliittymään jotakin, jolla nähdään että vain tietyn jäsenen harrastukset löydetään. Esimerkiksi jäsenen tulostamiseen:
        public void tulosta(PrintStream os, final Jasen jasen) {
            os.println("----------------------------------------------");
            jasen.tulosta(os);
            os.println("----------------------------------------------");
            List<Harrastus> harrastukset = kerho.annaHarrastukset(jasen); 
            for (Harrastus har:harrastukset) 
                har.tulosta(os); 
        }
    
  2. voit myös aluksi rakennella käyttöliittymää yksinkertaisen mallin ideoilla.

Vaiheesta 5 vaiheeseen 6

  • Lisää lisää käyttöliittymäluokan koodiin harrastusten käsittely (tutki hartaasti 4. vaiheen kuvaa).
  • lisää Jasen-luokkaan toString() ja parse() metodit
  • lisää Jasenet luokkaan tietojen luku/kirjoitus tiedostoon
  • lisää tarvittavat metodit Kerho-luokkaan
  • täydennä tarvittavat käyttöliittymäluokkaan
  • tee sama Harrastukset (ja muille luokille)

Vaiheesta 6 vaiheeseen 7