Buscar en el Blog

sábado, 19 de diciembre de 2015

No Visual Objects: Objectos no Visuales



No Visual Objects: Objectos no Visuales
Un objeto no visual es un objeto que existe en su totalidad dentro de un mismo ámbito de aplicación. Las clases NVO contienen reglas de negocio que se reutilizan con frecuencia. NVO siempre será una herramienta muy importante para los desarrolladores de PowerBuilder. Su papel es fundamental para la toma de aplicaciones robustas y adaptables, incluso mini aplicaciones. Al crear un NVO, mantener el tamaño de la clase baja; esto ayudará a su rendimiento. Tendrá menos tiempo para cargar el NVO en la memoria y utilizar menos recursos al tiempo que ayuda ejecutar el resto de las secuencias de comandos.
Si han usado clases en otros lenguajes de programación, entonces no tendrán problema para entender la dinámica de los Custom Class.
Creando un Pb Object Custom Class

Seleccionamos la opción Custon Class, con esto ya tenemos nuestro espacio de trabaja listo para crear nuestra primera clase personalizada.


Declarando los atributos:
Para declarar los atributos, no iremos a la sección de “Declare Instance Variables”
 





Ahora ya podemos empezar a definir los atributos de nuestra clase, a la cual llamaremos NVO_PERSONA. Esta clase tendrá los siguientes atributos.
·         Nombres
·         Apellidos
·         Sueldo

 


 Ahora vamos por la declaración de nuestros métodos, los cuales serán funciones.
 

Clic derecho dentro de la lista de funciones y luego seleccionar Add


En la siguiente pantalla describiremos las secciones que se deben tener en cuenta para realizar nuestros métodos (funciones).


Access: Tipo de acceso a la función, la cual puede ser pública (por defecto) privada y protegida.
Return Type: tipo de dato devuelto por la función. Si la función no devuelve un valor, entonces se colocara como (None).
Function Name: Nombre de la función


Pass By value: El modo en el cual se pasan los parámetros a la función (value, reference o readonly)
Argument Type: tipo de dato de la función.
Argument Name: nombre del argumento.

Nota: Si la función no recibirá argumentos, se debe eliminar la fila de argumentos (Delete parameter).
Si se desean más parámetros, puede escoger entre Insert Parameter o Add Parameter.





Función getedad





Como podemos observar en la imagen la función no recibe ningún parámetro, pero si devuelve un valor.
 
Función setnombres



Como vemos en la imagen, la función recibe un parámetro y ese el valor de ese parámetro es asignado en la variable de instancia de la clase.




El paso final!!
Ahora usaremos nuestra clase creada.
Para esto creamos una ventana y en el apartado de instancia de variables, declaramos una variable llamada persona.



Ahora ya tenemos nuestra variable del tipo nvo_persona declarada, pero aún no está instanciada. La creación de la instancia la podemos colocar en el evento open de nuestra ventana.
persona= create nvo_persona



Agregamos dos botones, dos sle a nuestra ventana. Se ve muy rustico, pero es más que suficiente para la demostración.


 
Botón Set – evento click.
persona.setnombres( sle_nombre.text)

Botón get evento Click
sle_salida.text=persona.getnombres( )

En funcionamiento

 ¿Muy simple?
Esto es solo una muestra de cómo se pueden usar las clases no visuales de PowerBuilder. Si han programado en otros lenguajes, le podrán sacar provecho a esta característica con que también cuenta Power Builder.