TIEP115 Foundations of Computing (3 cr)
Description
Sisältö
Tietokone on konkreettinen lukuisten kytkimien joukosta koostuva laite, mutta tästä huolimatta se mahdollistaa moninaisten konkreettisten tarpeiden ratkaisemisen koneellisesti. Tämän kaltaisten tietotekniikan perusteiden ymmärtämiseksi kurssilla opetellaan aluksi, mitä ovat konkreettiset ja abstraktit käsitteet, ja miten niitä käytetään hyväksi käytännön tehtävien ratkaisemiseen. Kurssin kannalta tärkeimmät abstraktit käsitteet ovat joukot ja funktiot, koska kaikki tietokoneohjelmat ovat ymmärrettävissä funktioina. Monet tietokoneohjelmat ovat algoritmien koneellisia toteutuksia. Tästä syystä kurssilla käsitellään algoritmien sekä niiden kompleksisuuden alkeita. Kompleksisuuden avulla päästään myös kartoittamaan tietotekniikan mahdollisuuksien rajoja. Kurssin aiheet käydään läpi lyhyillä alustuksilla ja opettajien avustuksella toteutettavilla harjoitustehtävillä.
Suoritustavat
Viikottaiset harjoitustehtävät ja tentti.
Arviointiperusteet
Arviointi perustuu harjoitustehtävien pisteytyksiin tai vaihtoehtoisesti tenttiarvosanaan.
Learning outcomes
Kurssin tavoite on luoda tietotekniikan yliopisto-opiskelussa tarvittavia perustaitoja ja -valmiuksia. Kurssin suoritettuaan opiskelija
- on oppinut tunnistamaan konkreettisten tehtävien taustalta matemaattisloogisia rakenteita sekä harjoitellut toteuttamaan niitä tietokoneohjelmina,
- on luonut ensimmäisen käsityksen ohjelmoinnista ja hallitsee ohjelmoinnin ensimmäiset perusteet,
- on oppinut käyttämään aikaa tehtävien analysoimiseen ja jäsentämiseen ennen kuin pyrkii ratkaisemaan niitä, sekä
- on hankkinut kokemusta työskennellä eteen päin vaikka kysymyksestä tai tehtävästä ei saisi luotua välittömästi vahvaa ymmärrystä.