> > > Lo de cosificar y lo de objetivizar los conceptos del lenguaje que se > produce en smalltalk no es un principio filosofico sino que corresponde a un > nombre para algo que se produce en todos los lenguajes de programacion y que > simplementecae trata de uniformidad. >
En realidad yo cuando hablo de modelar "la realidad" justamente me refiero a eso, a transformar en objetos los conceptos y entidades del lenguaje, quizá la palabra "realidad" es la que presta a confusión (dado que por lo que veo su significado es muy discutido filosoficamente). Esto no necesariamente tiene que hacerse luego de subrayar palabras en los requerimientos (de hecho me parece una muy mala práctica). Esto puede hacerse de manera incremental a medida que uno va programando, modelando y descubriendo el dominio. Muchas veces también surgen objetos que no tienen que ver con el dominio que se está programando si no que tienen más que ver con el dominio "computacional", es decir, cuestiones implementativas (persistencia, transaccionalidad, seguridad, etc). Por otro lado, aprovecho a mencionarte algo de lo que comentaste en algún momento de Alan Kay sobre que la hubiese llamado programación orientada a mensajes (en lugar de objetos). Leí el artículo en donde menciona eso (si no me equivoco era una entrevista), en realidad él se refiere a que el verdadero poder de la programación con objetos está en late binding, y es algo que muchos lenguajes/programadores pierden de vista, especialmente cuando hablan de "llamadas a métodos" y no de objetos enviando mensajes. > > El 05-10-2010, a las 15:47, Nahuel Silva <[email protected]> > escribió: > > Hola, Carlos: > > Yo lo leí, altamente recomendable, pero para pocos, -square heads refrain-. > Del mismo palo, -de hecho de un maestro- recomiendo cualquiera de Osho -o en > su defecto satyam shivam sundram, acá traducido como "La pasión por lo > imposible" o al menos es uno muy parecido, hay uno muy bueno que se llama > "Zaratustra a god that can dance" excelente. > Creo que ninguno lo leyó, si no, no se harían estos planteos que > son sólo planteos de la mente que quiere y necesita hacer de todo un > objeto....que grande eckhart :). > > Dejen de pensar tanto. > > Saludos > > 2010/10/5 Guillermo Schwarz < <[email protected]> > [email protected]> > >> Opiniones son opiniones y desde ese punto de vista son todas respetables, >> sin embargo si el texto no es mas que citas no explicadas y comentarios >> como "leete este libro" quedamos en el mismo punto donde partimos, pero con >> la sensación de que es mucho mas difícil de lo que parece. >> >> Y si mas encima decimos "esto es muy complejo" es porque o no lo >> entendemos o no queremos que el interlocutor entienda. >> >> Haz la prueba de crear una aplicación utilizando la metodología de >> encontrar los sustantivos, de utilizar el has-a e is-a para encontrar las >> relacones entre las clases y vas a llegar a la conclusión de que el sistema >> esta mal modelado, muchos métodos inútiles y pocas clases que hacen todo y >> que cuesta poner a punto, con todo amarrado siendo imposible agregar mas >> funcionalidad posteriormente. >> >> La principal razón es que el software no existe para "modelar la realidad" >> (a menos que sea un software para predecir el clima), sino que intenta >> resolver uno o varios casos de uso de usuario (funcionalidades reales por la >> cuales el cliente esta dispuesto a pagar). Ese es el valor que el cliente y >> el usuario ven en el software, su comportamiento externo. >> >> Las jerarquías de clases son solamente formas de organizar el codigo >> internamente de manera de escribir la menor cantidad de código repetido >> posible. Existen otras técnicas para lograr lo mismo, por ejemplo las >> monadas en haskell. De hecho xmonad es un Window mánager heho en haskell y >> según dicen tiene menos líneas de código que cualquier otro window mánager. >> >> Se podría decir que si >> >> c = CPU del programador >> f = cantidad de funcionalidades >> R = líneas de código repetido >> T = líneas totales >> >> >> Entonces: >> >> C = f / TR >> >> Saludos, >> Guillermo Schwarz. >> >> El 05-10-2010, a las 14:48, Hernán Morales Durand <<[email protected]> >> [email protected]> escribió: >> >> >> El día 5 de octubre de 2010 04:43, Francisco Garau < <[email protected]> >>> [email protected]> escribió: >>> >>>> Hola Norberto, >>>> >>>> Muy bueno tu blog - me gusta mucho la claridad y profundidad con la >>>> que escribís. >>>> >>>> Las preguntas que a mi me quedan luego de leer tus artículos son: que >>>> es la realidad? como modelamos la realidad? si modelamos con objetos, >>>> somos objetivos? es posible ser objetivo? >>>> >>>> >>> Es un poco complicado encarar así el tema de la realidad. No hay que >>> olvidar que "realidad" es una palabra de uso ordinario y cargada de >>> ambiguedad. Este tema está lleno de sociologías y filosofías >>> subjetivistas, y se ha escrito tanto que uno puede pasar la vida >>> leyendo y no terminar jamás: la realidad física newtoniana fue >>> fantástica en su época, pero demostró ser inútil para la ciencia >>> contemporánea, y la realidad que pretenden explicar los físicos >>> teóricos o matemáticos son inútiles para los filósofos de la ciencia, >>> que a su vez formulan más conceptos inútiles para los metafísicos, >>> etc. Lamentablemente no hay forma de que uno se pueda saltar el >>> vocabulario filosófico (que toma años adquirir) para tratar estos >>> temas seriamente. >>> >>> Para responder estas preguntas en el mundo informático, me parece >>>> interesante ver como analiza un problema similar Christopher Alexander >>>> en su articulo "A city is not a tree" [1]. Para resumirlo, si >>>> analizamos la estructura de una ciudad, terminamos con una estructura >>>> de árbol o un reticulado? >>>> >>>> >>> Mmm no, Alexander no es el pensador más apropiado para preguntarse por >>> modelos cognitivos per se. Por ej. el trabajo del primer Alexander >>> (principios de los 60) tiene que ver con el capital social, su >>> pensamiento político y la sociedad de mercado democrática, la >>> participación activa de la ciudadanía, etc. En este sentido hay un >>> ensayo que se llama "The city as Mechanism for Sustaining Human >>> Contact" que está relacionado más con su proyecto y, de hecho, el >>> trabajo por el cual más se lo conoce "A pattern language" habla de >>> patrones que pueden generar formas de vivir en una ciudad, o sea, >>> diseño urbano humanista. El siempre está busca de patrones que forman >>> y transforman a la sociedad democrática, como influencia en sus >>> relaciones, como se intensifican de acuerdo a las necesidades de la >>> población y la estructura de los entornos en donde vive. >>> >>> Para un análisis más informático (¿conexionista?) de la realidad hay >>> otros autores más cercanos. >>> >>> Entiendo que Aristoteles se inclinaba mas a clasificar los objetos de >>>> la realidad con una estructura de árbol: es decir, una mesa ES una >>>> mesa y nada mas. >>>> >>>> >>> Y... es un poco más complicado que eso, aunque es otro tema que es un >>> clásico. Ya entender los primeros capítulos de las Categorías requiere >>> una introducción al vocabulario de Aristóteles, por ej. que significa >>> que una cosa esté "presente en un sujeto" (de lo que es predicable >>> pero nunca presente, de lo nunca predicable pero presente, de lo >>> predicable y presente y ni predicable ni presente, de qué significa >>> que esté presente, etc.), y cosas como el principio de discriminación >>> y univocidad. Es complicado :) >>> >>> Saludos, >>> >>> Hernán >>> >>> -- >>> To post to this group, send email to <[email protected]> >>> [email protected] >>> To unsubscribe from this group, send email to >>> <clubsmalltalk%[email protected]> >>> [email protected] >>> >>> <http://www.clubSmalltalk.org>http://www.clubSmalltalk.org >>> >> >> -- >> To post to this group, send email to <[email protected]> >> [email protected] >> To unsubscribe from this group, send email to >> <clubsmalltalk%[email protected]> >> [email protected] >> >> <http://www.clubSmalltalk.org>http://www.clubSmalltalk.org >> > > -- > To post to this group, send email to <[email protected]> > [email protected] > To unsubscribe from this group, send email to > <[email protected]> > [email protected] > > <http://www.clubSmalltalk.org>http://www.clubSmalltalk.org > > -- > To post to this group, send email to [email protected] > To unsubscribe from this group, send email to > [email protected]<clubsmalltalk%[email protected]> > > http://www.clubSmalltalk.org > -- To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] http://www.clubSmalltalk.org
