582334 TDD-ohjelmointimenetelmä ja koodin suunnittelu (5 op), syksy 2009
582334 TDD programming technique and designing code (5 cr), autumn 2009

Kurssiesittely Luennot Harjoitukset

Harjoitus 2: Tetris #2-3 (algoritmien synty, refaktorointi). Muuttujien nimeäminen.

Tetris-harjoitustyö

Katso ohjeet ensimmäisistä harjoituksista.

Kotitehtävät

max 6 pistettä

  1. Refaktoroi tämän projektin luokkaa nineplaces.Diagram siten, että sen muuttujilla ja metodeilla on paremmat nimet. Kyseisestä luokasta on nimetty uudelleen lähes kaikki ei-julkiset jäsenet (viimeisiä kahta metodia, index ja contains, ei ole muutettu). Käytä ohjelmointiympäristösi Rename-refaktorointia ja refaktoroi kyseistä luokkaa, kunnes kaikissa sen käyttämissä nimissä on järkeä. (Metodien rakennetta ei tarvitse muuttaa. Pelkkä uudelleennimeäminen riittää.) Tulosta refaktorointisi lopputulos paperille, jotta tehtävää olisi helpompi käsitellä laskuharjoitustilaisuudessa.

    Ohjeita hyvien nimien valitsemiseen saa Clean Code -kirjan luvusta 2 tai artikkelista Meaningful Names.

    1 piste: Muuttujien ja metodien nimistä puolet on nimetty järkevästi. Kaikki testit menevät läpi.
    2 pistettä: Muuttujien ja metodien nimistä kaikki on nimetty järkevästi. Kaikki testit menevät läpi.

  2. Tetris #2-3: Toteuta RotatingPiecesOfBlocksTest ja RotatingTetrominoesTest läpäisevä koodi käyttäen TDD:tä. Jatka toteutusta siitä, mihin jäit edellisissä harjoituksissa. Testitapaukset on annettu valmiiksi, joten sinun tarvitsee vain poistaa kommentit niistä yksi kerrallaan, sitä mukaa kuin saat kirjoitettua testit läpäisevää tuotantokoodia.

    1 piste: Kaikki aiemmat testit ja luokan RotatingPiecesOfBlocksTest 6 testistä 3 menee läpi.
    2 pistettä: Kaikki aiemmat testit ja luokan RotatingPiecesOfBlocksTest 6 testistä 6 menee läpi.
    3 pistettä: Kaikki aiemmat testit ja luokan RotatingTetrominoesTest 12 testistä 5 menee läpi.
    4 pistettä: Kaikki aiemmat testit ja luokan RotatingTetrominoesTest 12 testistä 12 menee läpi.

Harjoitustilaisuudessa keskustellaan muuttujien nimeämisestä, parikoodataan Tetris #4 ja tehdään sen alussa vaatima refaktorointi. Jos menee liian helposti, niin refaktoroi myös koodausparin versio.


Viimeksi muokattu 01.12.2010 21:04 Copyright © 2009 Esko Luontola