- Introduction to principles of software architecting (coupling, cohesion, interface abstraction)
- Recap: Object-oriented designing and programming
- Object-oriented programming in dynamic and scripting languages
- From object-oriented to feature-oriented programming
- Designing and implementing embedded domain-specific languages (DSLs)
- Implementing software patterns, in particular OO design patterns
Syllabus
Title
0936 Dynamic Programming Techniques
Instructors
Assoz.Prof PD Dr. Stefan Sobernig
Type
PI
Weekly hours
2
Language of instruction
Englisch
Registration
09/02/19 to 09/27/19
Registration via LPIS
Registration via LPIS
Notes to the course
This class is only offered in winter semesters.
Subject(s) Master Programs
Dates
Day | Date | Time | Room |
---|---|---|---|
Tuesday | 10/01/19 | 09:00 AM - 01:00 PM | D2.0.025 Workstation-Raum |
Tuesday | 10/08/19 | 09:00 AM - 01:00 PM | D2.0.031 Workstation-Raum |
Tuesday | 10/15/19 | 02:00 PM - 06:00 PM | D2.0.025 Workstation-Raum |
Tuesday | 10/29/19 | 02:00 PM - 04:00 PM | D2.0.025 Workstation-Raum |
Tuesday | 11/12/19 | 02:00 PM - 04:00 PM | D2.0.025 Workstation-Raum |
Tuesday | 11/19/19 | 10:00 AM - 02:00 PM | D2.0.025 Workstation-Raum |
Tuesday | 11/26/19 | 02:00 PM - 06:00 PM | D2.0.025 Workstation-Raum |
Tuesday | 12/10/19 | 01:30 PM - 03:30 PM | D2.0.031 Workstation-Raum |
Completing the course enables students to ...
- ... describe the software architecture (as realised by an object-oriented programming) according to important architectural principles (coupling, cohesion).
- ... identify and discuss object-oriented programming techniques (e.g., forms of inheritance) independent from a concrete programming language.
- ... describe types of variation in an object-oriented program.
- ... evaluate and select implementation techniques to implement variation in an object-oriented program.
- ... to apply these concepts exemplarily in four programming languages (JavaScript, Ruby, Python, and NX).
- Topic lectures given by course instructor
- Programming exercises during course sessions
- Programming assignments
- Programming assignment: 40 credits
- Classroom participation, laboratory exercises: 10 credits
- Final written exam: 50 credits
- A positive grading requires a student to obtain more than 50% of the total credits (more than 50.5 credits).
- Proficiency in the topics delivered by the CBK course on "Information Systems Development" (ISDev)
- Applying UML: Students must be capable of creating and reading UML class and sequence diagrams.
- Sufficient knowledge of at least one object-oriented programming language (e.g., Java)
- Note: None of these topics will be covered in the course, they are considered pure prerequisites.
Last edited: 2020-01-23
Back