OOP is a mindset and a process. This course leads you to understand its power.
Course Content
- Download Code Files
- Lesson 1 - Introduction
- Lesson 2 - Establishing Crucial Metaphors
- Lesson 3 - Application Lifecycle and Object Orientation
- Lesson 4 - Big Upfront Design: Object Oriented Analysis and Design
- Lesson 5 - Agile Methodology
- Lesson 6 - The Process can Affect the Design
- Lesson 7 - Abstracting the Real World into a Domain Model
- Lesson 8 - Establishing Roles and Delegating Responsibilities to Objects
- Lesson 9 - Contracts, Interfaces and Collaborations
- Lesson 10 - Collaborations and Object Role Stereotypes
- Lesson 11 - Collaborations: Conditions of Use and After Effect Guarantees
- Lesson 12 - Domain vs Application Specific Objects
- Lesson 13 - Components as Neighborhoods of Objects
- Lesson 14 - Architectural Layers of Responsibility using Objects
- Lesson 15 - Designing Objects and Interactions Guided By Principles and Patterns
- Lesson 16 - Why Encapsulation?
- Lesson 17 - Why Implementation Inheritance?
- Lesson 18 - Why Interface Inheritance?
- Lesson 19 - Why Polymorphism?
- Lesson 20 - Understanding Relationships: Coupling and Dependency
- Lesson 21 - Understanding Relationships: Inversion of Control and Dependency Injection
- Lesson 22 - Understanding Relationships: Aggregation
- Lesson 23 - Understanding Relationships: Composition
- Lesson 24 - Understanding the Agile Analysis and Design Process using Visual Studio Team Services
- Lesson 25 - Where to Go From Here