Skip to main content

Object-Oriented Programming (5 cr)

Code: 5051125-3035

General information


Enrollment

01.06.2024 - 06.09.2024

Timing

02.09.2024 - 18.12.2024

Number of ECTS credits allocated

5 op

Mode of delivery

Contact teaching

Unit

Engineering and Business

Campus

Kupittaa Campus

Teaching languages

  • Finnish

Seats

30 - 70

Degree programmes

  • Degree Programme in Information and Communication Technology
  • Degree Programme in Business Information Technology

Teachers

  • Anne Jumppanen
  • Annukka Kinnari

Groups

  • PTIVIS23W
    Software Development and Information Systems
  • PTIETS23swis
    Software Development and Information Systems
  • 06.09.2024 08:00 - 11:00, Luento, Olio-ohjelmointi 5051125-3035
  • 13.09.2024 08:00 - 11:00, Luento, Olio-ohjelmointi 5051125-3035
  • 13.09.2024 11:00 - 13:00, Koodiklinikka, Olio-ohjelmointi 5051125-3035
  • 20.09.2024 08:00 - 11:00, Luento, Olio-ohjelmointi 5051125-3035
  • 20.09.2024 11:00 - 13:00, Koodiklinikka, Olio-ohjelmointi 5051125-3035
  • 27.09.2024 08:00 - 11:00, Luento, Olio-ohjelmointi 5051125-3035
  • 27.09.2024 12:00 - 14:00, Koodiklinikka, Olio-ohjelmointi 5051125-3035
  • 04.10.2024 08:00 - 11:00, Luento, Olio-ohjelmointi 5051125-3035
  • 04.10.2024 11:00 - 13:00, Koodiklinikka, Olio-ohjelmointi 5051125-3035
  • 11.10.2024 08:00 - 11:00, Luento, Olio-ohjelmointi 5051125-3035
  • 11.10.2024 11:00 - 13:00, Koodiklinikka, Olio-ohjelmointi 5051125-3035
  • 25.10.2024 08:00 - 11:00, Luento, Olio-ohjelmointi 5051125-3035
  • 25.10.2024 12:00 - 14:00, Koodiklinikka, Olio-ohjelmointi 5051125-3035
  • 01.11.2024 08:00 - 11:00, Luento, Olio-ohjelmointi 5051125-3035
  • 01.11.2024 11:00 - 13:00, Koodiklinikka, Olio-ohjelmointi 5051125-3035
  • 08.11.2024 08:00 - 11:00, Luento, Olio-ohjelmointi 5051125-3035
  • 08.11.2024 11:00 - 13:00, Koodiklinikka, Olio-ohjelmointi 5051125-3035
  • 15.11.2024 08:00 - 11:00, Luento, Olio-ohjelmointi 5051125-3035
  • 15.11.2024 11:00 - 13:00, Koodiklinikka, Olio-ohjelmointi 5051125-3035
  • 22.11.2024 08:00 - 11:00, Luento, Olio-ohjelmointi 5051125-3035
  • 22.11.2024 11:00 - 13:00, Koodiklinikka, Olio-ohjelmointi 5051125-3035
  • 29.11.2024 08:00 - 11:00, Luento, Olio-ohjelmointi 5051125-3035
  • 29.11.2024 11:00 - 13:00, Koodiklinikka, Olio-ohjelmointi 5051125-3035

Objective

After completing the course the student can:
- explain the different phases and main methods of the development of a software product
- explain the concepts class hierarchy, inheritance, and polymorphism, and utilize these in software development
- discuss the possibilities of parallel programming
- apply exception handling mechanisms
- design, implement and document a simple user interface application.

Content

- object-oriented structures
- error handling with exceptions
- threads
- database connection
- software development process and methods
- UML diagrams

Materials

Opintojakson työtilassa itslearningissa.

Teaching methods

Materiaalin lukeminen ja ohjelmointiharjoitusten tekeminen ohjatusti sekä itsenäisesti.

Harjoitustyö opettaa soveltamaan opittuja asioita laajemman sovelluksen näkökulmasta.

Materiaali pitää sisällään olio-ohjelmoinnin teoriaa sekä teoriaa valaisevia kuvia ja esimerkkikoodeja.

Exam schedules

Opintojaksolla ei ole tenttiä.

International connections

Itsearviointi
Opiskelijan tulee kiinnittää säännöllisesti huomiota omaan opiskeluunsa ja oppimiseensa.
Opiskelijaa pyydetään tekemään muistiinpanoja jokaisen viikkotehtäväsarjan kohdalla pohtien ainakin seuraavia asioita
* Tehtävän teema: Mitä tiesin teemasta etukäteen? Mitä ajatuksia teema herätti?
* Tehtävää tehdessä: Esiin nousseet ajatukset kohdistuen tehtävien vaativuustasoon ja mielenkiintoon
* Tehtävän jälkeen: Mitä opin?
sekä antamaan itselleen arvosana työskentelystään jokaisen viikkotehtäväsarjan kohdalla asteikolla: Erinomainen - Hyvä - Tyydyttävä.

Toteutuksella noudatetaan jatkuvan tekemisen ja arvioinnin mallia siten, että opiskelijan tulee tehdä, palauttaa ja demota kurssin tehtäviä säännöllisesti noudattaen kurssin tehtäville annettuja aikatauluja. Tällä tähdätään opiskelijan mahdollisuuteen seurata itsenäisesti omaa edistymistään ja oppimistaan kurssin aikana.

Jatkuva aktiivinen työskentely ja oppiminen tukevat ohjelmoinnissa esiintyvää spiraalioppimisen mallia.

Completion alternatives

1) Antamalla näytön esim. tekemästään työelämän projektista, jolla opiskelija osoittaa hallitsevansa opintojakson sisällön.
2) Sivustolla mooc.fi kuvataan ohjelmoinnin MOOC, joka vastaa sisällöltään Helsingin yliopiston tietojenkäsittelytieteen laitoksen kursseja Ohjelmoinnin perusteet ja Ohjelmoinnin jatkokurssi. Kurssit vastaavat yhteensä kymmentä opintopistettä (5+5).
Olio-ohjelmoinnin voi suorittaa tekemällä ohjelmoinnin MOOCin Java-kielisen loppuosan.

Toteutuksen valinnaisista suoritustavoista pitää aina keskustella kurssin opettajan kanssa heti toteutuksen alkaessa.

Student workload

Opintojakson suoritus edellyttää hyväksytysti suoritettujen harjoitustehtäväsarjojen tekemistä ja palauttamista määräaikaan mennessä. Lisäksi opiskelijan tulee esitellä tekemänsä tehtäväsarjat kurssin demotuntien aikana.

5 opintopistettä: 27 * 5 = 135 tuntia

Opintojakso ajoittuu aikavälille 1.9.2024 - 16.12.2024

Viikkotyömäärä: 135 tuntia / 13 viikkoa = 10,4 tuntia viikossa

Kurssilla annetaan kontaktiopetusta 5h viikkotasolla. Tämä koostuu luento-osiosta (3 h) ja koodiklinikasta (2 h). Luento-osio koostuu uusien asioiden teoriaopetuksesta ja näihin liittyvistä koodiesimerkeistä. Koodiklinikalla tehdään ohjelmoinnin harjoituksia yhdessä ja opiskelijat demoavat itsenäisesti tekemiään tehtäviä.

Toteutuksella seurataan opiskelijan läsnäoloa.

Content scheduling

This course is held in Finnish

Opintojakson suoritettuaan opiskelija osaa:
- kuvailla ohjelmistotuotteen kehitystyön vaiheet ja keskeiset menetelmät
- selittää käsitteet luokkahierarkia, periytyvyys ja monimuotoisuus sekä soveltaa niitä ohjelmistokehityksessä
- havainnoida säännöllisten lausekkeiden ja funktionaalisen ohjelmoinnin käyttömahdollisuuksia
- soveltaa poikkeusrakenteita
- suunnitella, toteuttaa ja dokumentoida yksinkertaisen käyttöliittymäsovelluksen.
Sisältö
- keskeisimmät oliorakenteet
- virheiden käsittely poikkeuksilla
- tietokantayhteyden luominen
- ohjelmistotuotannon prosessi ja menetelmät
- UML kaavioiden ymmärtäminen ja niiden piirtäminen

Further information

Kurssin viestintäkanava on itslearning.

Avoimen AMK:n opiskelijoita otetaan mukaan opintojaksolle max 3.
Lue myös opintojakson edeltävyysehdot.

Evaluation scale

H-5

Assessment methods and criteria

Arvosanan muodostuminen

Opintojakso pitää sisällään 8 viikkotehtäväsarjaa, joihin sisältyy ohjelmoinnin teorian opiskelua sekä aiheeseen liittyviä ohjelmointitehtäviä. Opiskelija saa pisteitä opettajalle demoamistaan tehtävistä.
Jokaisen viikkotehtäväsarjan maksimipistemäärä on 10 pistettä.
Viikkotehtäväsarjojen maksimipistemäärä on 80 pistettä.

Kurssilla tehdään harjoitustyö, jossa opiskelija tekee laajemman sovelluksen. Harjoitustyössä opiskelija pääsee soveltamaan oppimiaan asioita ja osoittamaan osaamistaan. Harjoitustyön tuotos demotaan opiskelijaryhmälle.
Harjoitustyön maksimipistemäärä on 40 pistettä.

Jos kurssin edetessä näyttää siltä, että opiskelija ei saavuta kurssin läpäisyyn tarvittavaa pistemäärää, niin hänen kanssaan sovitaan puuttuvien tehtävien tekemisestä takautuvasti. Näistä tehtävistä hän voi saada maksimissaan puolet tarjolla olevasta pistemäärästä. Opiskelijan tulee kerätä läpäisyyn vaadittava pistemäärä ennen kurssin loppumispäivämäärää.

Koko kurssilla on siis jaossa 120 pistettä.

Pistemäärä 48 (40%) -> arvosana 1
Pistämäärä 66 (55%) -> arvosana 2
Pistemäärä 84 (70%) -> arvosana 3
Pistemäärä 96 (80%) -> arvosana 4
Pistemäärä 108 (90%) -> arvosana 5

Assessment criteria, fail (0)

Katso yllä arvioinnin kohteet:

Opintojakson arvosana muodostuu opiskelijan tekemien, palauttamien ja demoamien tehtävien lukumäärän ja laadun perusteella.

Opiskelijan arvosana on hylätty, mikäli pistemäärä on alle 40 % maksimipistemäärästä.

Assessment criteria, satisfactory (1-2)

Katso yllä arvioinnin kohteet:

Opintojakson arvosana muodostuu opiskelijan tekemien, palauttamien ja demoamien tehtävien lukumäärän ja laadun perusteella.

Opiskelijan arvosana on 1, mikäli pistemäärä on yli 40 % mutta alle 55% maksimipistemäärästä.
Opiskelijan arvosana on 2, mikäli pistemäärä on yli 55 % mutta alle 70% maksimipistemäärästä.

Assessment criteria, good (3-4)

Katso yllä arvioinnin kohteet:

Opintojakson arvosana muodostuu opiskelijan tekemien, palauttamien ja demoamien tehtävien lukumäärän ja laadun perusteella.

Opiskelijan arvosana on 3, mikäli pistemäärä on yli 70 % mutta alle 80% maksimipistemäärästä.
Opiskelijan arvosana on 4, mikäli pistemäärä on yli 80 % mutta alle 90% maksimipistemäärästä.

Assessment criteria, excellent (5)

Katso yllä arvioinnin kohteet:

Opintojakson arvosana muodostuu opiskelijan tekemien, palauttamien ja demoamien tehtävien lukumäärän ja laadun perusteella.

Opiskelijan arvosana on 5, mikäli pistemäärä on vähintään 90% maksimipistemäärästä.

Qualifications

Introduction to Programming or equivalent programming skills