KidusMT / DesignPatterns

Design Patterns and Design Principles with their best practices and description

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DesignPatterns

Design Patterns and Design Principles with their best practices and description

Keywords for Memorization

Define a family of algorithms, encapsulate each one, and make them interchangeable. Strategy lets the algorithm vary independently from the clients that use it.

  • family
  • interchangable
  • vary independenty

Define an interface for creating an object, but let subclasses decide which class to instantiate. Factory Method lets a class defer instantiation to subclasses.

  • family
  • interchangable
  • vary independenty

Visitor: O-P-E-S

Represent an operation to be performed on the elements of an object structure. Visitor lets you define a new operation without changing the classes of the elements on which it operates.

  • represent an Operation
  • Performed on an
  • Elements of object
  • in a Structure

Composite: C-T-P-T

Compose objects into tree structures to represent whole-part hierarchies. Composite lets clients treat individual objects and compositions of objects uniformly.

  • Compose
  • Tree structure
  • represent Part-whole hierarchies
  • Treat individual objects and compositions

Iterator: E-A-S-E

Provide a way to access the elements of an aggregate object sequentially without exposing its underlying representation.

  • access Element
  • Aggregate object
  • Squencially
  • wihtout Exposing

Proxy: S-P-A

Provide a surrogate or placeholder for another object to control access to it.

  • Surrogate
  • Placeholder
  • control Access

Good Video Materials from YT

Difference between

Decorator DP Composite DP
add new behaviour part-whole hierarchy
linear structure tree structure
one dimensional two dimensional
only one node one or more nodes

wrapper patterns

About

Design Patterns and Design Principles with their best practices and description


Languages

Language:Java 100.0%