Introduction to Programming (5 cr)
Code: TE00CS88-3003
General information
Enrollment
01.12.2024 - 13.01.2025
Timing
13.01.2025 - 30.04.2025
Number of ECTS credits allocated
5 op
Mode of delivery
Contact teaching
Campus
Kupittaa Campus
Teaching languages
- Finnish
Seats
25 - 40
Degree programmes
- Degree Programme in Business Information Technology
Teachers
- Noora Maritta Nieminen
Groups
-
PTIVIS24BPTIVIS24B
-
PTIVIS24CPTIVIS24C
-
PTIVIS24APTIVIS24A
Objective
After completing the course, the student will be able to:
describe the program flow on a diagram
discuss the choice of an applicable solution model
define basic concepts related to programming such as source code, compiler, variable and type
read and understand the finished program code
utilize selection and loop structures
use exception handling mechanisms
design and implement simple application programs, and document and test them
Content
structure of software application
different development environments
reception of input data required in the program
processing of data on the program in order to solve the given problem
presentation of result
data variables and data types, simple data structures
functions and parameters
conditional clauses and loops
exceptions
file handling
testing and documentation of the program
Materials
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)
Git / Github
Github Copilot tai muu AI-ohjelmointiassistentti
Teaching methods
Oppiminen ohjelmoimalla
Tehokkaan ja vastuullisen AI-ohjelmointiassistenttien käytön oppiminen
Teoriaa ja käytännön esimerkkejä jaetaan luentojen aikana
Käytännön ymmärrystä hankitaan harjoitustunneilla
Exam schedules
Ei tenttiä
International connections
Opiskelijat oppivat teoreettisia käsitteitä ja saavat ohjelmoinnin parhaita käytäntöjä luennoilla.
Opiskelijat soveltavat ymmärrystään käytäntöön viikkotehtävissä.
Kurssimateriaali on täysin digitaalinen.
Student workload
Kontaktiopetustunnit 14x2h (teoria) + 12x2h (harjoitukset) = 52h
Itseopiskelu jatkuvasti kurssin ajan 80h
YHTEENSÄ noin 130h
Teorialuennot pidetään lähiopetuksena.
Ohjelmointiharjoitukset alaryhmissä A, B ja C ovat myös lähiopetuksena.
Content scheduling
AIHEET / SISÄLLÖT
viikko 3: Johdanto
viikko 4: Sisäänrakennetut funktiot print ja input, muuttujat ja tyypit
viikko 5: Aritmeettiset ja bittitason operaattorit
viikko 6: Haarautuminen
viikko 7: Toistorakenteet
viikko 8: Talviloma - ei opetusta
viikko 9: Toistorakenteiden katkaisu
viikko 10: Kokoelmat
viikko 11: Kokoelmat ja toistorakenteet
viikko 12: Funktiot
viikko 13: Funktion parametrit ja paluuarvot
viikko 14: Modularisuus ja yksikkötestaus
viikko 15: Käyttöliittymä, tapahtumat ja callback-funktiot
viikko 16: Tiedostojen käsittely (teksti- ja binääritiedostot)
viikko 17-: Poikkeusten käsittelyn perusteet, try-except-finally, with
Further information
ItsLearning
Sähköposti
Evaluation scale
H-5
Assessment methods and criteria
urssi sisältää 10 viikkotehtäväsarjaa, joihin sisältyy ohjelmoinnin teorian opiskelua ja aiheeseen liittyvien ohjelmointitehtävien suorittamista. Opiskelija saa pisteitä opettajalle demonstroimalla tehtäviä.
Kurssilla tehdään harjoitustyö, jossa opiskelija luo laajemman sovelluksen (soveltaen kurssin aikana opittuja tietoja ja hyödyntäen innovatiivisesti AI-ohjelmointiassistentteja). Tämä harjoitustyö antaa opiskelijalle mahdollisuuden soveltaa oppimaansa ja osoittaa osaamisensa.
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ää.
Assessment criteria, fail (0)
Opiskelija
• ei tunne ohjelmoinnin peruskäsitteitä
• ei pysty lukemaan tai kirjoittamaan yksinkertaisia ohjelmia
Assessment criteria, satisfactory (1-2)
Opiskelija
• tuntee ohjelmoinnin peruskäsitteet, kuten muuttujat, kontrollirakenteet ja funktiot
• ymmärtää ohjelman kulun
• osaa lukea ja kirjoittaa yksinkertaisia ohjelmia
Assessment criteria, good (3-4)
Opiskelija
• tuntee ohjelmoinnin peruskäsitteet, kuten muuttujat, kontrollirakenteet, funktiot, luokat, oliot ja taulukot
• ymmärtää ohjelman kulun ja löytää yksinkertaiset virheet
• osaa tehdä yksinkertaisia ohjelmia
Assessment criteria, excellent (5)
Opiskelija
• tuntee ohjelmoinnin peruskäsitteet, kuten muuttujat, kontrollirakenteet, funktiot, luokat ja oliot
• hyödyntää joitain tietorakenteita, kuten taulukot, listat ja hajautustaulut
• ymmärtää ohjelman kulun ja osaa käyttää debuggeria ja virheenkäsittelyä
• osaa tehdä ohjelmia, jotka sisältävät edellä mainittuja käsitteitä.