Ver Mensaje Individual
  #10  
Antiguo 31-10-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Reputación: 31
Lepe Va por buen camino
Reconozco que al verlo por primera vez impresiona un poquito, veamos el concepto, y así de camino sirve para otros foristas:
Código Delphi [-]
 property Param1:string read Fparam1 write Fparam1;

¿Qué es FParam1?
Simplemente una variable privada del mismo tipo de datos que Param1. Se podría decir que es una "Copia de seguridad" de la propiedad.

¿Por qué se llama FParam1?, es un estándar, a todos los campos (Fields) que son privados de una clase, se le añade la letra "F" al principio.

¿Por qué no hacerlo así:
Código Delphi [-]
public
  Param1:string;
Porque si tenemos que modificar la clase por otros detalles, estamos utilizando la variable pública Param1, y puede incluso que necesitemos cambiar el tipo de datos, esto supone que los programas que usan esa clase también necesitan modificarse. Esto es una onda expansiva, igual que tirar una piedra en el lago, las modificaciones se van propagando y al final necesitas rehacer todo el programa.

Al usar una variable pública y otra privada, se pueden hacer cambios en el interior de la clase y no modificar la variable pública. No hay onda expansiva .

Código Delphi [-]
// desde fuera de la clase, hacemos uso de ella:
ShowMessage(Form1.Param1)
Con esa linea estamos leyendo (read) el valor de Param1, en realidad delphi, lee el valor de la variable FParam1.

Código Delphi [-]
// desde fuera de la clase, hacemos uso de ella:
 Form1.Param1 := 'hola mundo';
En este caso estamos escribiendo (write) en la variable, por tanto delphi asignará a FParam1, el valor 'hola mundo'.

La otra variante que lleva dos procedimientos, es exactamente igual, solo que ahora en lugar de leer de una variable privada, se ejecuta una función (GetParam1) que devuelve un string. También al tiempo de asignar una variable, se usa un procedimiento (SetParam).

"Get" y "Set" también es un estándar, son prefijos que siempre se añaden para hacer más legible el código.


Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.

Última edición por Lepe fecha: 31-10-2006 a las 11:03:47.
Responder Con Cita