martes, 11 de julio de 2017

Abandone toda esperanza quien entre aquí

Ese era el "slogan" o frase motivacional de nuestra  gerencia de desarrollo en INSISTO.

Como podrán apreciar, mi gerencia tenía fama de ser áspera, directa, dura, elitista y dictatorial. No apta para pusilánimes. La gerencia "Hitler" le decían. De hecho, cuando alguien se quejaba de sus condiciones de trabajo o de sus tareas, era enviado a pasar unos meses bajo mi tutela en la gerencia de desarrollos, para que la víctima persona supiera cuan feliz y fácil era su vida y no lo sabía.

Eran tiempos mas honestos.

sábado, 20 de mayo de 2017

Getters y Setters grandes enemigos de la OOP

Es mucho el artículo, publicación y blogs de , ¿supuestos?, entendidos en el tema que hablan sobre, o exponen el problema con, el uso o más bien ABUSO de los Getters y Setters en la programación orientada a objetos (OOP).

Es este un tema recurrente y para nada nuevo, no señor, de hecho viene dando vueltas en el entorno de desarrollos OOP desde hace un buen rato. Pero....

¿Cuál es el gran problema con usar getters y setters?


domingo, 14 de mayo de 2017

Métodos Comunistas y Propiedades Capitalistas

No, este no es un artículo sobre política, sigue siendo sobre programación orientada a objectos (OOP), específicamente sobre métodos públicos y propiedades privadas, de allí el título.

Todo surge por un comentario que me hizo un querido amigo al leer mi publicación sobre las reglas pigbar de programación. El me comentó:

"Mr. Bladi, entiendo sus reglas acerca de que las propiedades deban ser privadas por aquello del encapsulamiento, ¿pero que todos los métodos deban ser públicos? eso me cuesta entenderlo, eso implica que no existen métodos privados, y yo debo saber lo que un objeto hace sin preocuparme del cómo, por lo que esos métodos privados pueden ser útiles."


sábado, 13 de mayo de 2017

NULL debe morir

Uno de los grandes errores de la programación orientada a objetos (OOP) con Java ha sido la existencia de las referencias a NULL.
Esta es la causa del popular y formidable error “java.lang.NullpointerException”. Toda una embrarrada.
La existencia de este tipo de referencia es la causa de muchos dolores de cabeza, de muchísimo código innecesario y defensivo, de muchas malas prácticas y de una pésima filosofía de desarrollo.


martes, 9 de mayo de 2017

Historia de una conversa sobre OOP

Y luego de un largo rato volvemos por acá con una historia basada en hechos reales, sobre una conversación muy didáctica que tuve con un amigo:

-Mr. Bladi, he escuchado que Ud. se opone, es más desprecia, al uso de las clases Utilitarias y los métodos estáticos en la programación orientada a objetos (OOP).
-Ciertamente. No aconsejo su uso y lo considero una mala práctica, algo ofensivo en la OOP.
-Pero si no podemos usar clases utilitarias y métodos estáticos, ¿Cuáles opciones Tenemos?
-Tenemos unas cuantas opciones. Pero antes un poco de contexto. Las clases utilitarias, esas que están repletas de métodos estáticos, no son objetos reales, son un recurso totalmente procedimental y rompen el principio de encapsulamiento en la OOP.
Peor aún, las clases utilitarias con su torrente de métodos estáticos, son muy difíciles de testear en las pruebas automáticas. 

TODO MÉTODO ESTÁTICO, E INCLUSO LOS PRIVADOS, SON CANDIDATOS PARA UNA NUEVA CLASE, es decir son elegibles para una nueva abstracción.