Tapaus 8 – Abstraktion ja suunnittelun kompetenssi

Niinhän siinä sitten kävi, että taitavasta väistelystä huolimatta se sihteerinakki lopulta kohdalle napsahti! Anyway, kuten otsikostakin voi jo päätellä, tämänkertainen tapauksemme koski abstraktiota sekä erilaisia suunnittelutapoja Java -ohjelmalle.

Lue loppuun

Mainokset

Tapaus 6 – Rekursion fasilitointi fasilitoi rekursiota

Uuden tapauksen läpikäynti oli niin hauskaa, että sihteeri halusi palata aiheen ääreen näin kahden viikonkin päästä. Muistikuvat ovat silti melko kirkkaat, mikä lienee harvinaista näin opiskeluaikana.

Päivä sisälsi useita ennätyksiä; Vesa sai stormauksellaan useita viivoja virallisen tarkkailijan kirjaan, virike-paperissa oli 2 virikettä ja 4 erilaista esimerkkiä eli todella paljon asiaa ja kaiken kruunasi stormauksen lopputulema, taululla 63 erilaista post-it lappua! Keep on reading, tiedän et haluut nähä sen kuvan.
Aiheena oli siis rekursio, joka innoittikin meitä tähän kompleksiseen ja groundbreakkaavaan työotsakkeeseen. Ensimmäinen virike valaisi asiaa hyvin samalla tavoin kuin googlekin. Etsi siis ”recursion”-sanalla googlesta tietoa, jos et vieläkään ymmärtänyt rekursiota, tässä dummyproof artikkeli aiheesta:

http://googlesystem.blogspot.fi/2009/07/google-helps-you-understand-recursion.html

Stormauksessa ei tunnetusti ole huonoja ideoita ( tsiigaa Pasila S01E01, 7.25 ->), ja tällä kerralla saavutettiin se yhteinen odotettu synergia, jota kokenut – wait for it – fasilitaattori sai aikaan. Lappuja oli siis 63, uusi virallinen ennätys. Ja sisältökin pysyi asiallisena; oli pilveä, sydämiä, Erkkiä, Scalaa, habboteleportteja ja tietysti Spock ja teleporttauksen riskit. Oli siellä myös muuan StackOverFlow, looppi ja koukkukäsi. Eli loistavaa settiä!

Nyt se proofikin aiheesta:

Ja oli meillä jotain työjakoakin. Tässä niitä rooleja:

  • Pauli – Matemaattinen rekursio ja vaihtoehdot
  • Justus – Fibonacci eri tavoin
  • Annukka – Syvyyshaku
  • Emmi – Arkku esimerkki
  • Jaakko – Rekursiivinen huumori
  • Kaisa – Esimerkki 3, eli kertoma = !
  • Hanna – Rekursio yleisesti Javassa
  • Aarne – Rekursio mahdollisuutena
  • Vesa – Carcassonne esimerkki
  • Miikka – Rekursio uhkana

Over and out!

Tapaus 5: Koodi kusee – missä vika?

Tämänpäiväinen OLO-sessio oli monella tapaa mielenkiintoinen. Aluksi suurta jännitystä loi Vesan paikalle tuoma mystinen suuri uunipeltipaketti. Kaikkien riemuksi sieltä paljastui mokkapaloja, mutta ei kuitenkaan mitä vain mokkapaloja, vaan itse rakkaalla Athenen logolla koristeltuja mokkapaloja! Tähän ei kuitenkaan jännitys loppunut, vaan hämmennystä herätti myös paikalle ilmestynyt vieras ihminen. Tämä Aura Paloheimoksi itsensä esitellyt oli kertomassa meille siitä, kuinka meidät on valittu koekaniineiksi tutkimukseen, jossa tutkitaan ongelmalähtöistä oppimista. JAIKS, tästä kuullaan varmasti lisää myöhemmissä postauksissa!

Lue loppuun

Tapaus 3: Purku

Purimme tällä viikolla Tietorakenteet-otsakkeen oppimistavoitteet. Osa oli perehtynyt yksittäisiin perustietorakenteisiin teoriatasolla ja osa annettujen tehtävien toteutukseen teoriassa tai käytännössä.

Ensin pureuduttiin taulukkoon, joukkoon, listaan ja sanakirjarakenteeseen. Koska käsitteet oli suppeasti käyty läpi Tapaus 3 -monisteessa ja tarkemmin Janne Käen luennolla, purku toimi hyvänä kertauksena kaikille kunkin tietorakennetyypin ominaisuuksista. Taulukko, joukko ja sanakirjarakenne purettiin tuttuun tapaan sanallisesti, mutta lista käsiteltiin Hannan itse tekemän käsitekartan avulla.

Tehtävänannoissa kukin esitti sanallisesti, miten oli ajatellut toteuttaa oman Pala- tai Maailma-luokkansa. Pääosin kaikki yleisesti kuvailivat, miten oman luokan tekemistä voisi lähestyä ja mitä tietorakennetta toteutukseen kannattaisi käyttää. Osalla oli myös koodia oman purun tukena. Vesa esitteli muille ohjelmoimansa luokan Pala.

Purkujen yhteydessä sovittiin, että mikäli muilla on lisättävää kunkin oppimistavoitteen purkuun, näistä voidaan jatkaa keskustelua. Maailma 2:n kohdalla ryhmä onnistui rikkomaan staattisen ”yksi kerrallaan” -asetelman ja ideoimaan yhdessä Miikan alustamaa purkua.

Purun aikana sovittiin, että mikäli purkuun liittyy kuvia tai siistejä visuaalisia toteutuksia, ne myös (alustusten ja purkujen ohella) pyritään julkaisemaan blogissa.

Ai niin, tarjolla oli suklaapisarakeksejä. Kaikki syötiin.

Tapaus 4: Elämä on peli – kadonneen eXän metsästys

Tydyy.

Tapaus nelosen (joka tällä kertaa oli oikeasti numero 4 eikä laatikko) käsittely alkoi intoihimoisella lukemisella muruisten kaurakeksien narskuessa hampaissa. Perinteiset pöydänpäässäistujamme (=assarit) Kake ja Henri olivat korvautuneet tiivistyneesti yksinäisellä Joonaksella.
Nyt tehtävänannossa oli kyse roboteista ja labyrinteistä – äärimmäisen mielenkiintoisesta aiheesta siis. Tehtävänannossa vilisi jo java-termejä olioista arvoihin sekä esimerkkejä robotin osaamista asioista metodikäskyinä ja tapauksen mieltäminen java-koodina alkoi käydä jo luontaisesti.

Lue loppuun

Tapaus 3: Tietorakenteet

Tapaus 3: Tietorakenteet

Edellisen tapauksen purun jälkeen ryhmämme sai eteensä uusia jänniä asioita. Käsiteltävä tapaus liittyy Javassa oleviin eri tietorakennetyyppeihin – taulukkoihin, joukkoihin, listoihin ja sanakirjarakenteisiin – joista yritimme parhaamme mukaan saada ideaa irti. Työotsakkeen ”Tietorakenteet” keksimisen jälkeen edessämme oli tutuksi tullut aivoriihi.

Aivoriihi, eli Post-It lappujen intohimoinen taululle läiskiminen, meinasi saada heikon alun kun kaikille ryhmän jäsenille ei ihan vielä auennut, mitä ihmettä tietorakenteet tarkoittavat. Ymmärrettävää, kun aiheesta järjestettävä luento on vasta seuraavana päivänä edessä niin melkein tyhjältä pöydältä on varmasti hankala aloittaa.

Allekirjoittanut kuitenkin pääsi viimeinkin hääräilemään lappujen kanssa ja mukavan ryhmittelyn jälkeen taululle muodostui seuraavan näköinen järjestys.

Hommat jakautuivat seuraavasti:

  • Annukka ottaa selvää taulukoista
  • Justus joukoista
  • Kaisa sanakirjarakenteista
  • Hanna listoista

OLOvirikkeisiin kuuluivat myös kuusi eri luokan suunnittelutehtävää. Ne jakautuivat seuraavasti:

  • Luokan Pala suunnittelu:
    1. Emmi: Maailman paloissa voi kussakin sijaita useita olentoja.
    2. Jaakko: Maailmassa on osiin jaettuja paloja. Kussakin palan osassa (esimerkiksi eteläosassa) voi sijaita yksi olento.
    3. Pauli: Maailmassa on osiin jaettuja paloja, ja kussakin osassa voi sijaita useita olentoja.
    4. Vesa: Maailmassa on yhdeksään osaan jaettuja paloja. Kussakin osassa voi sijaita useita olentoja ja esineitä. Kullakin osalla on myös oma nimi, maastotyyppi, sää ja tunnelma.
  • Luokan Maailma suunnittelu:
    1. Aarne: Maailma koostuu neliönmuotoisista paloista, ja maailmalle on määritelty suurin mahdollinen leveys ja korkeus. Maailmassa ei sijaitse olentoja – tarvitsee vain tietää, missä kohden maailmassa on laattoja ja missä ei.
    2. Miikka: Kuten kohdassa 1, mutta maailman kokoa ei rajoitettu

Päätimme kollektiivisesti että Miikka saa kärsiä hankalimman tehtävän kanssa nautittuaan Rooman lämmöstä. Tervetuloa takaisin Suomeen.