El patrón de diseño Decorator es uno de los veintitrés patrones descritos en el libro "Design Patterns: Elements of Reusable Object-Oriented Software" de los autores conocidos como Gang of Four (GoF).
En este post voy a explicar todo lo que hay que saber sobre el patrón desde un punto de vista c#.net.
La traducción de Decorator al español sería Envoltorio, pero prefiero no traducirlo porque es el nombre con el que se conoce.
Foto de Veronica Benavides en Unsplash
En este artículo voy a describir qué es una Entidad desde el punto de vista de Domain Driven Design, qué características tiene y cómo implementarla en c#.net.
Foto de Anastasiya Romanova en Unsplash
A menudo me he encontrado con que en el mundo del desarrollo de software, a cualquier cosa se le llama lógica de negocio o lógica a secas.
En este artículo voy a explicarte qué entiendo por lógica y qué tres tipos básicos podemos distinguir.
Photo by Claudio Schwarz on Unsplash
Aquí tienes un ejemplo real de un método deshonesto en c# y un par de opciones para mejorarlo.
Fotografía de Nathan Dias en Unsplash
Para comprender patrones de diseño básicos como Command Query Separation CQS o la base teórica detrás de la programación funcional es necesario saber qué son los efectos secundarios en programación y cuándo se producen. En inglés se conocen como side effects.
En el post anterior definí lo que era el estado de la aplicación, te recomiendo tenerlo presente para comprender mejor este texto.
Para generar código mantenible es fundamental comprender el concepto estado, puesto que la mayoría de principios y prácticas se refieren a él constantemente.
Espero que este post te ayude a conocerlo un poco mejor.
El encapsulamiento es el principio fundamental que te va a ayudar a crear código mantenible. Aquí tienes su definición y tres herramientas sencillas que puedes aplicar para encapsular con sentido.
Voy a iniciar una serie de posts sobre conceptos y teoría para escribir código mantenible. Empezaré por los conceptos más básicos y continuaré siguiendo un orden de complejidad que permita entenderlos todos e ir subiendo de nivel.
Photo by Simon Abrams on Unsplash