Command Query Separation o CQS es uno de los principios de diseño orientado a objeto que nos permite construir nuestras clases de forma que sean más sencillas de usar por parte de los desarrolladores. Este principio define que los métodos de una clase se deben dividir en dos grandes grupos , Consultas y Comandos. Las consultas son […]
Java Flyweight pattern y rendimiento
Java FlyWeight Pattern es uno de los patrones de diseño que más cuesta entender ya que implica construir muchas clases para entender su funcionamiento y sus puntos fuertes. Vamos a intentar realizar un acercamiento a él a través de clases sencillas. Imaginemonos que disponemos de la clase MacBookAir. Se trata de una clase normal y corriente […]
Utilizando Java Factories y Enums
Las factorías o Java Factories es uno de los patrones de diseño más utilizados por los desarrolladores y se encargan de facilitar la creación de una jerarquía de clases. Ademas de construir dicha jerarquía nos permiten encapsular toda una jerarquía de clases apoyándonos en la clase padre o interface que definamos. Una de las preguntas […]
El patrón fachada (GenBetaDev)
Hoy he escrito un artículo sobre el patrón fachada para la gente de genbetadev .Los patrones de diseño son conceptos con los que todo el mundo tiene dudas y que no resultan sencillos de abordar . En esta casuistica concreta he introducido el patrón fachada . Podeis acceder al artículo desde aquí espero que os sea de […]
Diseño Flexibilidad y Sencillez
En la anterior entrada hemos terminado comparando un diseño flexible con un diseño rígido. Sin embargo el diseño que a priori era rígido tenía sus ventajas ya que era mas facil trabajar con él. Comparado con el diseño que teníamos que era mas flexible pero a la vez mas enrevesado de trabajar. Esto se debe […]
Herencia y relaciones entre objetos
En el post anterior hemos visto como la herencia no siempre encaja de una forma natural y flexible con el diseño de nuestras aplicaciones .Una de las primeras preguntas que nos tenemos que hacer a la hora de relacionar dos clases a traves de la herencia es si ambas clases tienen una relación de categorización […]
Uso de Herencia y sus problemas
Una de las características mas destacadas de los lenguajes de programación orientada a objetos es su capacidad de reutilizar el código a traves del concepto de herencia.Usando la herencia una clase (hija) puede heredar todas las características de una clase padre. Esta característica tan comentada por todos es muchas veces mal interpretada a la hora de ponernos a desarrollar […]
Adaptadores y patrones y el principio OCP
Trabajar con patrones de diseño nunca es sencillo y siempre resulta complejo ver como se relacionan con unos u otros principios de Ingeniería. Hoy voy a mostrar un ejemplo del patrón adaptador. Supongamos que tenemos la siguiente jerarquia de clases que definen varias impresoras que imprimen documentos en distintos formatos. Vamos a ver el código […]







