La inversión de dependencias no es (sólo) lo que tú piensas
13 abril 2015 | , , | 7 comentarios

Ah, SOLID. Los principios SOLID. Esos principios, desconocidos por unos, sobrevalorados por otros, que se supone que deberían servirnos para desarrollar mejor software. Se ha escrito mucho sobre estos principios, pero a veces nos quedamos más con la implementación concreta (el patrón de diseño, la recetilla a aplicar) que con la idea subyacente. Siempre he...

Seguir leyendo

Jerarquías ad-hoc en Clojure
6 abril 2015 | , | 5 comentarios

A la hora de aplicar polimorfismo, en los lenguajes orientados a objetos tradicionales como Java o C#, una de las herramientas más utilizadas es la herencia entre clases o interfaces, que nos permite establecer una jerarquía entre los diferentes tipos que forman parte de una aplicación. Esto nos permite enviar mensajes (lo que suele traducirse...

Seguir leyendo

Interfaces marcadoras, atributos y convenciones
9 marzo 2015 | ,

Hay ocasiones en que necesitamos añadir algún tipo de metainformación a nuestro código. Se trata de información sobre el código, no tanto sobre lo que hace sino sobre el propio artefacto (clase, método o propiedad), que es necesaria para poder realizar determinadas tareas. Podemos encontrar ejemplos típicos de esto en aplicaciones MVC, donde de alguna...

Seguir leyendo

Cómo elegir aggregate roots
2 marzo 2015 | , | 7 comentarios

Utilizar un modelo de dominio rico, basado en las ideas propuestas por DDD, se ha convertido en algo habitual. Independientemente de que uses un proceso DDD real, con su experto de dominio, su lenguaje ubicuo y demás, este tipo de modelos tienen su utilidad y, aunque no son aplicables en todos los casos, hay situaciones...

Seguir leyendo