Siirry suoraan sisältöön

Ohjelmoinnin syventävät tekniikat (5 op)

Toteutuksen tunnus: 5G00EU62-3004

Toteutuksen perustiedot


Ilmoittautumisaika

22.11.2023 - 05.01.2024

Ajoitus

01.01.2024 - 05.05.2024

Laajuus

5 op

Toteutustapa

Lähiopetus

Yksikkö

Tietotekniikka

Toimipiste

TAMK Pääkampus

Opetuskielet

  • Suomi

Koulutus

  • Tietotekniikan tutkinto-ohjelma

Opettaja

  • Jere Käpyaho

Vastuuhenkilö

Jere Käpyaho

Ryhmät

  • 22I224
    Ohjelmistotekniikka

Tavoitteet (OJ)

Opiskelija tietää sisällössä kuvattujen ohjelmointiteknisten asioiden periaatteet, yleisimpien ohjelmistojen suunnittelumallien toteutusperiaatteet ja toteutuksen valituilla ohjelmointikielillä. Opiskelija osaa hyödyntää sisällössä mainittuja asioita käytännön ongelmanratkaisussa. Opiskelija tuntee sisällössä kuvattujen aihealueiden yleisimmät hyödyntämiskohteet erilaisissa ohjelmistoprojekteissa.

Sisältö (OJ)

Periytyminen, virtuaalifunktiot, staattiset metodit ja tietojäsenet, mallit, yleisimpiä ohjelmoinnin arkkitehtuuriratkaisuja, lambdat ja funktionaalisuus, ohjelmistokehyksen käsite ja käytännön esimerkit. Tutustuminen aihealueisiin eri ohjelmointikielten näkökulmasta.

Esitietovaatimukset (OJ)

Ohjelmonnin perustet, Ohjelmoinnin edistyneet piirteet

Arviointikriteerit, tyydyttävä (1-2) (OJ)

Opiskelija
-ymmärtää sisällössä kuvatut ohjelmoinnin syvempään osaamiseen liittyvät käsitteet
-osaa ratkoa ohjelmointiongelmia koodiesimerkkien ja malliratkaisujen pohjalta itsenäisesti
-tuottaa pääosin toimivaa ohjelmakoodia
-suorittaa tehtävät annettujen aikataulujen puitteissa

Arviointikriteerit, hyvä (3-4) (OJ)

Opiskelija
-ymmärtää sisällössä kuvatut ohjelmoinnin syvempään osaamiseen liittyvät käsitteet
-osaa em. asioita hyödyntäen ratkoa käytännön ohjelmointiongelmia monipuolisesti ja perustellusti
-tuottaa pääosin hyvää ja selkeää ohjelmakoodia
-osaa tunnistaa mahdollisia vaihtoehtoisia toteutustapoja
-suorittaa tehtävät annettujen aikataulujen puitteissa

Arviointikriteerit, kiitettävä (5) (OJ)

Opiskelija
-ymmärtää opintojakson sisällössä kuvatut ohjelmoinnin syvempään osaamiseen liittyvät käsitteet
-osaa ratkoa aihealueen käytännön ohjelmointiongelmia kekseliäästi ja monipuolisesti
-osaa käyttää hyviä ja optimaalisia ohjelmointirakenteita
-tuottaa hyvää ja selkeää ohjelmakoodia
-osaa tunnistaa mahdolliset vaihtoehtoiset toteutustavat
-hallitsee hyvin ja monipuolisesti opintojakson aihealueet
-osaa arvioida ja analysoida omaa ohjelmointityötään kriittisesti ja monipuolisesti
-suorittaa tehtävät annettujen aikataulujen puitteissa

Aika ja paikka

Kts. kurssin Moodle-sivut

Tenttien ja uusintatenttien ajankohdat

Ei tenttiä

Arviointimenetelmät ja arvioinnin perusteet

Kurssi suoritetaan viikkoharjoituksilla sekä projektityöllä. Katso tarkempi kuvaus arviointimenetelmistä kurssin Moodle-sivulta.

Arviointiasteikko

0-5

Opiskelumuodot ja opetusmenetelmät

Lähiopetus, teoriaa ja harjoittelua

Oppimateriaalit

John Ousterhout, A Philosophy of Software Design
Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Design Patterns
Paul Deitel, Harvey Deitel, C++20 for Programmers
Nick Samoylov, Learn Java 17 Programming Second Edition
Joseph Albahari, C# 10 in a Nutshell
Steve Klabnik, Carol Nichols, The Rust Programming Language

Opiskelijan ajankäyttö ja kuormitus

Kurssi vastaa laskennallisesti 5 x 27,5 h opiskelijan työtä, mistä lähiopetuksen osuus on 45 h. Kurssilla on viikottaiset harjoitustehtävät ja projektityö.

Sisällön jaksotus

Kts. kurssin Moodle-sivu

Toteutuksen valinnaiset suoritustavat

Kts. kurssin Moodle-sivut

Arviointikriteerit - hylätty (0) (Ei käytössä, kts Opintojakson Arviointikriteerit ylempänä)

Katso tarkemmat arviointikriteerit kurssin Moodle-sivulta.

Arviointikriteerit - tyydyttävä (1-2) (Ei käytössä, kts Opintojakson Arviointikriteerit ylempänä)

Katso tarkemmat arviointikriteerit kurssin Moodle-sivulta.

Arviointikriteerit - hyvä (3-4) (Ei käytössä, kts Opintojakson Arviointikriteerit ylempänä)

Katso tarkemmat arviointikriteerit kurssin Moodle-sivulta.

Arviointikriteerit - kiitettävä (5) (Ei käytössä, kts Opintojakson Arviointikriteerit ylempänä)

Katso tarkemmat arviointikriteerit kurssin Moodle-sivulta.