Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Osan kaikki tehtävät

Tehtävä 8.1: Todo-sovellus, vaihe 7. 1 p.

Palauta osan 8.1 perusteella refaktoroitu projekti. Kertaus tämän osan vaiheista:

  • Luo tehtävälle oma malliolio (Tehtava) käyttöliittymäkomponenttien sijaan.
  • Lisää malliin vähintään tehtävän otsikko ja tehty/ei-tehty -tila.
  • Ota käyttöön ObservableList<Tehtava> tehtävien pääasiallisena tietorakenteena.
  • Päivitä tehtävän lisäyslogiikka käyttämään mallioliota.

Kun vaihe on valmis, tee git add muuttuneille tiedostoille ja git commit. Palauta projektisi tiedostot.

Tee tehtävä TIMissä
Tehtävä 8.2: Todo-sovellus, vaihe 8. 1 p.

Palauta osan 8.2 perusteella edistetty projekti. Kertaus tämän osan vaiheista:

  • Korvaa tehtävien VBox + CheckBox-listaus TableView-komponentilla.
  • Lisää taulukkoon vähintään sarakkeet: tehtävä (otsikko), tehty-tila.
  • Kytke taulukon data ObservableList<Tehtava>-listaan.
  • Mahdollista tehtävän valinta ja poisto valitulta riviltä.

Kun vaihe on valmis, tee git add muuttuneille tiedostoille ja git commit. Palauta projektisi tiedostot.

Tee tehtävä TIMissä
Tehtävä 8.3: Todo-sovellus, vaihe 9. 1 p.

Palauta osan 8.3 perusteella edistetty projekti. Kertaus tämän osan vaiheista:

  • Jäsennä projekti kerroksiin (vähintään malli + käyttöliittymälogiikka).
  • Siirrä tiedoston luku- ja kirjoituslogiikka pois kontrollerista Tehtavakokoelma-luokkaan.
  • Muuta MainController-luokka delegoimaan tallennus- ja latausoperaatiot mallille.

Kun vaihe on valmis, tee git add muuttuneille tiedostoille ja git commit. Palauta projektisi tiedostot.

Tee tehtävä TIMissä
Tehtävä 8.4: Todo-sovellus, vaihe 10. 1 p.

Palauta osan 8.4 perusteella edistetty projekti. Kertaus tämän osan vaiheista:

  • Avaa tehtävän muokkausnäkymä, kun käyttäjä tuplaklikkaa tehtävää.
  • Lisää tehtävälle vähintään kuvaus ja prioriteetti.
  • Lisää syötteille validointi (esim. tehtävän otsikko ei saa olla tyhjä).
  • Tallenna muokkaukset takaisin tehtävään ja päivitä näkymä.

Kun vaihe on valmis, tee git add muuttuneille tiedostoille ja git commit. Palauta projektisi tiedostot.

Tee tehtävä TIMissä
Tehtävä 8.5: Testaus. 1 p.

Ota tehtävän 5.10 vastauksesi (tai mallivastaus), ja kirjoita sille yksikkötestit. Testaa aliohjelman toimivuutta ainakin viidellä eri syötteellä. Käytä tehtävässä annettuja esimerkkejä tai keksi itse uusia testitapauksia.

Tee tehtävä TIMissä
Tehtävä 8.6: bisneslogiikan testaaminen.1 p.

Kirjoita Tehtavakokoelma-luokalle yksikkötestejä. Testaa ainakin seuraavat asiat:

  • Kun tehtävä lisätään otsikolla, jonka alussa ja lopussa on välilyöntejä, tyhjät poistetaan ennen tallentamista listaan.
  • Kun kokoelmaan lisätään kaksi tehtävää, joilla on sama otsikko, molemmat oikeasti päätyvät listaan.
  • Edelliseen jatkoa: Kun toinen noista tehtävistä merkitään tehdyksi, vain kyseinen tehtävä merkitään tehdyksi, ei toista.
  • Kun kokoelmaan lisätään kaksi eri tehtävää peräkkäin, molemmat päätyvät listaan oikeassa järjestyksessä.

Palauta TehtavakokoelmaTest-luokka.

Tee tehtävä TIMissä
Bonus: Tehtävä 8.7: Todo-sovellus, vaihe 11. 1 p.

Palauta osan 8.5 perusteella edistetty projekti. Kertaus tämän osan vaiheista:

  • Lisää projektiin yksikkötestit.
  • Eriytä tehtävien tallennus ja lataus erilliseen luokkaan, joka toteuttaa TehtavaRepository-rajapinnan.
  • Tee testipakkaukseen mock-luokka, joka toteuttaa TehtavaRepository-rajapinnan, mutta tallentaa datan vain muistissa.
  • Testaa tiedoston tallennus/lataus.

Kun vaihe on valmis, tee git add muuttuneille tiedostoille ja git commit.

Palauta TehtavaRepository-rajapinta sekä JsonTehtavaRepository, MockTehtavaRepository ja TehtavakokoelmaTest-luokat. Muita luokkia tai FXML-tiedostoja ei tarvitse palauttaa.

Tee tehtävä TIMissä
Tehtävä 8.8: Git-etävarasto. 1 p.

Tee työllesi julkinen Git-etävarasto ja tallenna koodisi sinne.

Tee tehtävä TIMissä