- 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
1003 Dynamic Programming Techniques
Instructors
Assoz.Prof PD Dr. Stefan Sobernig
Type
PI
Weekly hours
2
Language of instruction
Englisch
Registration
08/31/18 to 10/01/18
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/02/18 | 09:00 AM - 01:00 PM | D2.0.025 Workstation-Raum |
Tuesday | 10/09/18 | 09:00 AM - 01:00 PM | D2.0.025 Workstation-Raum |
Tuesday | 10/16/18 | 02:00 PM - 06:00 PM | D2.0.025 Workstation-Raum |
Tuesday | 10/30/18 | 02:00 PM - 04:00 PM | D2.0.025 Workstation-Raum |
Tuesday | 11/13/18 | 04:00 PM - 06:00 PM | D2.0.025 Workstation-Raum |
Tuesday | 11/20/18 | 09:00 AM - 01:00 PM | D2.0.025 Workstation-Raum |
Tuesday | 11/27/18 | 02:00 PM - 06:00 PM | D2.0.025 Workstation-Raum |
Tuesday | 12/04/18 | 02:00 PM - 06:00 PM | D2.0.025 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: 2018-06-22
Back