HowToDoInJava

  • Python
  • Java
  • Spring Boot
  • Dark Mode

Design Patterns Tutorials

Design patterns represent the best practices used by experienced object-oriented software developers. Design patterns are solutions to general problems that software developers faced during software development. These solutions were obtained by trial and error by numerous software developers over quite a substantial period of time.

Uses of Design Patterns

Design patterns can speed up the development process by providing tested, proven development paradigms. Effective software design requires considering issues that may not become visible until later in the implementation. Reusing design patterns helps to prevent subtle issues that can cause major problems and improves code readability for coders and architects familiar with the patterns.

Often, people only understand how to apply certain software design techniques to certain problems. These techniques are difficult to apply to a broader range of problems. Design patterns provide general solutions, documented in a format that doesn’t require specifics tied to a particular problem.

In addition, patterns allow developers to communicate using well-known, well understood names for software interactions. Common design patterns can be improved over time, making them more robust than ad-hoc designs.

The 23 Gang of Four (GoF) patterns are generally considered the foundation for all other patterns. They are categorized in three groups: Creational, Structural, and Behavioral (for a complete list see below).

  1. Open closed principle
  2. Single responsibility principle
  3. State Design Pattern
  4. Mediator Design Pattern
  5. Observer Design Pattern
  6. Memento Design Pattern
  7. Iterator Design Pattern
  8. Proxy Design Pattern
  9. Flyweight Design Pattern
  10. Facade Design Pattern
  11. Command Design Pattern
  12. Strategy Design Pattern
  13. Template Method Design Pattern
  14. Composite Design Pattern
  15. Bridge Design Pattern
  16. Adapter Design Pattern in Java
  17. Builder Design Pattern in Java
  18. Decorator Design Pattern in Java
  19. Visitor Design Pattern Example
  20. Chain of Responsibility Design Pattern
  21. Prototype design pattern in Java
  22. Abstract Factory Pattern Explained
  23. Java Factory Pattern Explained
  24. Java Singleton Pattern Explained

Search Tutorials

GoF Design Patterns

  • Introduction
  • Creational Patterns
    • Singleton
    • Builder
    • Factory
    • Abstract Factory
    • Prototype
  • Behavioral Patterns
    • Chain of Responsibility
    • Command
    • Iterator Design Pattern
    • Mediator
    • Memento
    • Observer
    • State
    • Strategy
    • Template Method
    • Visitor
  • Structural Patterns
    • Adapter
    • Bridge
    • Composite
    • Decorator
    • Facade
    • Flyweight
    • Proxy

Design Principles

  • SOLID Principles
  • Open closed principle
  • Single responsibility principle

Meta Links

  • About Me
  • Contact Us
  • Privacy policy
  • Advertise
  • Guest and Sponsored Posts

Recommended Reading

  • 10 Life Lessons
  • Secure Hash Algorithms
  • How Web Servers work?
  • How Java I/O Works Internally?
  • Best Way to Learn Java
  • Java Best Practices Guide
  • Microservices Tutorial
  • REST API Tutorial
  • How to Start New Blog

Copyright © 2020 · HowToDoInjava.com · All Rights Reserved. | Sitemap

  • Java 15 New Features
  • Sealed Classes and Interfaces
  • EdDSA (Ed25519 / Ed448)