Course of Behavioral Design Patterns

Dani SantamariaRafa Gómez

By Dani Santamaria y Rafa Gómez Software Design and Architecture

Learn the implications at the SOLID level and maintenance of Behavioral Design Patterns.

💸 First lesson available without registration 💸

What will you learn in this Behavioral Design Patterns course?

When solving a request or algorithm, we may encounter certain challenges in finding a good design. Well, there are problems that are very common, and we can use the behavioral patterns that we see in this course.

In each example, we see the implications they have at the level of SOLID and maintainability, before and after applying them, and we analyze their advantages and disadvantages, as well as alternatives and similarities with other patterns.

During the course, we elevate certain patterns to macro design and see the utility of combining several patterns.

Learn to know when to apply Behavioral Design Patterns and understand the advantages and trade-offs they involve using them! 💪

Course Content

  1. [FREE] 🧩 Behavioral design patterns What problems do they solve?
    • 🤙 Why we use patterns in our day-to-day
    • 🧙 Managing requests with Behavioral Patterns
  2. 🕹️ Command
    • 🫡 Separate responsibilities: The Command Pattern
    • ⛩ Log each command: Template Method
    • 🗡 Avoid Setters and God Object in the Command Pattern
    • 🥊 Command Pattern vs CQ(R)S Command
  3. 👀 Observer and Mediator
    • 👁 Separate derived actions: The Observer Pattern
    • 🥦 Implications of the Observer Pattern
    • 🧑‍⚖️ Mediator to the rescue: Communication with EventBus
  4. ⛓️ Chain of Responsibility
    • 🚍 From Command to CommandBus: Chain of Responsibility Pattern
    • 👯 Different types of Chains
    • 🙆 Manage transactions with Middlewares
  5. 🐝 Strategy
    • 🥇 Maintainability of the achievement system: Strategy Pattern
    • 🤝 Relationship of Strategy with other patterns: Template Method and Abstract Factory
    • 🏗️ Strategy pattern at the macro-design level
  6. 🦋 State
    • 🧊 State Pattern and State Machines
    • 🌊 Apply the State Pattern by modifying clients
    • 🌫️ Move each state of your aggregates to separate contexts
  7. 🕵️ Behavioral patterns that we do NOT use in daily life
    • 🙅 Why Visitor is not necessary in the 21st century
    • 🧠 Memento for persistence and EventSourcing
    • 🔄 Optimize data access with Iterator and Generators
  8. 🤹 Patterns in functional programming
    • ⛓️ Chain of responsibility: From OO to Functional
    • 🐝 Strategy: From OO to Functional
  9. 🏃 Conclusion and next steps
    • 🌮 What happens if we combine software patterns?
    • 🏗️ Overengineering when using design patterns
    • 🤘 Next steps

Videos of the course

Related courses

See full catalogue

Pay according to your needs

lite (only monthly)

19 €
per month
  • Access to a subset of courses to lay the foundation for maintainable, scalable, and testable code
  • Company invoice
Popular

standard

24,92 €
Save 121
Annual payment of 299
per month
  • Full course catalog
  • Design and architecture challenges
  • Highlighted solutions videos for challenges
  • Receive job offers verified by Codely
  • Company invoice

premium

41,58 €
Save 89
Annual payment of 499
per month
  • Everything above
  • More benefits coming soon

We won’t increase the price while your subscription is active