Exacto Pablo, una sola instancia, dos referencias a esa instancia.

Daniel
PD: Que tiene que ver con lo anterior??  :))

El día 11/09/07, Pablo A. Allois <[EMAIL PROTECTED]> escribió:
>
>  dim a as object
> dim b as object
>
> a = new object
> b = a
>
> Hay una sola instancia.
> Pero hay dos variables guardando punteros a la misma instancia .. no ?
>
>  ------------------------------
> *De:* [email protected] [mailto:[EMAIL PROTECTED] *En nombre de *Fernando
> Tubio
> *Enviado el:* Martes, 11 de Septiembre de 2007 10:10 a.m.
> *Para:* [email protected]
> *Asunto:* [puntonet] Proclama para salvar instancias
>
>  Esto es incorrecto, se trata siempre de una misma referencia. Usar la
> misma variable, u otra que contenga una referencia al mismo objeto, varias
> veces para acceder a distintas propiedades del objeto al cual hace
> referencia dicha variable, no involucra la creación de nuevos objetos
> o algún tipo de ineficiencia. En el caso que describís, "Texto1" contiene
> una referencia a un objeto que ya fue creado previamente.
>
> Saludos,
>
> Fernando Tubio
>
> ----- Original Message -----
>
> *From:* Gastón Dorigo <[EMAIL PROTECTED]>
> *To:* [email protected]
> *Sent:* Monday, September 10, 2007 3:09 PM
> *Subject:* [puntonet] Proclama para salvar instancias
>
>  *Gracias por tu observación, ahora que hago un poco más de memoria,
> recuerdo que el concepto era la siguiente.*
>
> * *
>
> *El el caso de *
>
> *Texto1.text = "Hola" el procesador crea una referencia al objeto y lee el
> atributo*
>
> *Si luego agrego *
>
> *Texto1.tag = 0 el procesador vuelve a crear otra instancia de texto1 para
> leer el atributo tag*
>
> *En cambio con with // end with el procesador crea una única instancia y
> accede a la misma para todos los atributos/metodos/eventos que se invoquen
> en el bloque.*
>
> * *
>
> *Espero sus comentarios*
>
> *Saludos …*
>
> * *
>  ------------------------------
>
> *De:* [email protected] [mailto:[EMAIL PROTECTED] *En nombre de *Juan
> Granillo
> *Enviado el:* Lunes, 10 de Septiembre de 2007 11:22 a.m.
> *Para:* [email protected]
> *Asunto:* [puntonet] Proclama para salvar instancias
>
>
>
> Hola Gaston,
>
>
>
> Recuerdo bien esa charla de seara en el Heraton. Mas alla de quedar un
> poco mas prolijo, la ventaja principal es que el procesador mantiene la
> referencia al objeto "a mano" (si me permiten la expresion), y no necesita
> buscarla para la ejecucion de cada metodo.
>
> Saludos
>
>
>
> Juan
>
>
>
> -----Mensaje original-----
> *De:* [email protected] [mailto:[EMAIL PROTECTED] nombre de *Gastón
> Dorigo
> *Enviado el:* viernes, 07 de septiembre de 2007 18:36
> *Para:* [email protected]
> *Asunto:* [puntonet] Proclama para salvar instancias
>
> *Muy buena la idea de la proclama, me sumo con una consulta:*
>
> *Hace un tiempo en un evento en el Hotel Sheraton, Daniel Seara explicaba
> las ventajas de utilizar el bloque with / end with, por ejemplo*
>
> * *
>
> *WITH textbox1*
>
> *        .text = "texto"*
>
> *        .tag = 0*
>
> *        . etc…*
>
> * END WITH*
>
> * *
>
> *La consulta es porque no recuerdo ni puedo deducir cuales son los motivos
> que validan esta afirmación, si alguien recuerda o me puede ayudar a deducir
> una justificación válida se lo agradecería porque varios alumnos me lo han
> consultado y todavía estoy buscando una respuesta razonable.*
>
> * *
>
> *Saludos.*
>
> * *
>  ------------------------------
>
> *De:* [email protected] [mailto:[EMAIL PROTECTED] *En nombre de *Damián
> Herrera
> *Enviado el:* Viernes, 07 de Septiembre de 2007 06:01 p.m.
> *Para:* [email protected]
> *Asunto:* [puntonet] Proclama para salvar instancias
>
>
>
> Ya que estamos, yo también me sumo a la  proclama!!!
>
>
>
> Por todos los medios posibles evitar la siguiente estructura de código:
>
>
>
> Try
>
>     ...
>
>     ...
>
> Catch ex As Exception
>
>     Throw(ex)
>
>     ...
>
> End try
>
>
>
> Esto es lo mismo que no capturar el error, en lugar de hacer esto no hagan
> nada! Se van a ahorrar tiempo de procesamiento :) Si no, asegurense de
> hacer los rollbacks o cancelar la operación antes de la línea "Throw(ex)".
>
>
>
>
>
> Feliz fin de semana!
>
> Damián Herrera
>
>  ------------------------------
>
> *From:* [email protected] [mailto:[EMAIL PROTECTED] *On Behalf Of *Diego
> Jancic
> *Sent:* Friday, September 07, 2007 5:44 PM
> *To:* [email protected]
> *Subject:* [puntonet] Proclama para salvar instancias
>
> Hola gente!,
>
>
>
> Estoy modificando un programa que hicieron muchos programadores (incluidos
> semi-seniors y seniors), y me canse de ver algunas cosas sin sentido.
>
> Por ese motivo estoy realizando esta proclama general, para que si alguien
> lo hace, lo evite la proxima vez. ;-)
>
>
>
> Cuando tenemos un codigo de este estilo:
>
> * *
>
> *MiClase instancia = new MiClase();*
>
> * *
>
> *instancia = UnServicio.ObtenerDesdeBD( … );*
>
>
>
> En ese caso, se estan creando 2 objetos cuando se deberia crear uno…
> Fijense que la 2da linea sobrescribe completamente la primera!!
>
> Y para agravar el problema, el metodo *UnServicio.ObtenerDesdeBD*  hace
> algo con el parecido pero llamando a la base de datos o a un WS o a donde
> sea.
>
> Entonces se termina creando una instancia por capa, cuando en realidad se
> necesita una sola (o ninguna si el metodo devuelve null)
>
>
>
> Espero haberles ahorrado aunque sea 1 segundo de procesamiento en todo el
> tiempo de vida de su aplicación.
>
>
>
> Bueno, esto fue una pequeña contribución a todos ellos que por costumbre
> repiten estas cosas desde hace mucho tiempo (*ojo, hace bastante yo
> tambien lo hacia!*).
>
>
>
> Saludos y Happy Programming!,
>
> Diego
>
>
>
> __________ Información de NOD32, revisión 2513 (20070907) __________
>
> Este mensaje ha sido analizado con NOD32 antivirus system
> http://www.nod32.com
>
>
>
> __________ Información de NOD32, revisión 2519 (20070910) __________
>
> Este mensaje ha sido analizado con NOD32 antivirus system
> http://www.nod32.com
>
>


-- 
Daniel A. Calvin
Cooperator Team Member
http://www.cooperator.com.ar
Microsoft Certified Professional

Responder a