Siirry suoraan sisältöön

Ohjelmoinnin perusteet (5 op)

Toteutuksen tunnus: TE00CS88-3004

Toteutuksen perustiedot


Ilmoittautumisaika
01.12.2024 - 13.01.2025
Ilmoittautuminen toteutukselle on päättynyt.
Ajoitus
13.01.2025 - 30.04.2025
Toteutus on päättynyt.
Opintopistemäärä
5 op
Lähiosuus
5 op
Toteutustapa
Lähiopetus
Yksikkö
ICT
Toimipiste
Kupittaan kampus
Opetuskielet
suomi
Paikat
25 - 40
Koulutus
Tietojenkäsittelyn koulutus
Opettajat
Sami Pyöttiälä
Ryhmät
PTIVIS24D
PTIVIS24D
PTIVIS24E
PTIVIS24E
PTIVIS24F
PTIVIS24F
Opintojakso
TE00CS88

Toteutuksella on 42 opetustapahtumaa joiden yhteenlaskettu kesto on 83 t 0 min.

Aika Aihe Tila
Ma 13.01.2025 klo 12:00 - 14:00
(2 t 0 min)
(DEF) Ohjelmoinnin perusteet TE00CS88-3004
ICT_C1042_Myy MYY
Ma 13.01.2025 klo 14:00 - 16:00
(2 t 0 min)
Pienryhmätilaisuus D, Ohjelmoinnin perusteet TE00CS88-3004
ICT_B1039 IT-tila - telakka
Ti 14.01.2025 klo 10:00 - 12:00
(2 t 0 min)
Pienryhmätilaisuus F, Ohjelmoinnin perusteet TE00CS88-3004
ICT_C2027 IT-tila - telakka
Ti 14.01.2025 klo 13:00 - 15:00
(2 t 0 min)
Pienryhmätilaisuus E, Ohjelmoinnin perusteet TE00CS88-3004
ICT_C2027 IT-tila - telakka
Ma 20.01.2025 klo 12:00 - 14:00
(2 t 0 min)
(DEF) Ohjelmoinnin perusteet TE00CS88-3004
ICT_C1042_Myy MYY
Ma 27.01.2025 klo 12:00 - 14:00
(2 t 0 min)
(DEF) Ohjelmoinnin perusteet TE00CS88-3004
ICT_C1042_Myy MYY
Ma 27.01.2025 klo 14:00 - 16:00
(2 t 0 min)
Pienryhmätilaisuus D, Ohjelmoinnin perusteet TE00CS88-3004
ICT_B1038 IT-tila - telakka
Ti 28.01.2025 klo 12:00 - 14:00
(2 t 0 min)
Pienryhmätilaisuus F, Ohjelmoinnin perusteet TE00CS88-3004
ICT_B1039 IT-tila - telakka
To 30.01.2025 klo 12:00 - 14:00
(2 t 0 min)
Pienryhmätilaisuus E, Ohjelmoinnin perusteet TE00CS88-3004
ICT_C2027 IT-tila - telakka
Ma 03.02.2025 klo 12:00 - 14:00
(2 t 0 min)
(DEF) Ohjelmoinnin perusteet TE00CS88-3004
ICT_C1042_Myy MYY
Ma 03.02.2025 klo 14:00 - 16:00
(2 t 0 min)
Pienryhmätilaisuus D, Ohjelmoinnin perusteet TE00CS88-3004
ICT_B1038 IT-tila - telakka
To 06.02.2025 klo 12:00 - 14:00
(2 t 0 min)
Pienryhmätilaisuus E, Ohjelmoinnin perusteet TE00CS88-3004
ICT_C2027 IT-tila - telakka
Pe 07.02.2025 klo 08:00 - 10:00
(2 t 0 min)
Pienryhmätilaisuus F, Ohjelmoinnin perusteet TE00CS88-3004
ICT_C2027 IT-tila - telakka
Ma 10.02.2025 klo 12:00 - 14:00
(2 t 0 min)
(DEF) Ohjelmoinnin perusteet TE00CS88-3004
ICT_C1042_Myy MYY
Ma 10.02.2025 klo 14:00 - 16:00
(2 t 0 min)
Pienryhmätilaisuus F, Ohjelmoinnin perusteet TE00CS88-3004
ICT_B1039 IT-tila - telakka
Ti 11.02.2025 klo 12:00 - 14:00
(2 t 0 min)
Pienryhmätilaisuus D, Ohjelmoinnin perusteet TE00CS88-3004
ICT_B1039 IT-tila - telakka
To 13.02.2025 klo 14:00 - 16:00
(2 t 0 min)
Pienryhmätilaisuus E, Ohjelmoinnin perusteet TE00CS88-3004
ICT_B1038 IT-tila - telakka
Ma 24.02.2025 klo 12:00 - 14:00
(2 t 0 min)
(DEF) Ohjelmoinnin perusteet TE00CS88-3004
ICT_C1042_Myy MYY
Ma 24.02.2025 klo 14:00 - 16:00
(2 t 0 min)
Pienryhmätilaisuus F, Ohjelmoinnin perusteet TE00CS88-3004
ICT_B1038 IT-tila - telakka
Ti 25.02.2025 klo 12:00 - 14:00
(2 t 0 min)
Pienryhmätilaisuus D, Ohjelmoinnin perusteet TE00CS88-3004
ICT_B1039 IT-tila - telakka
To 27.02.2025 klo 11:00 - 13:00
(2 t 0 min)
Pienryhmätilaisuus E, Ohjelmoinnin perusteet TE00CS88-3004
ICT_C2027 IT-tila - telakka
Ma 03.03.2025 klo 12:00 - 14:00
(2 t 0 min)
(DEF) Ohjelmoinnin perusteet TE00CS88-3004
ICT_C1042_Myy MYY
To 06.03.2025 klo 11:00 - 13:00
(2 t 0 min)
Pienryhmätilaisuus E, Ohjelmoinnin perusteet TE00CS88-3004
ICT_C2027 IT-tila - telakka
To 06.03.2025 klo 14:00 - 16:00
(2 t 0 min)
Pienryhmätilaisuus D, Ohjelmoinnin perusteet TE00CS88-3004
ICT_B1038 IT-tila - telakka
Pe 07.03.2025 klo 08:00 - 10:00
(2 t 0 min)
Pienryhmätilaisuus F, Ohjelmoinnin perusteet TE00CS88-3004
ICT_C2027 IT-tila - telakka
Ma 10.03.2025 klo 12:00 - 14:00
(2 t 0 min)
(DEF) Ohjelmoinnin perusteet TE00CS88-3004
ICT_C1042_Myy MYY
Ma 17.03.2025 klo 12:00 - 14:00
(2 t 0 min)
(DEF) Ohjelmoinnin perusteet TE00CS88-3004
ICT_C1042_Myy MYY
To 20.03.2025 klo 11:00 - 13:00
(2 t 0 min)
Pienryhmätilaisuus E, Ohjelmoinnin perusteet TE00CS88-3004
ICT_C2027 IT-tila - telakka
To 20.03.2025 klo 14:00 - 16:00
(2 t 0 min)
Pienryhmätilaisuus D, Ohjelmoinnin perusteet TE00CS88-3004
ICT_B1038 IT-tila - telakka
Pe 21.03.2025 klo 08:30 - 10:00
(1 t 30 min)
Pienryhmätilaisuus F, Ohjelmoinnin perusteet TE00CS88-3004, klo 8.30
ICT_C2027 IT-tila - telakka
Ma 24.03.2025 klo 12:00 - 14:00
(2 t 0 min)
(DEF) Ohjelmoinnin perusteet TE00CS88-3004
ICT_C1042_Myy MYY
To 27.03.2025 klo 11:00 - 13:00
(2 t 0 min)
Pienryhmätilaisuus E, Ohjelmoinnin perusteet TE00CS88-3004
ICT_C2027 IT-tila - telakka
To 27.03.2025 klo 14:00 - 16:00
(2 t 0 min)
Pienryhmätilaisuus D, Ohjelmoinnin perusteet TE00CS88-3004
ICT_B1038 IT-tila - telakka
Pe 28.03.2025 klo 08:00 - 10:00
(2 t 0 min)
Pienryhmätilaisuus F, Ohjelmoinnin perusteet TE00CS88-3004
ICT_C2027 IT-tila - telakka
Ma 31.03.2025 klo 12:00 - 14:00
(2 t 0 min)
(DEF) Ohjelmoinnin perusteet TE00CS88-3004
ICT_C1042_Myy MYY
To 03.04.2025 klo 11:00 - 13:00
(2 t 0 min)
Pienryhmätilaisuus E, Ohjelmoinnin perusteet TE00CS88-3004
ICT_C2027 IT-tila - telakka
To 03.04.2025 klo 14:00 - 16:00
(2 t 0 min)
Pienryhmätilaisuus D, Ohjelmoinnin perusteet TE00CS88-3004
ICT_B1038 IT-tila - telakka
Pe 04.04.2025 klo 08:30 - 10:00
(1 t 30 min)
Pienryhmätilaisuus F, Ohjelmoinnin perusteet TE00CS88-3004
ICT_C2027 IT-tila - telakka
Ma 07.04.2025 klo 12:00 - 14:00
(2 t 0 min)
(DEF) Ohjelmoinnin perusteet TE00CS88-3004
ICT_C1042_Myy MYY
Ti 08.04.2025 klo 12:00 - 14:00
(2 t 0 min)
Pienryhmätilaisuus D, Ohjelmoinnin perusteet TE00CS88-3004
ICT_B1039 IT-tila - telakka
To 10.04.2025 klo 11:00 - 13:00
(2 t 0 min)
Pienryhmätilaisuus E, Ohjelmoinnin perusteet TE00CS88-3004
ICT_C2027 IT-tila - telakka
Pe 11.04.2025 klo 10:00 - 12:00
(2 t 0 min)
Pienryhmätilaisuus F, Ohjelmoinnin perusteet TE00CS88-3004
ICT_C2027 IT-tila - telakka
Muutokset varauksiin voivat olla mahdollisia.

Arviointiasteikko

H-5

Sisällön jaksotus

Opintojaksolla opetellaan käytännön ohjelmointitaito. Tässä keskeisimpänä asiana on algoritminen ajattelu ja algoritminen ongelmanratkaisutaito. Taidon oppiminen edellyttää tietämystä ohjelmointiin liittyvistä perusasioista, joista opiskellaan esimerkiksi muuttujat, tyypit, operaattorit, kontrollirakenteet, aliohjelmat (funktiot), parametrit, modulaarisuus, testaus, syöttö näppäimistöltä, tulostus ruudulle, listat, kokoelmat, poikkeukset ja tiedostonkäsittely. Opetuksen apuvälineenä on Python-kieli. Opintojaksolla käytetään spiraalioppimista, mikä on tavallista ohjelmoinnin opettelussa, joten aiheiden käsittelyn tarkkaa ajoitusta ei ole mahdollista antaa viikkotasolla.

Tavoitteet

Opintojakson suoritettuaan opiskelija osaa:
• kuvata ohjelman toimintaa kaaviolla
• keskustella soveltuvan ratkaisumallin valinnasta
• määritellä ohjelmointiin liittyviä peruskäsitteitä kuten lähdekoodi, kääntäjä, muuttuja ja tyyppi
• lukea ja ymmärtää valmista ohjelmakoodia
• hyödyntää valinta- ja toistorakenteita
• käyttää poikkeustenkäsittelymekanismeja auttavasti
• suunnitella ja toteuttaa yksinkertaisia sovellusohjelmia sekä dokumentoida ja testata niitä

Sisältö

• ohjelmistosovelluksen rakenne
• erilaiset kehitysympäristöt
• ohjelmassa tarvittavien syötetietojen vastaanottaminen
• tietojen prosessoiminen ohjelmassa, jotta annettu ongelma saadaan ratkaistuksi
• tulostietojen esittäminen
• muuttujat ja tietotyypit, yksinkertaiset tietorakenteet
• funktiot ja parametrit
• ehtolauseet ja silmukat
• poikkeukset
• tiedoston käsittely
• ohjelman testaus ja dokumentointi

Oppimateriaalit

Suositeltu kirjallisuus:
"Python Basics: A Practical Introduction to Python3", 4. painos, David Amos, Dan Bader, Joanna Jablonski, Fletcher Heisler, ISBN:9781775093329 (paperback), ISBN:9781775093336 (sähköinen)

"AI-Assisted Programming" by Tom Taulli, Julkaistu huhtikuussa 2024, Kustantaja: O'Reilly Media, Inc., ISBN: 9781098164560

Ohjelmointityökalut:
Python 3.12.x
Visual Studio Code (laajennuksilla) tai jokin vastaava

Opetusmenetelmät

Keskeisin oppimismenetelmä on ohjelmointitehtävien ratkaisemisen yrittäminen käytännössä, virheiden tekeminen ja niiden korjaamisen harjoittelu sekä toisinaan valmiin ratkaisun tai osaratkaisun hyödyntäminen. Tehokkaan ja vastuullisen AI-ohjelmointiassistenttien käytön pohtiminen ja oppiminen. Ohjelmoinnin asioista keskusteleminen.

Tenttien ajankohdat ja uusintamahdollisuudet

Ei tenttiä

Pedagogiset toimintatavat ja kestävä kehitys

Luentotunnilla keskitytään uusien asioiden sisäistämiseen. Opittua sovelletaan itse oman algoritmisen ongelmanratkaisuharjoittelun osasina ja keinoina. Harjoitustuntia ennen harjoitellaan tehtävien avulla ja harjoitustunnilla on mahdollista saada ohjausta ja tukea, jotta osaaminen täydentyy ja kehittyy mahdollisimman suotuisasti.

Kurssimateriaali on sähköisenä annetuilla alustoilla. Kestävää kehitystä pohditaan yleisen ohjelmointiin liittyvän kestävyyden, esim. koodin uudelleenkäytön alueella.

Opiskelijan ajankäyttö ja kuormitus

Kontaktiopetustunnit 14x2h (teoria) + 12x2h (harjoitukset) = 52h
Itseopiskelu jatkuvasti kurssin ajan 80h

YHTEENSÄ noin 130h

Teorialuennot pidetään lähiopetuksena.
Ohjelmointiharjoitukset alaryhmissä D, E ja F ovat myös lähiopetuksena.

Arviointimenetelmät ja arvioinnin perusteet

Opintojakso sisältää 10 viikkotehtäväsarjaa, joihin sisältyy ohjelmoinnin teorian opiskelua ja aiheeseen liittyvien ohjelmointitehtävien suorittamista. Opiskelija saa pisteitä opettajalle demonstroimalla eli esittämällä tehtyjä tehtäviä tai toisinaan osittain tehtyjä ja kattavasti yritettyjä tehtäviä.

Opintojaksoon sisältyy harjoitustyö, jossa opiskelija luo laajemman sovelluksen (soveltaen kurssin aikana opittuja tietoja ja mahdollisesti jopa osittain hyödyntäen innovatiivisesti AI-ohjelmointiassistentteja). Tämä harjoitustyö antaa opiskelijalle mahdollisuuden soveltaa oppimaansa ja osoittaa osaamistaan.

Jokaisesta viikkotehtävästä voi saada maksimissaan 10 pistettä. Viikkotehtäväsarjan kokonaisarviointi noudattaa seuraavaa kaavaa:

40 pistettä -> arvosana 1
55 pistettä -> arvosana 2
70 pistettä -> arvosana 3
80 pistettä -> arvosana 4
90 pistettä -> arvosana 5
Harjoitustyö arvioidaan erikseen asteikolla 1-5.

Opiskelijan kurssiarvosana muodostuu viikkotehtävien ja harjoitustyön keskiarvosta. Molemmat osiot täytyy olla hyväksyttyjä.

Jos kurssin edetessä näyttää siltä, että opiskelija ei saavuta läpäisyyn vaadittavaa pistemäärää, hänelle annetaan mahdollisuus suorittaa puuttuvat tehtävät takautuvasti. Näistä tehtävistä hän voi saada maksimissaan puolet tarjolla olevista pisteistä. Opiskelijan tulee kerätä vaadittavat pisteet ennen kurssin päättymispäivää.

Hylätty (0)

Opiskelija
• ei tunne ohjelmoinnin peruskäsitteitä
• ei pysty lukemaan tai kirjoittamaan yksinkertaisia ohjelmia

Arviointikriteerit, tyydyttävä (1-2)

Opiskelija
• tuntee ohjelmoinnin peruskäsitteet, kuten muuttujat, kontrollirakenteet ja funktiot
• ymmärtää ohjelman kulun
• osaa lukea ja kirjoittaa yksinkertaisia ohjelmia ja testejä

Arviointikriteerit, hyvä (3-4)

Opiskelija
• tuntee ohjelmoinnin peruskäsitteet, kuten muuttujat, kontrollirakenteet, funktiot, luokat, oliot ja listat
• ymmärtää ohjelman kulun ja löytää yksinkertaiset virheet
• osaa laatia yksinkertaisia ohjelmia ja testata niiden toimivuutta

Arviointikriteerit, kiitettävä (5)

Opiskelija
• tuntee ohjelmoinnin peruskäsitteet, kuten muuttujat, kontrollirakenteet, funktiot, luokat, oliot ja listat
• hyödyntää joitain tietorakenteita, kuten taulukot, listat ja hajautustaulut
• ymmärtää ohjelman kulun ja osaa käyttää debuggeria ja virheenkäsittelyä
• osaa laatia ohjelmia, jotka sisältävät edellä mainittuja käsitteitä ja osoittaa toimivuuden testaamalla

Lisätiedot

ItsLearning
Sähköposti

Siirry alkuun