Ero sivun ”Kurssikuvauksia” versioiden välillä

2 044 merkkiä poistettu ,  13 vuotta sitten
ei muokkausyhteenvetoa
p (Nurinkurisesti varsinainen lapio on 1 op, TVT-ajokortti 3 op - ei päinvastoin)
Ei muokkausyhteenvetoa
Rivi 43: Rivi 43:


=== Ohjelmistojen mallintaminen (4 op) ===
=== Ohjelmistojen mallintaminen (4 op) ===
* Tunnetaan myös niemellä OhMa
* 2. periodissa


Kurssilla annetaan perustiedot ohjelmistojen mallintamisessa käytetyistä työkaluista. Kurssilla piirretään ja luetaan kaavioita jotka kuvaavat ohjelman korkean tason rakennetta. Lisäksi opetukseen sisältyy hitunen testausta ja versionhallintaa, jotka ovat tärkeitä ohjelmointityön apuvälineitä. Tämän kurssin asioista on hyötyä Ohjelmoinnin harjoitustyön dokumentoinnissa (ja myöhemmin Tietokantasovelluksen dokumentoinnissa). Kaavioiden piirtämiseen kannattaa suhtautua ehdottomalla vakavuudella: Niitä piirrellään kaikkialla missä ohjelmistoja toteutetaan.
Kurssilla annetaan perustiedot ohjelmistojen mallintamisessa käytetyistä työkaluista. Kurssilla piirretään ja luetaan kaavioita jotka kuvaavat ohjelman korkean tason rakennetta. Lisäksi opetukseen sisältyy hitunen testausta ja versionhallintaa, jotka ovat tärkeitä ohjelmointityön apuvälineitä. Tämän kurssin asioista on hyötyä Ohjelmoinnin harjoitustyön dokumentoinnissa (ja myöhemmin Tietokantasovelluksen dokumentoinnissa). Kaavioiden piirtämiseen kannattaa suhtautua ehdottomalla vakavuudella: Niitä piirrellään kaikkialla missä ohjelmistoja toteutetaan.
Rivi 66: Rivi 69:


* Tunnetaan myös nimellä Tikape
* Tunnetaan myös nimellä Tikape
* 2. periodissa sekä uudelleen 4. periodissa
* 1. periodissa sekä uudelleen 3. periodissa


Tietokantojen perusteet -kurssi opettaa asioita relaatiokannoista ja SQL-kyselykielestä. Erikoista tässä kurssissa on se, että perinteisiä laskareita ei ole, vaan kaikki tehtävät tehdään koneella WWW-liittymän (SQLTrainer) kautta ja vain oikeat ratkaisut tuottavat harjoituspisteitä. Tämän lisäksi kurssilla suunnitellaan ryhmätyönä tietokanta. Relaatioalgebran ja välillä hankalaltakin tuntuvan SQL-kyselykielen opettelu on kurssin läpäisyn kannalta olennaisen tärkeää. Lohduttautua voit sillä, että SQLTrainerin harjoitustehtävissä vaadittavia kohtuullisen monimutkaisia SQL-kyselyitä harvemmin tarvitaan oikeasti (kokeesessa vaikeahkot liitokset pitää sen sijaan hallita). Relaatioalgebra tuntuu olevan monelle mysteeri, sitäkään useimmat eivät tarvitse onneksi missään.
Tietokantojen perusteet -kurssi opettaa asioita relaatiokannoista ja SQL-kyselykielestä. Erikoista tässä kurssissa on se, että perinteisiä laskareita ei ole, vaan kaikki tehtävät tehdään koneella WWW-liittymän (SQLTrainer) kautta ja vain oikeat ratkaisut tuottavat harjoituspisteitä. Tämän lisäksi kurssilla suunnitellaan ryhmätyönä tietokanta. Relaatioalgebran ja välillä hankalaltakin tuntuvan SQL-kyselykielen opettelu on kurssin läpäisyn kannalta olennaisen tärkeää. Lohduttautua voit sillä, että SQLTrainerin harjoitustehtävissä vaadittavia kohtuullisen monimutkaisia SQL-kyselyitä harvemmin tarvitaan oikeasti (kokeesessa vaikeahkot liitokset pitää sen sijaan hallita). Relaatioalgebra tuntuu olevan monelle mysteeri, sitäkään useimmat eivät tarvitse onneksi missään.
Rivi 75: Rivi 78:


* Tunnetaan myös nimellä Tilpe
* Tunnetaan myös nimellä Tilpe
* 3. periodissa
* 2. periodissa


Kurssilla paneudutaan internetin peruskäsitteistöön ja -tekniikoihin. Kurssi etenee opettelemalla TCP/IP-pinoa taso tasolta. Tutuksi tulee siis pääpiirteittäin kaikki WWW-selaimen sielunelämästä aina verkkokortin bittitasolle asti. Kurssi antaa hyvät perustiedot tietoliikenteestä, jotka ovat tarpeen kaikkien eri linjojen opiskelijoille.
Kurssilla paneudutaan internetin peruskäsitteistöön ja -tekniikoihin. Kurssi etenee opettelemalla TCP/IP-pinoa taso tasolta. Tutuksi tulee siis pääpiirteittäin kaikki WWW-selaimen sielunelämästä aina verkkokortin bittitasolle asti. Kurssi antaa hyvät perustiedot tietoliikenteestä, jotka ovat tarpeen kaikkien eri linjojen opiskelijoille.
Rivi 83: Rivi 86:
=== Tietoturvan perusteet (4 op) ===
=== Tietoturvan perusteet (4 op) ===


* 4. periodissa
* 3. periodissa


Tietoturvan perusteet -kurssilla käsitellään tietoturvaan liittyvää lainsäädäntöä, yleisimpiä tietoturvan vaarantavia ohjelmointivirheitä sekä opetellaan sääntöjä, joita noudattaen järjestelmät pitäisi toteuttaa hyökkäysvaikutusten minimoimiseksi. Salausmenetelmät, todentaminen ja allekirjoitukset ovat myös keskeisessä osassa kurssin sisältöä. Ohimennen kurssilla käsitellään yleisimpiä hyökkäysmenetelmiä; kurssin suorittaminen ei tosin takaa että opiskelija osaisi käyttää niitä ;). Luentomateriaalissa on yleisesti ollut sekä ohjelmointivirheistä että hyökkäyksistä hyviä esimerkkejä, jotka ovat asiasta kiinnostuneelle mielenkiintoista luettavaa.
Tietoturvan perusteet -kurssilla käsitellään tietoturvaan liittyvää lainsäädäntöä, yleisimpiä tietoturvan vaarantavia ohjelmointivirheitä sekä opetellaan sääntöjä, joita noudattaen järjestelmät pitäisi toteuttaa hyökkäysvaikutusten minimoimiseksi. Salausmenetelmät, todentaminen ja allekirjoitukset ovat myös keskeisessä osassa kurssin sisältöä. Ohimennen kurssilla käsitellään yleisimpiä hyökkäysmenetelmiä; kurssin suorittaminen ei tosin takaa että opiskelija osaisi käyttää niitä ;). Luentomateriaalissa on yleisesti ollut sekä ohjelmointivirheistä että hyökkäyksistä hyviä esimerkkejä, jotka ovat asiasta kiinnostuneelle mielenkiintoista luettavaa.
Rivi 92: Rivi 95:


* Tunnetaan myös nimellä Tira
* Tunnetaan myös nimellä Tira
* 1. ja 2. periodissa sekä uudelleen 3. ja 4. periodissa
* 3. ja 4. periodissa


Tietorakenteet on mielenkiintoinen ja hyödyllinen kurssi sekä algoritmeista että ohjelmointitouhusta kiinnostuineille (yleensä nämä leirit omaavat hyvin poikkeavat mielipiteet perus- ja aineopintojen kursseista). Käytännön ohjelmointiprojekteissa tulee jatkuvasti vastaan tilanteita, joissa pitäisi käsitellä suuria tietomääriä: lisätä, poistaa, etsiä ja järjestellä tietoa. Tietorakenteet-kurssilla opetetaan lukuisia toinen toistaan näppärämpiä keinoja hallita tietoalkiota. Oikeastaan vasta kurssin asiat hallittuaan voi sanoa oikeasti osaavansa koodata. Tietorakenteet on myös ensimmäisiä peruskursseja, joilla kurkistetaan tietojenkäsittelyn teoreettisempaan puoleen (algoritmit ja niiden analysointi).
Tietorakenteet on mielenkiintoinen ja hyödyllinen kurssi sekä algoritmeista että ohjelmointitouhusta kiinnostuineille (yleensä nämä leirit omaavat hyvin poikkeavat mielipiteet perus- ja aineopintojen kursseista). Käytännön ohjelmointiprojekteissa tulee jatkuvasti vastaan tilanteita, joissa pitäisi käsitellä suuria tietomääriä: lisätä, poistaa, etsiä ja järjestellä tietoa. Tietorakenteet-kurssilla opetetaan lukuisia toinen toistaan näppärämpiä keinoja hallita tietoalkiota. Oikeastaan vasta kurssin asiat hallittuaan voi sanoa oikeasti osaavansa koodata. Tietorakenteet on myös ensimmäisiä peruskursseja, joilla kurkistetaan tietojenkäsittelyn teoreettisempaan puoleen (algoritmit ja niiden analysointi).
Rivi 120: Rivi 123:
* 1. periodissa
* 1. periodissa


Johdatus tekoälyyn -kurssin järjestely muuttuu syksyllä 2010, eikä tarkempaa tietoa kirjoitushetkellä valitettavasti ole. Aiemmin kurssi on koostunut pakollisista luennoista ja niiden pohjalta laadittavista oppimispäiväkirjoista, joiden laatimisessa ei ole tarvinnut hirveästi päätä käyttää. Luennoitsijat ovat olleet vierailevia. Kurssin sisältönä on nimensä mukaisesti tekoälyyn liittyviin ongelmien pintaraapaisu. Käteen pitäisi kuulemma jäädä jonkinlainen käsitys aihepiiriin liittyvistä ongelmista.
'''TODO'''


=== Laskennan mallit (6 op) ===
=== Laskennan mallit (6 op) ===
Rivi 157: Rivi 160:
* Keväisin
* Keväisin


Kurssin sisältö muuttuu keväälle 2011, eikä tarkempaa tietoa sisällöstä vielä ole. Aikaisempina vuosina kurssilla on käsitelty niin rinnakkaisuuteen liittyviä ongelmia (operaatioiden atomisuus), mekanismeja (semaforit, monitorit) kuin algoritmisia ratkaisujakin. Opetuskielenä on toiminut Java ja eräs rinnakkaisuuden sisältävä C-toteutus. Kurssin painopistettä ollaan ilmeisesti jossain määrin suuntaamassa ohjelmointikielten rinnakkaisuudesta laitteistotasolle, esim. moniytimisiin arkkitehtuureihin.
'''TODO'''
 
Viikoittaisten laskuharjoitusten ohessa kurssilla on toteutettu Javan säikeitä hyödyntävä ohjelma ryhmätyönä. Vaikka kurssin nimi antaa olettaa, että kurssilla ohjelmoitaisiin enemmänkin, kurssi on perinteisesti ollut teoriapainoitteinen ja raskas. Formaalia (matemaattista) esitystapaakaan ei kurssilla kaihdeta, ja välillä huomaa ihmettelevänsä, miksi asioita ei voitaisi vain esittää ihmisten kielillä. Kurssin valvottuna esitietovaatimuksena on Tietokoneen toiminta, mille ei tosin ole mitään järkiperusteita. Käytännön esitietovaatimuksena on ohjelmointitaito ja avoin suhtautuminen opetettavaan asiaan.
 
Kurssi on monen mielestä perus- ja aineopintojen vaikein. Kurssin hylkäämisprosentti on toisinaan huidellut jopa kuudessakymmenessä. Varsinaista hopealuotia kurssin läpäisyyn ei ole - kannattaa kokeilla tehdä kaikki tehtävät parhaansa mukaan ja ryhmässä. Monet tuskastuvat kurssiin ja tyytyvät vain opettelemaan asiat ulkoa. Silläkin tosin todetusti on päässyt kurssista läpi.


=== Ohjelmistotuotanto (4 op) ===
=== Ohjelmistotuotanto (4 op) ===
Rivi 204: Rivi 203:


* Tunnetaan myös nimellä C
* Tunnetaan myös nimellä C
* 3. periodissa
* 2. periodissa


C on aineopintojen valinnainen kurssi, joka on tarkoitettu ohjelmoinnin perusasiat osaaville ja perustietorakenteet tunteville. Ensin kannattaa siis suorittaa suosiolla ensimmäisen vuoden ohjelmointikurssit harjoitustöineen sekä Tietorakenteet. Javalla ohjelmoineille kielen syntaksin omaksuminen on helppoa, mutta pelkän ulkoisen samannäköisyyden ei kannata antaa pettää itseään. C on käsitemaailmaltaan ja rakenteiltaan varsin erilainen kieli kuin Java ja sitä myös käytetään hieman erilaisiin tarkoituksiin. C:llä tehdään mm. koneenläheisiä, suurta tehoa vaativia, usein tekstipohjaisia työkaluohjelmia. Javalla taas on mukavampi rakennella sekä ohjelmoijan että käyttäjän kannalta turvallisia sovelluksia, usein graafisia sellaisia - mikäli nopeus ei ole kriittisin tekijä.
C on aineopintojen valinnainen kurssi, joka on tarkoitettu ohjelmoinnin perusasiat osaaville ja perustietorakenteet tunteville. Ensin kannattaa siis suorittaa suosiolla ensimmäisen vuoden ohjelmointikurssit harjoitustöineen sekä Tietorakenteet. Javalla ohjelmoineille kielen syntaksin omaksuminen on helppoa, mutta pelkän ulkoisen samannäköisyyden ei kannata antaa pettää itseään. C on käsitemaailmaltaan ja rakenteiltaan varsin erilainen kieli kuin Java ja sitä myös käytetään hieman erilaisiin tarkoituksiin. C:llä tehdään mm. koneenläheisiä, suurta tehoa vaativia, usein tekstipohjaisia työkaluohjelmia. Javalla taas on mukavampi rakennella sekä ohjelmoijan että käyttäjän kannalta turvallisia sovelluksia, usein graafisia sellaisia - mikäli nopeus ei ole kriittisin tekijä.