Lecture 1: Introduction to the Object Oriented
Systems Course
Lecture 2: Abstract Data Types
Lecture 3: Encapsulation
Lecture 4: Contracts,- Inheritance and Encapsulation
Lecture 5: Inheritance itself a part of the contract
- visibility of inheritance;
behavioral properties, hooks and templates
Lecture 6: Inheritance: types of usage, compatibility
levels, strict and non-strict inheritance
Lecture 7: Self, Super, Late binding, Method
Lookup Algorithm: Smalltalk example
Lecture 8: Polymorphism, its applications
Lecture 9: Pure object orientation: A language
design perspective
Lecture 10: Object Oriented Control Constructs
Lecture 11: Dynamic Dispatch Implementations:
The Virtual Table Mechanism of C++
Lecture 12: Dynamic Dispatch Implementations
- II
Lecture 13: Quiz
Lecture 14: Syntactic Polymorphism
Lecture 15: Multiple Polymorphism and its implementations
Lecture 16: The Fragile Superclass Problem
Lecture 17: Inter-object Relationships
Lecture 18: Part-Whole Relation and its Categories
Lecture 19: Reuse Principles
Mid-Semester Examination: Friday, 25/02/2000
Lecture 20: Discussion on the mid-semester paper
Lecture 21: Object Oriented Design and Design
Patterns
Lecture 22: Singleton, Adapter
Lecture 23: Proxy, Composite
Lecture 24: Decorator
Lecture 25: Bridge, Prototype
Lecture 26: Iterator
Lecture 27: Observer, Strategy, Template Method
Lecture 28: Software Development Methodology
Lecture 29: Use Cases -I
Lecture 30: Use Cases -II
Lecture 31: Models of Software
Lecture 32: Object Identitication
Lecture 33: CRC
Lecture 34: Static Structures
Lecture 35: Interobject Interactions: Use case realizations
Lecture 36: Intraobject Dynamic Behavior - I
Lecture 37: Intraobject Dynamic Behavior - II (objects with multiple roles)
Lecture 38: Discussion on Other Models
Lecture 39: Issues in Design and Implementation of Distributed Object Architectures - I
Lecture 40: Issues in .. II
Go through the readings mentioned during lecture hours
Course Structure:
1. Around 40 hours of lecturing
2. Design and Programming Assignments: Individual
and Group assignments
3. Term Project: A Group project
4. Closed-Book Examinations
Lecturing Slots:
Monday 8:30AM, Tuesday 10:30AM, Friday 09:30AM
Venue:
F12
Out-of-the-class contact hours:
2:30-3:30, weekdays, without an appointment