In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Para los maestros de la oop

Foro público de Xailer en español
Responder
joseluis
Mensajes: 642
Registrado: Jue Sep 08, 2005 12:54 pm

Para los maestros de la oop

Mensaje por joseluis »

Hola,
Me estoy planteando hacer lo siguiente:
Un módulo .prg creado por mi.
CLASS miClase
DATA oFormulario

METHOD New()
METHOD MetodoDeMiClase()
ENDCLASS
METHOD New() CLASS miClase
::oFormulario := tMiFormulario():New( GetActiveForm() )
::oFormulario:ShowModal()
RETURN Self
METHOD MetodoDemiClase() CLASS miClase
MsgInfo("Metodo de MiClase")
RETURN NIL
Un formulario creado desde el IDE.
CLASS tMiFormulario FROM tForm
COMPONENT oBoton1
...
...
METHOD oBoton1Click( ... ) EXTERN miClase_MetodoDemiClase()
...
ENDCLASS
....
¿ Esta forma de 'redirigir' los métodos de una clase a otra hace que sea
más / menos / igual de eficiente el código ? ¿Hay alguna limitación?
Saludos y gracias,
José Luis Capel
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5718
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

Para los maestros de la oop

Mensaje por jfgimenez »

José Luis,
te acabo de contestar en privado a un tema relacionado con esto. Espero que
lo recibas.
> ¿ Esta forma de 'redirigir' los métodos de una clase a otra hace que sea
> más / menos / igual de eficiente el código ? ¿Hay alguna limitación?
No es ni más ni menos eficiente. De hecho, en Xailer lo hemos utilizado
varias veces.
Lo único que tienes que tener muy claro es exactamente lo que estás
haciendo, y que estás tratando con dos clases distintas. P.ej., no puedes
acceder a miembros de la clase que no estén presentes en ambas clases;
tienes que cuidar el ámbito de los miembros a los que accedas para evitar
errores, etc.
--
Un saludo,
José F. Giménez
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
Responder