Siirry suoraan sisältöön

Ohjelmoinnin perusteet (5 op)

Toteutuksen tunnus: TE00CS88-3002

Toteutuksen perustiedot


Ilmoittautumisaika
01.12.2024 - 13.01.2025
Ilmoittautuminen toteutukselle on päättynyt.
Ajoitus
13.01.2025 - 30.04.2025
Toteutus on käynnissä.
Opintopistemäärä
5 op
Lähiosuus
5 op
Toteutustapa
Lähiopetus
Yksikkö
ICT
Toimipiste
Kupittaan kampus
Opetuskielet
englanti
Paikat
0 - 60
Koulutus
Degree Programme in Information and Communications Technology
Tietojenkäsittelyn koulutus
Opettajat
Noora Maritta Nieminen
Ryhmät
PINFOS24A
PINFOS24A
PINFOS24B
PINFOS24B
PINFOS24C
PINFOS24C
Opintojakso
TE00CS88

Toteutuksella on 47 opetustapahtumaa joiden yhteenlaskettu kesto on 94 t 0 min.

Aika Aihe Tila
Ma 13.01.2025 klo 08:00 - 10:00
(2 t 0 min)
Theory, Introduction to Programming TE00CS88-3002
ICT_C1027_Lambda LAMBDA
Ma 13.01.2025 klo 10:00 - 12:00
(2 t 0 min)
Group C Practice, Introduction to Programming TE00CS88-3002
ICT_B1038 IT telakka
Ti 14.01.2025 klo 14:00 - 16:00
(2 t 0 min)
Group B Practice, Introduction to Programming TE00CS88-3002
ICT_B1038 IT telakka
Pe 17.01.2025 klo 10:00 - 12:00
(2 t 0 min)
Group A Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Ma 20.01.2025 klo 08:00 - 10:00
(2 t 0 min)
Theory, Introduction to Programming TE00CS88-3002
ICT_C1027_Lambda LAMBDA
Ma 20.01.2025 klo 10:00 - 12:00
(2 t 0 min)
Group C Practice, Introduction to Programming TE00CS88-3002
ICT_B1038 IT telakka
Pe 24.01.2025 klo 10:00 - 12:00
(2 t 0 min)
Group A Practice, Introduction to Programming TE00CS88-3002
ICT_C2027 IT telakka
Pe 24.01.2025 klo 14:00 - 16:00
(2 t 0 min)
Group B Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Ma 27.01.2025 klo 08:00 - 10:00
(2 t 0 min)
Theory, Introduction to Programming TE00CS88-3002
ICT_C1027_Lambda LAMBDA
Ma 27.01.2025 klo 10:00 - 12:00
(2 t 0 min)
Group C Practice, Introduction to Programming TE00CS88-3002
ICT_B1038 IT telakka
Pe 31.01.2025 klo 10:00 - 12:00
(2 t 0 min)
Group A Practice, Introduction to Programming TE00CS88-3002
ICT_C2027 IT telakka
Pe 31.01.2025 klo 14:00 - 16:00
(2 t 0 min)
Group B Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Ma 03.02.2025 klo 08:00 - 10:00
(2 t 0 min)
Theory, Introduction to Programming TE00CS88-3002
ICT_C1027_Lambda LAMBDA
Ma 03.02.2025 klo 10:00 - 12:00
(2 t 0 min)
Group C Practice, Introduction to Programming TE00CS88-3002
ICT_B1038 IT telakka
Pe 07.02.2025 klo 10:00 - 12:00
(2 t 0 min)
Group A Practice, Introduction to Programming TE00CS88-3002
ICT_C2027 IT telakka
Pe 07.02.2025 klo 14:00 - 16:00
(2 t 0 min)
Group B Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Ma 10.02.2025 klo 08:00 - 10:00
(2 t 0 min)
Theory, Introduction to Programming TE00CS88-3002
ICT_C1027_Lambda LAMBDA
Ma 10.02.2025 klo 10:00 - 12:00
(2 t 0 min)
Group C Practice, Introduction to Programming TE00CS88-3002
ICT_B1038 IT telakka
Pe 14.02.2025 klo 10:00 - 12:00
(2 t 0 min)
Group A Practice, Introduction to Programming TE00CS88-3002
ICT_C2027 IT telakka
Pe 14.02.2025 klo 14:00 - 16:00
(2 t 0 min)
Group B Practice, Introduction to Programming TE00CS88-3002
ICT_B1038 IT telakka
Ma 24.02.2025 klo 08:00 - 10:00
(2 t 0 min)
Theory, Introduction to Programming TE00CS88-3002
ICT_C1027_Lambda LAMBDA
Ma 24.02.2025 klo 10:00 - 12:00
(2 t 0 min)
Group C Practice, Introduction to Programming TE00CS88-3002
ICT_B1038 IT telakka
Pe 28.02.2025 klo 10:00 - 12:00
(2 t 0 min)
Group A Practice, Introduction to Programming TE00CS88-3002
ICT_C2027 IT telakka
Pe 28.02.2025 klo 14:00 - 16:00
(2 t 0 min)
Group B Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Ma 03.03.2025 klo 08:00 - 10:00
(2 t 0 min)
Theory, Introduction to Programming TE00CS88-3002
ICT_C1027_Lambda LAMBDA
Ma 03.03.2025 klo 10:00 - 12:00
(2 t 0 min)
Group C Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Pe 07.03.2025 klo 10:00 - 12:00
(2 t 0 min)
Group A Practice, Introduction to Programming TE00CS88-3002
ICT_C2027 IT telakka
Pe 07.03.2025 klo 14:00 - 16:00
(2 t 0 min)
Group B Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Ma 10.03.2025 klo 08:00 - 10:00
(2 t 0 min)
Theory, Introduction to Programming TE00CS88-3002
ICT_C1027_Lambda LAMBDA
Ma 10.03.2025 klo 10:00 - 12:00
(2 t 0 min)
Group C Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Ma 17.03.2025 klo 08:00 - 10:00
(2 t 0 min)
Theory, Introduction to Programming TE00CS88-3002
ICT_C1027_Lambda LAMBDA
Ma 17.03.2025 klo 10:00 - 12:00
(2 t 0 min)
Group C Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Pe 21.03.2025 klo 14:00 - 16:00
(2 t 0 min)
Group A&B Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Ma 24.03.2025 klo 08:00 - 10:00
(2 t 0 min)
Theory, Introduction to Programming TE00CS88-3002
ICT_C1027_Lambda LAMBDA
Ma 24.03.2025 klo 10:00 - 12:00
(2 t 0 min)
Group C Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Pe 28.03.2025 klo 10:00 - 12:00
(2 t 0 min)
Group A Practice, Introduction to Programming TE00CS88-3002
LEM_A177 IT-oppimistila Saccharomyces
Pe 28.03.2025 klo 14:00 - 16:00
(2 t 0 min)
Group B Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Ma 31.03.2025 klo 08:00 - 10:00
(2 t 0 min)
Theory, Introduction to Programming TE00CS88-3002
ICT_C1027_Lambda LAMBDA
Ma 31.03.2025 klo 10:00 - 12:00
(2 t 0 min)
Group C Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Pe 04.04.2025 klo 10:00 - 12:00
(2 t 0 min)
Group A Practice, Introduction to Programming TE00CS88-3002
ICT_C2027 IT telakka
Pe 04.04.2025 klo 14:00 - 16:00
(2 t 0 min)
Group B Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Ma 07.04.2025 klo 08:00 - 10:00
(2 t 0 min)
Theory, Introduction to Programming TE00CS88-3002
ICT_C1027_Lambda LAMBDA
Ma 07.04.2025 klo 10:00 - 12:00
(2 t 0 min)
Group C Practice, Introduction to Programming TE00CS88-3002
ICT_B1038 IT telakka
Pe 11.04.2025 klo 10:00 - 12:00
(2 t 0 min)
Group A Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Pe 11.04.2025 klo 14:00 - 16:00
(2 t 0 min)
Group B Practice, Introduction to Programming TE00CS88-3002
LEM_A176 IT-oppimistila Micrococcus
Ma 14.04.2025 klo 08:00 - 10:00
(2 t 0 min)
Theory, Introduction to Programming TE00CS88-3002
ICT_C1027_Lambda LAMBDA
Ma 28.04.2025 klo 08:00 - 10:00
(2 t 0 min)
Theory, Introduction to Programming TE00CS88-3002
ICT_C1027_Lambda LAMBDA
Muutokset varauksiin voivat olla mahdollisia.

Arviointiasteikko

H-5

Sisällön jaksotus

TOPICS / CONTENTS
week 3: Introduction
week 4: Built-in functions print and input, variables and types
week 5: Arithmetic and bitwise operators
week 6: Branching
week 7: Loops
week 8: Winter Break - no teaching
week 9: Breaking loops
week 10: Collections
week 11: Collections and loops
week 12: Functions
week 13: Function parameters and return values
week 14: Modularity and unit testing
week 15: GUI, events and callback functions
week 16: File IO (text and binary files)
week 17-: Basics of exception handling, try-except-finally, with

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

Recommended literature:
Python Basics: A Practical Introduction to Python3 4th edition by David Amos,Dan Bader,Joanna Jablonski, Fletcher Heisler, ISBN:9781775093329 (paperback), ISBN:9781775093336 (electronic)

AI-Assisted Programming by Tom Taulli, Released April 2024, Publisher(s): O'Reilly Media, Inc., ISBN: 9781098164560

Programming tools
- Python 3.12.x
- Visual Studio Code (with Extensions)
- Git / Github
- Github Copilot or other AI programming assistants

Opetusmenetelmät

Learning by programming
Learning efficient and responsible use of AI programming copilots
Theory and practical examples shared during lectures
Practical understanding gained in practice sessions

Tenttien ajankohdat ja uusintamahdollisuudet

No exam

Kansainvälisyys

Students will learn theoretical concepts and gain programming good practices in lectures.
Students will put their understanding into practice in weekly assignments.

Course material will be entirely digital.

Opiskelijan ajankäyttö ja kuormitus

Contact hours 14x2h (theory) + 12x2h (practice) = 52h
Independent study continuously throughout the course 80h

TOTAL approx. 130h

Theory lectures are held onsite.
Programming labs in subgroups A, B and C are also onsite.

Lisätiedot

ItsLearning
Email

Siirry alkuun