2006/11/11, Chiara <[EMAIL PROTECTED]>:


En VW también tenes ese mecanismo, pero el hecho de hacer a la
instancia inmutable también estaría metiendo "ruido" en mi código, sin
contar el hecho de que cada vez que se modifique una var de instancia
se estaría levantando una excepción y debería manejarla, cosa que no
se cuanto afectaría a la performance.

Justamente esto esta para quitar ruido en el codigo y evitar el envio del #markDity. Por lo general mantenemos estado en nuestros objetos que al ser modificados indican que el objeto cambio, es poco común que el cambio de una instVar no signifique lo contrario, salvo que estes cacheando cosas y la verdad que por perfomance en VW yo no la tendria en cuenta hasta que no vea el problema (siempre teniendo en cuenta las buenas practicas en Smalltalk).

El manejo por la excepcion no deberia traer aparejada una perdida de perfomance, es mas, en algunos casos (que ahora no recuerdo!! ja!) hemos visto un mejor desempeño usando Excepciones y quitando condicionales, cosa de locos. De todas formas si buscas un poco supongo que podrias evitar usar la excepcion.

Pero, lo principal es pensar si tu sistema esta continuamente modificando el estado de los objetos!! cosa rarisima, no se me ocurre un objeto que necesite ser persistido en una base [de datos] y se este modificando continuamente mientras esta en memoria, por eso yo descartaria problemas de perfomance. SI es tu caso quizas deberias refactorizar para implementar parte persistente y otra parte no persistente, tipo un Strategy, ojo estoy tratando de imaginar remotamente una situación!!! creo que me entendes.

Saludos
  GallegO

--~--~---------~--~----~------------~-------~--~----~
  Ha recibido este mensaje porque está 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íe un mensaje a [EMAIL PROTECTED]
 Para obtener más opciones, visita este grupo en http://groups-beta.google.com/group/clubSmalltalk?hl=es.
-~----------~----~----~----~------~----~------~--~---

Responder a