--- title: Algorithm Design Patterns localeTitle: Patrones de diseño de algoritmos --- ## Patrones de diseño de algoritmos En ingeniería de software, un patrón de diseño es una solución general repetible a un problema común en el diseño de software. Un patrón de diseño no es un diseño terminado que se puede transformar directamente en código. Es una descripción o plantilla sobre cómo resolver un problema que se puede utilizar en muchas situaciones diferentes. Los patrones de diseño pueden acelerar el proceso de desarrollo al proporcionar paradigmas de desarrollo probados y comprobados. Estos patrones se dividen en tres categorías principales: ### Patrones creacionales Estos son patrones de diseño que tratan con los mecanismos de creación de objetos, tratando de crear objetos de una manera adecuada a la situación. La forma básica de creación de objetos podría provocar problemas de diseño o una mayor complejidad al diseño. Los patrones de diseño creacional resuelven este problema controlando de alguna manera la creación de este objeto. ### Patrones estructurales Estos son patrones de diseño que facilitan el diseño al identificar una forma sencilla de establecer relaciones entre entidades. ### Patrones de comportamiento Estos son patrones de diseño que identifican patrones de comunicación comunes entre objetos y realizan estos patrones. Al hacerlo, estos patrones aumentan la flexibilidad para llevar a cabo esta comunicación. #### Más información: [Patrones de diseño - Wikipedia](https://en.wikipedia.org/wiki/Design_Patterns)