Hace unos días cuando les aclaraba unas dudas a unos estudiantes hice alusión a dos tipos de objetos tal vez no muy “difundidos” (al menos por la terminología): “objetos duros” y “objetos blandos”. Unos minutos después se me acercó un profesor muy estimado por mí a hacerme la pregunta de qué significaba en realidad aquello de “objetos duros” y “objetos blandos” y me aconsejó (en un marcado tono jodedor) que me cuidara de la dureza de los mismos no fuera a ser que alguno se escapara de la computadora y me golpeara.

Hasta ahí la broma, pero considero necesario aclarar los términos. Esa propiedad atribuida a los objetos en general tiene su origen en mi época de estudiante universitario mi tutor nos diferenciaba los objetos construidos en ambientes de desarrollo como Borland Delphi, Microsoft Visual Studio (C++, J++), etc. y los construidos con lenguajes scripts (JavaScript, PHP, Phyton, etc.) como objetos “duros” y “blandos” respectivamente.

Una vez aclarado su origen les comento que siguió utilizándose por los miembros del grupo de investigación y en este momento todavía se usa. Su significado no había sido cuestionado, pero nunca es tarde para definiciones formales. Cuando se construyen aplicaciones sobre la arquitectura N-capas (donde es muy común tener objetos en las páginas del servidor) es bueno tener una diferenciación entre los objetos de la capa intermedia (objetos del negocio o “duros”) y los encargados de guardar información proveniente de la base de datos (objetos “blandos”).

Espero que, si no se extiende esta terminología, al menos que los lectores de mi blog me comprendan una vez que me oigan hablando de “objetos duros” y “objetos blandos”. Y para mi amigo que no se preocupe que no va a tener que visitarme en un hospital por el golpe de un objeto.