2. luento CS-C2110 Ohjelmointistudio 1: mediaohjelmointi Syksy 2016 [Studio 1] Antti Tolppanen, Sanna Suoranta, Lauri Savioja
Tänään Ensimmäinen tehtävä Vinkkejä projektin aloittamiseen OLO-työskentelyn esittely ja tiedonhaku Ryhmien muodostamista
1. Tehtävästä
Tekstipohjainen ristinollapeli Aloita uusi peli tai sulje ohjelma Kysy pelaajalta halutut koordinaatit Tarkistaa että koordinaateissa on tyhjä paikka ja sijoita Tulosta pelikentän tilanne Pelaa tietokoneen vuoro Ilmoita voitosta tai tasapelistä Tarjoa mahdollisuus aloittaa uusi peli
TicTacToe.scala Ota käyttöön StdIn-kirjasto, mahdollistaa käyttäjän syötteitä lukevien metodien käytön Ota käyttöön Random-olio, mahdollistaa satunnaislukuja arpovien metodien käytön Periytä App-piirreluokka, kertoo ohjelmalle mistä aloittaa suoritus ja ajaa olion rungossa olevat komennot
TicTacToe.scala
Haastavin metodi- haswon Pelitilanne säilötään kaksiulotteisessa taulukossa Taulukon sisällä on siis kolme taulukkoa Array( Array(-, -, -), Array(-, -, -), Array(-, -, -) ) Ongelma: miten käydä läpi vaaka-, pysty ja vinorivit?
Nopeasti projektista CS-C2110 Ohjelmointistudio 1: mediaohjelmointi Syksy 2016 [Studio 1] Antti Tolppanen, Sanna Suoranta, Lauri Savioja
Vinkkejä Panostakaa projektisuunnitelmaan Kysykää assarilta jos kysyttävää! Sopikaa yhteisistä tavoitteista ja työnjaosta Miten parhaiten edesautetaan kaikkien ryhmän jäsenten oppimista? Kurssitehtävissä käytetty Scala Swingpakkausta grafiikan toteutukseen Projektin voi hyvin toteuttaa Swingiä käyttämällä Ulkopuolisten grafiikka-, fysiikka- yms.kirjastojen ja vastaavien käyttäminen on myös sallittua Ei kuitenkaan missään nimessä edellytys!
OLO-työskentely CS-C2110 Ohjelmointistudio 1: mediaohjelmointi Syksy 2016 [Studio 1] Antti Tolppanen, Sanna Suoranta, Lauri Savioja
Ongelmalähtöinen oppiminen Ratkotaan avoimia kysymyksiä ryhmässä Olemassa olevan tiedon käyttö Tiedon haku, prosessointi ja jäsentäminen Ryhmä miettii kullekin roolit Puheenjohtaja, kirjuri Assarin rooli on ohjata, ei tarjota valmiita vastauksia Työskentelytapa Aloitus: Mitä kullekin tulee mieleen ongelmasta (huom. kaikki ideat siitä mitä asiaan voisi liittyä kukaan ei yleensä ole asiantuntija aluksi) Ideoiden jäsentäminen, mitä valitaan tarkempaan tarkasteluun Itsenäinen työskentely, tiedon haku Tiedon käsittely, yhteenvedon tekeminen, oma arvio onnistumisesta Muille esittäminen
Ongelmanratkaisu Ongelman määrittely Mitä jo tiedetään, mitä yritetään selvittää, mitä tietoa tarvitaan lisää Ratkaisusuunnitelma Muistuttaako jotain toista ongelmaa, johon on jo ratkaisu, jota voit hyödyntää Voiko yksinkertaistaa, ja päästä siten lähemmäksi ratkaisua Pilko ongelma mahdollisimman pieniin osiin Esitä suunnitelma vaiheittaisena etenemisenä Suunnitelman toteuttaminen Vaihe vaiheelta, arvioi edistymistä ja tarkenna Varmista, että ratkaisu vastaa alkuperäistä (tai matkan varrella tarkentunutta ongelmaa) Arviointi Toimiiko ratkaisu, voisiko keksiä paremman ratkaisun Jos samankaltainen ongelma tulee vastaan, miten etenisit nyt
Tiedonhaku http://www.cse.tkk.fi/datacommunications/ Studies/Instructions/seekinginfo.php
Tiedon jäsentäminen: konseptikartta
Muistiinpanoja: miellekartta
Projektiryhmän muodostaminen CS-C2110 Ohjelmointistudio 1: mediaohjelmointi Syksy 2016 [Studio 1] Antti Tolppanen, Sanna Suoranta, Lauri Savioja
Nyt: projektiryhmien ilmoittautuminen Ne, joilla ei ole vielä ryhmää Tulkaa nyt tänne salin etuosaan, jos teillä ei ole vielä kolmen hengen projektiryhmää kasassa Poissaolijat: Kirjautukaa kurssin slack-keskusteluun, valitkaa oma OLO[1-3] (https://studio1-2016.slack.com/signup aalto-sähköpostiosoitteella) Koittakaa etsiä itsellenne ryhmä Voi myös liittyä jo johonkin muodosteilla olleeseen ryhmään neljänneksi (eli ryhmän koko 3-4 opiskelijaa on hyvä) Kukaan ei saa lupaa tehdä projektityötä yksin (eikä parina)! Kurssin henkilökunta muodostaa projektiryhmistä 9-12 opiskelijan OLO-ryhmät