Skip to main content

Design Patterns (5 cr)

Code: TX00EY29-3002

General information


Enrollment
06.05.2024 - 18.08.2024
Registration for the implementation has ended.
Timing
19.08.2024 - 15.12.2024
Implementation has ended.
Number of ECTS credits allocated
5 cr
Local portion
5 cr
Mode of delivery
On-campus
Unit
(2019-2024) School of ICT
Campus
Myllypurontie 1
Teaching languages
Finnish
Seats
0 - 35
Degree programmes
Information and Communication Technology
Teachers
Vesa Ollikainen
Groups
ICT23K-SW
Software Engineering
Course
TX00EY29

Implementation has 15 reservations. Total duration of reservations is 45 h 0 min.

Time Topic Location
Thu 22.08.2024 time 09:00 - 12:00
(3 h 0 min)
Suunnittelumallit TX00EY29-3002
MPA5019 Oppimistila
Thu 29.08.2024 time 09:00 - 12:00
(3 h 0 min)
Suunnittelumallit TX00EY29-3002
MPA5019 Oppimistila
Thu 05.09.2024 time 09:00 - 12:00
(3 h 0 min)
Suunnittelumallit TX00EY29-3002
MPA5019 Oppimistila
Thu 12.09.2024 time 09:00 - 12:00
(3 h 0 min)
Suunnittelumallit TX00EY29-3002
MPA5019 Oppimistila
Thu 19.09.2024 time 09:00 - 12:00
(3 h 0 min)
Suunnittelumallit TX00EY29-3002
MPA5019 Oppimistila
Thu 26.09.2024 time 09:00 - 12:00
(3 h 0 min)
Suunnittelumallit TX00EY29-3002
MPA5019 Oppimistila
Thu 10.10.2024 time 09:00 - 12:00
(3 h 0 min)
Suunnittelumallit TX00EY29-3002
MPA5019 Oppimistila
Wed 23.10.2024 time 09:00 - 12:00
(3 h 0 min)
Suunnittelumallit TX00EY29-3002
MPA5026 Luentosali
Wed 30.10.2024 time 09:00 - 12:00
(3 h 0 min)
Suunnittelumallit TX00EY29-3002
MPA5027 Oppimistila
Wed 06.11.2024 time 09:00 - 12:00
(3 h 0 min)
Suunnittelumallit TX00EY29-3002
MPA5026 Luentosali
Tue 12.11.2024 time 09:00 - 12:00
(3 h 0 min)
Suunnittelumallit TX00EY29-3002
MPA5024 Oppimistila
Wed 20.11.2024 time 09:00 - 12:00
(3 h 0 min)
Suunnittelumallit TX00EY29-3002
MPA5026 Luentosali
Wed 27.11.2024 time 09:00 - 12:00
(3 h 0 min)
Suunnittelumallit TX00EY29-3002
MPA5026 Luentosali
Wed 04.12.2024 time 09:00 - 12:00
(3 h 0 min)
Suunnittelumallit TX00EY29-3002
MPA5026 Luentosali
Wed 11.12.2024 time 09:00 - 12:00
(3 h 0 min)
Suunnittelumallit TX00EY29-3002
MPA5026 Luentosali
Changes to reservations may be possible.

Objective

The student
• is familiar with the most common object-oriented design models (Gamma's models) and their significance in the design of reusable software
• understands the importance of interface thinking in the design of object-oriented software and acquires tools for implementing both structurally and functionally sustainable solutions.

Content

Gamma's creational, structural and behavioral patterns, paying particular attention to the following aspects:
• the relationship between application frameworks and design patterns
• programming against interfaces (or abstractions)
• inheritance and aggregation as reuse options
• delegation as an implementation mechanism for service provision
• the importance of creational patterns as an enhancer of code reusability
• abstract classes as enablers of shared code
• the difference between the traditional control flow and the inversion of control
• shared objects as a resource-saving mechanism
• centralised vs. decentralised decision making
• tight vs. loose coupling of objects
• push and pull models as communication technologies in object communication
• deep copying vs. shallow copying of objects.

Evaluation scale

0-5

Assessment criteria, satisfactory (1)

The student knows the best practices of programming and can explain why design patterns are needed and knows the different patterns.

Assessment criteria, good (3)

The student is able to apply programming best practices and use design models in programming.

Assessment criteria, excellent (5)

The student can apply best practices in programming and use design models extensively in programming.

Assessment criteria, approved/failed

The student knows the best practices of programming and can explain why design patterns are needed and knows the different patterns.

Qualifications

Object-oriented Programming

Go back to top of page