Me gustaria que se dejen de lado la descalificación. La discución está por
demás interesante (por lo menos a mi me parece), no dejemos que se arruine.

Guillermo, a mi me parece que quiza tenemos definiciones distintas de las
cosas y eso trae mas confución. Según lo que decis que leiste en ese texto
habla de que la orientación a objetos es una farsa porque las clases tienen
ciertos problemas. Por ejemplo, segun entendi el problema que nombras ahi es
que te obligan a generalizar desde el principio, es decir, creas una clase
pero todavia no tenes las instancias! entonces estas generalizando sobre
algo que no tenes idea todavia (o tenes una idea vaga). OK
En primer lugar, un ambiente de objetos no tiene por que tener clases, no es
un requisito. En un ambiente de objetos los programas se defien a partir de
OBJETOS QUE COLABORAN ENVIANDOSE MENSAJES.
Por ejemplo,  Self es un ambiente de objetos sin clases, esta basado en
prototipos y delegación. Para crear un objeto se clona otro, no hay que
tener clases.
Sin embargo, independientemente de esto, no creo que el mecanismo de
subclasificación sea necesariamente tan malo como plantea ese texto. Cuando
un modelo va madurando, se pueden hacer generalizaciones y no esta mal. El
estar obligado a usar clases es quiza una incomodidad, pero no un
impedimento para hacer buenos diseños.
También hay que tener en cuenta que cuando hacemos una jerarquía, esa
jerarquía modela solo un punto de vista. Un punto de vista que nos es util
en el dominio que estamos manejando.
Cuando Aristoteles armo la primer jerarquía de los seres vivos (vertebrados
e invertebrados; peces, anfibios, reptiles, etc....) es mas que claro que
uso criterios en algún punto arbitrario para definir las diferentes clases.
Podría haberlos clasificado en función de como esta compuesto el tegido
cutaneo (mande fruta para dar un ejemplo). Pero para analizar ciertas cosas,
diferentes puntos de vista pueden ser utiles.

Con respecto a "OOP modela adecuadamente el mundo", me parece una frase
media vaga, OOP no modela el mundo. Uno puede utilizar un ambiente de
objetos para modelar parte de un dominio, y tratar de que eso que estamos
modelando refleje lo mas posible la porcion esa de la realidad en cuestión y
eso tiene varias ventajas. En primer lugar reduce el gap semantico
http://es.wikipedia.org/wiki/Intervalo_sem%C3%A1ntico y hace que dos
personas puedan entender y comunicar mejor, por lo tanto trabajar mas en
armonia. En segundo lugar, la complejidad de tu modelo siempre va a estar
atadada a la complejidad del dominio modelado y no deberia agregar mas
complejidad (algo que sucede en otros lenguajes).
Mucha gente cree que hay que modelar la realidad hasta el mas minimo
detalle. Eso, en primer lugar es imposible. Y en segundo lugar no es
necesario. Es como decir que si yo quiero calcular el tiempo que me llevaría
llegar a Mar del Plata, tenga que modelar el comportamiento del universo
entero y tener en cuenta todos los infinitos factores. Obviamente que puedo
utilizar un modelo acotado y simplificadisimo y me va a recontra servir para
el problema que quiero resolver. De eso se trata, hagamos modelos
simplificados y acotados, pero que reflejen lo mas posible lo que estamos
modelando!

Con respecto a lo que decia Alan Kay de que tendria que haberla llamado
orientacion a mensajes, Alan kay no se referia a eso, si no mas bien a que
el late binding es vital para la orientacion o objetos. Alan también dijo
que se sigue construyendo software como los egipcios las piramides, y se
referia a mucho de esto que estamos hablando.

Los principios de Smalltalk estan basados en todo esto también, te dejo un
texto de Dan Ingalls, principal arquitecto de Smalltalk-80:
http://users.ipa.net/~dwighth/smalltalk/byte_aug81/design_principles_behind_smalltalk.html
si tenes ganas lee principalmente la seccion "*Language*"

Conclusión, la clasificación no es el único mecanismo para compartir
comportamiento, pero tambien es util. Se podría combinar con otros como la
delegación y prototipos para etapas mas experimentales y de descubrimiento
del dominio.

Saludos.
Gabriel











2008/5/8 Esteban A. Maringolo <[EMAIL PROTECTED]>:

>
> 2008/5/8 Emilio Oca <[EMAIL PROTECTED]>:
> >
> >  On 5/7/08, Guillermo Schwarz <[EMAIL PROTECTED]> wrote:
> >  > Creoque tu ejemplo simplifica demasiado el asunto. No se trata de
> pensar en
> >  > cualquier cosa.
>
> >  Quizás mi error es pensar que entendés de los temas de los que hablás,
> >  esta frase me deja esa duda.
>
> Nadie resiste un archivo....
>
> <
> http://groups.google.com/group/clubSmalltalk/search?group=clubSmalltalk&q=Troll
> >
>
>
> --
> Esteban A. Maringolo
> [EMAIL PROTECTED]
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
Has recibido este mensaje porque estás suscrito a Grupo "ClubSmalltalk" de 
Grupos de Google.
 Si quieres publicar en este grupo, envía un mensaje de correo 
electrónico a [email protected]
 Para anular la suscripción a este grupo, envía un mensaje a [EMAIL PROTECTED]
 Para obtener más opciones, visita este grupo en 
http://groups.google.com/group/clubSmalltalk?hl=es.

-~----------~----~----~----~------~----~------~--~---

Responder a