Skip to content

Parikoodaus

Kuvauksen kirjoitti: Miro Huuskonen (N4221)

Lyhyt kuvaus käsitteestä tai aiheesta

Parikoodauksella tarkoitetaan käytäntöä, jossa kaksi kehittäjää työskentelevät saman asian parissa samalla koneella. Parikoodaaminen onnistuu myös etänä esimerkiksi videon välityksellä tai mikäli käytetyt/käytettävissä olevat työkalut tukevat samanaikaista muokkaamista niin myös sitä kautta.

Yleisiä parikoodaamiseen liittyviä etuja

  • Ongelmien ratkaiseminen on nopeampaa
  • Koodiin jää vähemmän virheitä
  • Koodi pysyy laadukkaampana ja määriteltyjen käytäntöjen mukaisena
  • Vaatimusten tulkinta on nopeampaa ja tarkempaa

Asetelmasta ja sovelletusta tekniikasta riippuen parikoodaus voi mm. kehittää kommunikointi- ja tiimityöskentelytaitoja, sekä toimia tehokkaana opetusmenetelmänä ja keinona tiedon välittämiseen.

Tapoja ja tekniikoita

Parikoodaukselle on olemassa monia erilaisia tapoja, tekniikoita ja käytäntöjä.

Driver and Navigator

Ajaja keskittyy koodin kirjoittamiseen, jonka aikana navigoija katsoo vierestä. Navigoija ottaa isomman kuvan huomioon, sekä antaa ajajalle suuntaa ja tukea arvioimalla ja ennakoimalla. Rooleja on tarkoitus vaihdella ajoittain kehittäjien vireystilan ylläpitämisen vuoksi.

Ping Pong

Tekniikka soveltuu testivetoiseen kehittämiseen (test-driven development, TDD). Ensimmäinen kehittäjä tekee testejä (ping), joihin toinen kehittäjä vastaa testit läpäisevällä toteutuksella (pong). Koodi usein refaktoroidaan yhdessä "pong"-vaiheen jälkeen.

Strong-style pairing

Hieman poikkeava muoto "Driver and Navigator"-tekniikasta. Pari on muodostettu "ekspertistä" ja "noviisista", jossa ekspertti toimii lähtökohtaisesti navigoijana ja noviisi ajajana. Tekniikka on alussa hyvin oppimispainotteinen, ja ideana onkin noviisin taitojen ja ymmärryksen nostaminen sille tasolle, että roolien vaihtelu on mahdollista.

Linkit ulkopuolisiin lähteisiin

Avainsanat harjoitustehtävän repositoriossa

Listaa tähän käsite-sivut repositorion sisältä, jotka liittyvät kuvaamaasi käsitteeseen/aiheeseen