Tehtävät kevät 2009

#1 / Viikko 3

Matikkanero

Oppimistavoite: GUIn ja businesslogiikan sisältävän luokan kytkeminen

Tee Windows-sovellus, jolla loppukäyttäjä voi tehdä seuraavat peruslaskutoimitukset:
Summa, Erotus, Tulo, Osamäärä ja Potenssiin korotus.
Sovelluksessa on kaksi tekstikenttä johon arvot voidaan syöttää, yksi valintalista josta laskutoimitus valitaan ja yksi selite, jossa laskutoimituksen tulos esitetään.
Toteuta tämän matikkaneron toiminnallisuus luokalla MatikkaNero, joka on oheisen speksin mukainen.
Muista että nollalla ei saa jakaa!

# 2 / Viikko 4

WinLotto

Oppimistavoite: business-luokan luonti ja käyttö Windows-sovelluksessa

Luo Lotto-niminen luokka allaolevan kuvan määrittelyn mukaisesti. Tyyppi voi olla Suomi tai VikingLotto. "Suomi" on alkuperäinen lotto, jossa arvotaan 7 numero 39:sta, Viking Lotossa arvotaan 6 numero 48:sta.

Testaa huolellisesti toteuttamasi luokka, että se varmasti toimii oikein. Käännä sen jälkeen luokkasi DLL:ksi jota käytät. Tee  kaksi käyttöliittymää, joilla voi käyttää Lotto-luokka. Tee sovelluksiin viittaus (reference) luomaasi DLL:ään:

# 3 / Viikko 5

Oudot oliot SM-liigassa

Oppimistavoite: luokkien luonti ja käyttö, hankkia rutiinia C# olio-ohjelmoinnista, ArrayList

Tehtävä: Tee toiminnallisuus oheisen kuvan mukaiselle ohjelmalle.  Tee ensimmäiseksi luokka Pelaaja, jolla on ominaisuudet Etunimi, Sukunimi, Koko nimi (sukunimi + etunimi siis esim: "Helminen Raimo"), Seura, Siirtohinta. Tee luokalle tarvittavat metodit.
Ohjelmalla on seuraavat toiminnot:
- käynnistyksen yhteydessä Seura -combobox täytetään 14 SM-Liigan seuralla
- Tee pelaaja: tarkistetaan että kaikissa kentissä on arvo ja tarkistetaan ettei saman nimistä pelaaja ole jo Pelaajat -listalla ja luodaan olio luokasta Pelaaja ja kirjoitetaan Pelaajat -listalle pelaajan kokonimi (sukunimi + etunimi) ja seura
- jos pelaajan nimeä napsautetaan listboxissa niin pelaajan kaikki tiedot kirjoitetaan tekstikenttiin tietojen muokkausta varten
- Talleta pelaaja: ei luoda uutta oliota vaan muutetaan olemassa olevan olion tietoja ja kirjoitetaan tiedot listboxiin
- Poista pelaaja: poistetaan listasta valittu pelaaja
- Kirjoita tiedostoon: kirjoitetaan listassa olevien kaikkien olioitten tiedot käyttäjän Save-dialogissa valitsemaan tiedostoon
- Lopeta: lopettaa ohjelman
- dialogin alareunassa on tilarivi (statuBar) jossa näytetään aina tapahtuneet toiminnot

Extratehtävä: Mihin tallennat pelaajien tiedot siksi ajaksi kun ohjelma ei ole käynnissä? Tee tätä varten tarvittava toiminnallisuus.

#4 / Viikko 6

EventLogger

Luo sovellus joka kirjoittaa Windowsin tapahtumalokiin käyttäjän antamia lokitietoja: Entrytext ja EntryID. Sovelluksen käynnistyessä kirjoitetaan automaattisesti: ID=100 ja teksti "Sovellus käynnistetty siis esim 7.3.2008 8:00". Sovellusta suljettaessa kirjoitetaan: ID=101 "Sovellus suljettu 7.3.2007 8:25".; missä päivämäärä ja kellonaika reaaliaikaisesti.

Sovellus myös muistaa ikkunan paikan ja koon, eli jos käyttäjä siirtää ikkunan toiseen paikkaan tai muuttaa sen kokoa ja sulkee sovelluksen, niin seuraavalla kerralla käynnistettäessä sovellus "muistaa" paikan&koon.

#5 / Viikko 7

Komponentti-demo

Viikon 7 tehtävänä on toteuttaa loppuun tunnilla aloitettu Koronlaskenta-sovellus, katso harjoitukset.

#6 / Viikko 8

MVC-demo

Tulossa

#7 / Viikko 11

Pieni Viinikellari

Oppimistavoite: oppia käyttämään DataAdapter ja DataSet&DataTable -olioita

Tehtävänä on laatia oheisen kuvan mukainen Windows-sovellus tiedon hakuun Wines-tietokannasta, hae DataGridView:hen tiedot Wine-taulusta.
Luo toiminnallisuus Get Data ja Save Data -komentopainikkeille, eli käyttäjän on voitava lisätä, poistaa ja muokata viinejä.

#8 / Viikko 12

SM-liigan outojen olioitten tallentaminen

Oppimistavoite: opetella ja/tai kerrata kuinka tietoja voidaan kirjoittaa sovelluksesta eri tallennuspaikkoihin, enum

Tee aiemmin tehtyyn Windows-sovellukseen OudotOliot SMLiigassa toiminnallisuus jolla käyttäjä voi tallentaa luomiensa olioitten tiedot. Seuraavat tiedot tallennetaan: sukunimi, etunimi, seura, siirtohinta.

Käyttäjä voi valita mihin tiedot tallennetaan:
- näytölle (ei siis varsinaisesti tallenna mihinkään sic)
- tekstitiedostoon tiedot erotetaan toisistaan puolipisteelllä)
- XML-tiedostoon (käytä DataSettiä!)
- tietokantaan (tallenna paikalliseen Access-tietokantaan, tallenna ConnectionString App.Config-tiedostoon)

Tee tallennusta varten oheisten kuvien mukainen lomake frmTallennus sekä luokka Tallennus. Se sisältää tarvittavan toiminnallisen logiikan sekä oheisen esimerkin mukaisen arvotaulukon eli enum -määrittelyn. Käytä samaa arvotaulukkoa myös lomakkeella.

public enum Tallennuspaikka
{Määrittelemätön, Näyttö, Serialisoi, Tekstitiedosto, XMLtiedosto, Tietokanta}

Olisihan se nyt kiva kun tiedot on jossain tallessa, niin myös lukea ne takaisin sovellukseen, joten tee toiminnallisuus jolla
1) ohjelmaa käynnistäessä ohjelma automaattisesti lukee tiedot käyttäjän viimeksi käyttämästä tallennuspaikasta
2) käyttäjä voi valita tietolähteen (kuten ylläolevassa kuvassa, paitsi ei tietänkään näytöltä)

#9 / Viikko 13

Lainalaskuri WEBissä

tulossa...

#10 / Viikko 14

SM-liigan outojen olioitten seikkailut Webissä

Oppimistavoite: opetella ja/tai kerrata kuinka eri tietovarastoissa olevia tietoja voidaan esittää (ml suodatus, ryhmittely) webbi-sivulla. Käytä tietokannan SMLiiga08.mdb taulua Pelaajat.

Tehtävä: Tee websivu, jossa käyttäjä voi:

1) listata kaikki pelaajat aakkosjärjestyksessä

2) listata kaikki valitun joukkueen pelaajat aakkosjärjestyksessä tai tehopisteitten mukaan järjestettynä

3) listata kaikki tietyn pelipaikan pelaajat aakkosjärjestyksessä tai tehopisteitten mukaan järjestettynä

#11 / Viikko 15

Käyttäjän autentikointi tietokannasta ASP.NET sovelluksessa

Oppimistavoite: opetella toteuttamaan webbi-sovellus, jossa on kaikille käyttäjille avoimia sivuja ja vain autentikoituneille käyttäjille tarkoitettuja sivuja.

Tehtävä: tulossa

Back