Design Patterns in C#

Design Patterns in C#

In this video, I have explained the following:

  • Design patterns (What & Why)
  • Design patterns History
  • Type of Design patterns
  • Design patterns classification
  • When to Apply
  • For basic understanding about the object oriented concepts: Abstraction, Inheritance, Polymorphism, Encapsulation, Interfaces, Classes, Abstract classes
Suggested Videos:
SOLID  Design principles

Design Patterns (What & Why)
  • Design patterns in object oriented programming world helps the developers to make a better software design.
  • Design patterns provides solutions to real world software application design problems or in application development.
  • Design Patterns are about applying reusable designs and interactions of objects.
  • Design patterns provide flexible solutions to solve common design problems in real world.
  • It is a template for “solve a problem in real time situations”.
  • Writing the code with design patterns will make your applications more Reliable, Scalable and Maintainable.
  • "A pattern is a recurring solution to a problem in a context.“

Design Pattern History
  • The 4 authors Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides introduced Gang of Four Design Patterns in Software world.
  • In 1994, they published a book (Design Patterns: Elements of Reusable Object-Oriented Software) for the concept of Design Patterns.
  • The 23 Gang of Four (GoF) design patterns are considered the basic for all other patterns.
  • GoF has divided the book into 2 parts
  • Explaining about the pros and cons of object oriented programming
  • Describes the evolution of 23 classic software design patterns.
Creational Design Patterns
As the name suggests, this design provide mechanisms of various object creation which reuse of existing code and increase flexibility.
  • Abstract Factory
  • Builder
  • Factory Method
  • Prototype
  • Singleton
Structural Design Patterns
As the name suggests, this pattern help us to create and implement the flexible and efficient structures and  how to assemble objects and classes into larger structures.
  • Adapter
  • Bridge
  • Composite
  • Decorator
  • Façade
  • Flyweight
  • Proxy
Behavioral Design Patterns
As the name suggests, Object behavior and responsibilities between objects are very important and this design patterns are concerned with algorithms as well.
  • Chain of Responsibility
  • Command
  • Interpreter
  • Iterator
  • Mediator
  • Memento
  • Observer
  • State
  • Strategy
  • Template Method
  • Visitor
When to apply Design Patterns
  • Take the design as a reference and check does the design pattern really works as expected. If yes, then only use the pattern.
  • The most important part of applying patterns to your codebase is knowing when and where to apply each pattern.
  • If you implement just for the sake of the pattern, you will probably do more damage to your project.
  • So we’ve decided to go over the most commonly used patterns in first and give some easy and real time examples step by step.
  • How I can identify the software design problem?

Click below to see all these these things in action:


Check out the new Design Pattern sessions link below with very easy code examples.

No comments:

Post a Comment

Your feedback is important.
Visit www.techwebdots.in