Ero sivun ”Kurssikuvauksia” versioiden välillä

3 433 merkkiä lisätty ,  9 vuotta sitten
Rivi 147: Rivi 147:
== Aineopintojen harjoitustöiden valintakori ==
== Aineopintojen harjoitustöiden valintakori ==


=== Tietorakenteiden harjoitustyö (4 op) ===
=== Ohjelmoinnin harjoitustyö (5 op) ===
 
* Tunnetaan myös nimellä Javalabra
* Ryhmiä joka periodissa sekä kesäisin
 
"Javalabra" laajentaa Ohjelmoinnin jatkokurssin asioita. Ohjelmoinnin jatkokurssin loppupuolen laskarit ovat juuri sitä tärkeää ja olennaista kamaa, jonka joutuu viimeistään täällä opettelemaan, vaikka se kurssilla yleensä skipataankin nopeasti. Näitä ovat mm. tiedostojen käsittely, poikkeukset, rajapintaluokat sekä pakkaukset. Kannattaa siis höristää korviaan jo Ohjelmoinnin jatkokurssilla näitä avainsanoja kuullessaan, vaikka mieli tekisikin jättää parit viimeiset laskarit väliin. API-kuvausten lukutaito on '''erittäin''' hyödyllinen esitieto.
 
Labrassa on myös ohjelmointikursseille uutta ja ihmeellistä asiaa: Javan valmiit työkalut, graafisen käyttöliittymän ohjelmointi (Swing-komponenteilla), ohjelman suunnittelu olioita käyttäen, koodin kommentointi ja testaus, projektin dokumentointi jne. Lisäksi pitää vielä oppia pysymään projektin aikataulussa, ihan ilman äidin apua. Ajankäytön opettelu on jo itsessään aikamoinen työmaa.
 
Kurssilla tehdään oma, kokonainen, pienehkö mutta toimiva ohjelma. Ohjelmasta saa tehdä niin upean kuin osaa, mutta parasta olisi tässä vaiheessa pitää liika into tallessa. Palkkana on kuitenkin vain oppia ja 4 opintopistettä, eikä niitäkään saa, jos megamahtava Hekumometri jokasuuntaisella kutkulaattorilla ei toimi, leviää käsiin ja kaataa kääntäjän kotiovella. Lisäksi ruutia pitää jättää myös ohjelman dokumentaation kirjoittamiseen. Ja tämä kaikki pitäisi saada valmiiksi 6 viikossa! Nopea laskutoimitus osoittaa, että jos otat löysästi labran alkupuoliskon, loppupuolella sinulle rapsahtaa jo lähes 30 viikkotuntia pelkkää labratyötä.
 
Labraopetus koostuu alun yhteisluennosta, parista ryhmätapaamesista ja viikoittaisista henkilökohtaisista ohjauspalavereista. Alkuluennoilla käydään läpi mm. graafisen käyttöliittymän laatimisen perusteita ja dokumentointia, ryhmätapaamisissa esitellään omaa työtä muille. Huomaa että alkuluennolle osallistuminen on labraan osallistumisen kannalta pakollista. Ohjauspalavereissa raportoidaan ohjaajalle työn edistymisestä ja ihmetellään ohjaajan kanssa vaikeita kohtia. Tapaamisten lisäksi ohjaajilla on päivystysajat, jolloin päivystävältä ohjaajalta saa käydä kysymässä apua. Labraneuvonta toimii yleensä kakkoskerroksen aulassa (tarkat neuvonta-ajankohdat ilmoitetaan kurssilla).
 
Työn alkaessa pääsee yleensä itku. Joudut synkkään metsään vain voiveitsen kanssa. Työsi ohjaajalta, kavereilta ja verkosta saat kyllä apua. Ryhmätapaamisiin, ohjelman suunnitteluun ja dokumentointiin, Javan hienouksien opetteluun sekä varsinaiseen koodaukseen menee joka tapauksessa paljon aikaa. Kalenteriin onkin parasta merkitä jo kurssia aloittaessaan ne 80 tuntia, jotka käytät tämän kurssin suorittamiseen ennen deadlinea. Jos Ohjelmoinnin perusteet ja Ohjelmoinnin jatkokurssi on tullut suoritettua hieman horjuen (alle kolmosen arvosanalla), on syytä suosiolla lisätä parikymmentä tuntia aikatauluun. Jos sinulla on jo ammattillista kokemusta koodauksesta tai dokumentaation kirjoittamisesta, voit pienentää arviota tuntimäärästäsi.
 
Suurin haaste useimmalle opiskelijalle on suunnittelu- ja toteutusdokumentin kirjoittaminen (yleensä dokumenttien kirjoittaminen kurssista riippumatta). Toteutusdokumentin kirjoittamista ei missään nimessä tule jättää viimeiseen iltaan. Dokumentointi on taito, jota käpistelijä tarvii kaikkialla. Se on syytä opetella ajoissa ettei tulevissa harjoitustöissä tule itku, Ohjelmistotuotantoprojektissa parku ja työelämässä kenkää.
 
=== Tietorakenteiden harjoitustyö (5 op) ===


* Tunnetaan myös nimellä Tiralabra
* Tunnetaan myös nimellä Tiralabra
Rivi 158: Rivi 175:
Kurssilta kannattaa ottaa kaikki hyöty irti, koska seuraava paikka, jossa ohjelmointitaitoja koetellaan, on yleensä Ohjelmistotuotantoprojekti ja siellä ohjelmoinnin oletetaan jo sujuvan rutiinilla.
Kurssilta kannattaa ottaa kaikki hyöty irti, koska seuraava paikka, jossa ohjelmointitaitoja koetellaan, on yleensä Ohjelmistotuotantoprojekti ja siellä ohjelmoinnin oletetaan jo sujuvan rutiinilla.


=== Tietokantasovellus (4 op) ===
=== Tietokantasovellus (5 op) ===


* Ryhmiä yleensä joka periodissa sekä kesäisin
* Ryhmiä yleensä joka periodissa sekä kesäisin
Rivi 167: Rivi 184:


Itse toteutuksen tekeminen onkin sitten vähemmän työlästä, jos suunnittelu on kunnolla tehty. WWW-sivustolle tulevan rakennelmansa saa toteuttaa varsin monella tavalla ja tietokannoissakin on valinnan varaa. Suurin osa tekee harjoitustyönsä joko PHP:llä, Javalla tai Ruby on Railssillä, mutta jos intoa löytyy jonkin eksoottisemman ympäristön käyttämiseen, niin sekin on usein kelvannut ohjaajalle.
Itse toteutuksen tekeminen onkin sitten vähemmän työlästä, jos suunnittelu on kunnolla tehty. WWW-sivustolle tulevan rakennelmansa saa toteuttaa varsin monella tavalla ja tietokannoissakin on valinnan varaa. Suurin osa tekee harjoitustyönsä joko PHP:llä, Javalla tai Ruby on Railssillä, mutta jos intoa löytyy jonkin eksoottisemman ympäristön käyttämiseen, niin sekin on usein kelvannut ohjaajalle.
=== AI-Odysseia (4op) ===
* 2. periodissa
Kurssilla ohjelmoidaan tekoälyjä ratkaisemaan kolme erillistä tehtävää, suoritukseen vaaditaan kurssinpitäjän laativan malliratkaisun voittaminen, ja kurssilla samalla myös leikkimielisesti kilpaillaan opiskelijoiden kesken paremmuudesta.


== Aineopintojen valinnaiset kurssit (valitse vähintään kaksi) ==
== Aineopintojen valinnaiset kurssit (valitse vähintään kaksi) ==