Introduction To Object Oriented Design Slides
Introduction To Object Oriented Design Slides
Design with C# 10
Introduction to Object-oriented
Design
Mel Grubb
Developer
@melgrubb | www.melgrubb.com
Version Check This course was created by using:
- C# 10
- Visual Studio 2022 (v17.4.0)
- Markdown Editor v2 (v2.0.130)
- NUnit 3 (v3.13.3)
• NUnit3TestAdapter (v4.3.0)
Version Check
This course is 100% applicable to:
- C# 11
- Visual Studio 2022 (v17.4.1)
Object-oriented Language Examples
C# Java Python
!= Object-oriented Design
!= Object-oriented Language
Procedural C#
Main()
{
}
Object-oriented Basic
Program
Object-oriented Languages
Thinking in objects
Class diagrams
Sequence diagrams
State diagram
O Open-Closed Principle
Cohesion
Coupling
Orthogonality
Cohesion
Cohesion
Coupling
Coupling
Nouns, Verbs, Adjectives, and Entities
Nouns and Verbs
Nouns Classes
Verbs Methods
Nouns = Classes
Classes
Nouns Includes entities such as Customer, Order, and Product
Also includes non-entity objects like loggers, controllers, and messages
Verbs Methods
The things your classes can do, both to itself or to other objects
Adjectives Interfaces
Abstract capabilities that an object has, composed of its methods and properties combined
Object-oriented Design vs. Programming