Käpistelyä
April 9th, 2007Olisi aika hetkeksi keskittyä tietojenkäsittelyn opiskelun ihmeelliseen maailmaan. Tällä periodilla suoritan peräti kahta kurssia Kumpulaan, kummatkin luonnollisesti tarkoitettu vain pääaineopiskelijoille. Kurssien menestymistä ei vaan voi erityisemmin kehua.
Ohjelmoinnin harjoitustyö aiheuttaa pienoisia ristiriitoja työn ohjaajan kanssa, koska opiskelen Javaa ja Java on olioparadigmainen kieli pitää harjoitustyössäkin käyttää oloita, vaikkei siinä olisikaan mitään järkeä. Pitkien keskusteluiden jälkeen ohjaaja ystävällisesti sanoi, että suunnittelemani ratkaisu staattisilla metodikutsuilla luokkaan jossa Javan IO:lle on metodit ei kelpaa, vaan luon erikseen tästä luokasta olion jolle teen kutsut.
Mielestäni ylimääräiset oliot lisäävät koodin vaikeutta, tästä esimerkkinä olkoon seuraava Wikipedian koodi:
import javax.swing.JOptionPane; public class OddEven { private int input; public OddEven() { input = Integer.parseInt(JOptionPane.showInputDialog("Please Enter A Number")); } public void calculate() { if (input % 2 == 0) System.out.println("Even"); else System.out.println("Odd"); } public static void main(String[] args) { OddEven number = new OddEven(); number.calculate(); } }
Itse tykkäisin enemmän KISSimmästä ratkaisusta, vaikka se olisikin rumaa 80- ja 70-luvun proseduaalista ohjelmointia. Ehkä tässä näkyy mikä on ero pääaine ja sivuaineopiskelijan välillä. Mutta, valitettavasti minun pitänee noudattaa ohjaajan sanaa vaikka se tuntuukin minusta tyhmältä.
Toisena kurssina on tietokantoja, täsmällisemmin SQL-syntaksia ja yleistä tarinaa siitä miten pitäisi tietokantoja suunnitella. Kurssiin liittyy harjoitustehtävät ja harjoitusryhmä, sekä luonnollisesti luentoja ja verkko-opiskelua.
Harjoitusryhmämme työskentely etenee varsin sujuvasti, vaikkakin vahingossa muodostimme jo ensimmäisessä luokkakaaviovaiheessa varsin täsmällisen mallin siitä miltä tietokannan pitäisi näyttää: erotimme joitakin yhteyksiä jo valmiiksi omiksi tauluikseen ja tämä oli sitten kiintoisaa havaita kun etenimme suunnitteluprosessissa ylemmältä abstraktiotasolta alemmalle.
Itsenäinen harjoittelu, sekin tuottaa hiukan ongelmia. Minulla taitaa olla asenneongelma kurssin harjoituskannan suhteenm enkä sitten ole erityisemmin tutustunut siihen. Tästä seurauksena jotkut helpotkin osuudet vievät tuskastuttavasti aikaa – ja sitten niissä vaikeammissa osuuksissa alkaa taidot tulla ihan oikeastikin vastaan. Mutta, tätä se opiskelu on, välillä tulee jotain uutta ja ihmeellistä vastaan.