martes, agosto 02, 2005

La magia del Smalltalk: Capítulo 5 - ¿Qué son los Objetos?

Es imposible, siendo argentino como soy, no caer en algún momento en la filosofía barata o en el psicoanálisis. A propósito, ¿Alguien save porqué hay tantos dentistas argentinos en España?.

Dicho lo dicho voy a intentar definir un poco los conceptos fundamentales de la OOP.

Hasta ahora me venía desentendiendo de casi cualquier situación comprometida contestando a cualquier pregunta del tipo:

¿Qué es xxx?
(Reemplace xxx por lo que quiera saber)

Con la clásica respuesta OOP:

xxx es un objeto.

El problema comienza en cuanto el interlocutor se cansa y nos pregunta:

¿Qué son los objetos?

Aclaremos que no valen las clásicas respuestas informáticas que dicen todas más o menos así:

"Un Objeto es una estructura de datos más los procedimientos para impactar sobre esos datos"

Esas respuestas nos dicen como se implementa, en una computadora, la idea de un objeto pero no nos dicen que son realmente los objetos. Se confunde, en esas definiciones, la idea con la implementación de las mismas.

Primero reflexionemos sobre como contestamos a preguntas del tipo:

¿Qué es un perro? ¿Qué es el amor? ¿Qué es el arroz?

Para contestar a esas preguntas, nos valemos de un concepto más abstracto y lo especializamos (lo refinamos) de alguna forma:

Un perro es un animal que ladra y puede morderte.
El amor es un sentimiento que no puede conocerse hasta que se siente.
El arroz
es un cereal con el cual, mi mamá, hace un arroz con leche increíble.


Veamos las definiciones en la Wikipedia:


Perro
El perro es un mamífero que pertenece a la familia Canidae, al igual que los lobos, zorros y coyotes.

Generalmente, el término 'perros' es utilizado para referirse a la raza doméstica (Canis familiaris), la cual se cree que desciende de un ancestro similar al lobo. Algunos científicos sostienen, sin embargo, que el perro es una subespecie de lobo, Canis lupus familiaris.

Arroz
El arroz (Oryza sativa) es una planta de la familia Poaceae, comestible que constituye la base de la dieta en Asia.
Su nutriente principal son los hidratos de carbono, algo de proteínas (7%) y en estado natural bastantes vitaminas y minerales que se suelen perder en gran proporción (hasta un -85% de vitaminas) con los procesos de refinado y pulido.

Amor
El amor es un afecto, sentimiento o emoción que hace desear el bien y la compañía de otro.



Siempre que definimos algo nos basamos en un concepto más abstracto y lo refinamos.

Ahora supongamos que tenemos que definir ese "algo", eso que tienen en común los perros, el arroz y el amor.

La verdad es que no tienen muchas cosas en común los perros, el arroz o el amor (o, al menos yo, no las veo) excepto que sabemos distinguirlos entre si.

No podemos definir Objeto si no hablamos de un Sujeto. No podemos hablar de un Observado si no hay un Observador. No se puede definir un termino sin el otro.

Entonces, siempre que hablamos de un Objeto estamos diciendo también que ese objeto existe porque hay alguien que lo observa, alguien que reflexiona sobre su existencia.

Al reconocer un objeto automáticamente estamos dibujando un límite, una frontera, entre ese objeto y el resto del universo. La tarea de encontrar objetos no es más que la de dibujar fronteras que den un poco de orden al todo.


[CONTINUARÁ...]

3 Comentarios:

At 2/8/05 18:04, Anonymous Anónimo said...

Me hace acordar a mis cursos de Filosofía I (sí, tuve eso en la Universidad). Qué es una cafetera? Si la cafetera está rota, deja de ser cafetera? O cómo sabemos que está rota? Acaso existe un ideal de "cafetera" que nos diga cómo debe ser? Ese ideal es el límite/frontera, entre la cafetera y el Universo? Cuando se pasa ese límite, se dice que está rota? Por qué "rota" y no otra cosa? Cómo distinguimos las cosas? Quién pone esas fronteras? El sujeto personal o el colectivo? La percepción, pertenece al ámbito público o privado?

VAYA TELA

 
At 8/8/05 09:04, Anonymous Anónimo said...

¡Qué sorpresa encontrar tu Blog, Diego!
Veo que sigues con las mismas ideas filosóficas; cuanto mal ha hecho el psicoanálisis en tu país. ;)

Y entrando al trapo... a mí siempre me han servido esas ideas de los objetos que vienen en los libros, no necesito saber la relación entre un plato de arroz, un perro sarnoso o la madre que los parió.
Claro está que, como excusa, le puedo hablar a mi jefe de la complejidad del Universo y que, cuando desarrollamos una aplicación, necesitamos abstraer el concepto de hombre y del "Yo" interno para que los objetos sean su fiel reflejo. Después de esto, él procede a darme más tiempo para el desarrollo y todos contentos. :D

 
At 9/8/05 11:56, Blogger Diego Gomez Deck said...

Yo sabía que reacciones iba a generar este post filosófico :-)

 

Publicar un comentario

<< Principal