Beginning Object-Oriented Design

Programmers and developers who want to design plans for writing better code

Prerequisite
None

Expected Duration
155 minutes

Description
There are a number of concepts and methodologies that encompass what is known as object-oriented design. In this course, you’ll explore object-oriented design concepts such as Single responsibility, Open/Closed, Liskov substitution, Interface segregation and Dependency inversion (SOLID), Unified Modeling Language (UML), class responsibility collaboration (CRC) cards, and General Responsibility Assignment Software Patterns (GRASP).

Objective

Object-Oriented Programming Basics

  • start the course
  • recognize the basic concepts of OOP
  • create and instantiate a C#/Java object
  • explain what abstract classes are and illustrate with a sample
  • explain what encapsulation is and illustrate with a sample
  • explain what inheritance is and illustrate with a sample
  • demonstrate the concept of polymorphism and show how it works with a code sample

Object-Oriented Design Basics

  • recognize the basic concepts of OOD
  • recognize the basic concepts of UML and recommended tools
  • demonstrate the role of use cases in OOD
  • demonstrate how to model classes and objects using UML
  • demonstrate the role of state charts in OOD
  • demonstrate how to create UML activity diagrams
  • recognize the basic concepts of Don’t Repeat Yourself (DRY)
  • demonstrate the use of a Class Responsibility Collaboration card

Practice: Object-Oriented Programming and Design

  • recognize the basic concepts of object-oriented programming: encapsulation, inheritance, polymorphism, and abstraction

SOLID

  • recognize the basic concepts of SOLID
  • recognize the basic concepts of the Single Responsibility Principle
  • recognize the basic concepts of the Open/Closed Principle
  • recognize the basic concepts of the Liskov Substitution Principle
  • recognize the basic concepts of the Interface Segregation Principle
  • recognize the basic concepts of the Dependency Inversion Principle

GRASP

  • recognize the basic concepts of GRASP
  • recognize the role of the Information Expert principle in the GRASP pattern
  • recognize the role of the Creator principle in the GRASP pattern
  • recognize the role of the Low Coupling principle in the GRASP pattern
  • recognize the role of the High Cohesion principle in the GRASP pattern
  • recognize the role of the Controller principle in the GRASP pattern
  • recognize the role of Polymorphism in the GRASP pattern
  • recognize the role of the Pure Fabrication principle in the GRASP pattern
  • recognize the role of the Indirection principle in the GRASP pattern
  • recognize the role of Protected Variations in the GRASP pattern

Practice: SOLID and GRASP Principles

  • recognize the basic concepts of the SOLID and GRASP object-oriented design principles

MONTHLY SUBSCRIPTION

$129/month
 

ANNUAL SUBSCRIPTION

$1295/year

Multi-license discounts available for Annual and Monthly subscriptions.