Actividad foro

Noticia

Otra de las cosas que más se suele preguntar en entrevistas de trabajo es el conocimiento de patrones de diseño.

¿Qué es un patrón de diseño?
Sacado de la Wikipedia
Los patrones de diseño son unas técnicas para resolver problemas comunes en el desarrollo de software y otros ámbitos referentes al diseño de interacción o interfaces.

Un patrón de diseño resulta ser una solución a un problema de diseño. Para que una solución sea considerada un patrón debe poseer ciertas características. Una de ellas es que debe haber comprobado su efectividad resolviendo problemas similares en ocasiones anteriores. Otra es que debe ser reutilizable, lo que significa que es aplicable a diferentes problemas de diseño en distintas circunstancias.


Estuve haciendo un curso online de patrones de diseño en C++ y la lista de patrones era larga, aunque se pueden organizar por su tipo:

  • Creational

    • Builder

    • Factories

      • Abstract Factory

      • Factory Method

    • Prototype

    • Singleton


  • Structural

    • Adapter

    • Bridge

    • Composite

    • Decorator

    • Façade

    • Flyweight

    • Proxy


  • Behavioural

    • Chain of Responsibility

    • Command

    • Interpreter

    • Iterator

    • Mediator

    • Memento

    • Observer

    • State

    • Strategy / Policy

    • Template Method

    • Visitor


Tengo anotaciones sobre qué es cada patrón, pero creo que son demasiado escuetas.

Creo que es importante tener una noción de todos ellos, aunque luego a la hora de implementar el código haya que googlear y buscar cómo implementarlos.

Recomiendo hacer el curso de Udemy: Design Patterns in Modern C++
El curso es de pago, pero en su momento me pareció muy completo.

Internet está llena de información y seguro que podéis encontrar cursos gratuitos sobre patrones de diseño.

Noticias