¡Los componentes ahora pueden publicar clases! Y aún mejor, si su aplicación aún está en modo binario, ahora puede beneficiarse de las clases y del desarrollo orientado a objetos utilizando un componente (en modo proyecto) para crear sus propias clases y utilizarlas desde su aplicación (basada en modo binario).
Un componente 4D es un conjunto de métodos y formularios. A partir de 4D v19 R5, es también un grupo de clases que representan una o más funcionalidades que pueden ser instaladas en diferentes aplicaciones. El sistema de finalización del editor de código y otros sistemas de ayuda han sido actualizados para dar soporte a las clases y métodos de sus componentes para que su codificación sea más fluida.
Espacio de nombres de los componentes
Puedes hacer que tus clases sean utilizables en tu proyecto anfitrión añadiendo un espacio de nombres en la configuración de tu componente cuando lo generas. Para las clases internas que quieras ocultar en tu proyecto anfitrión, sólo tienes que anteponer a sus nombres un guión bajo («_»).
Para evitar conflictos de nombres con las clases existentes en la base de datos del host, es necesario crear un espacio de nombres para su componente. En el almacén de clases, todas sus clases serán accesibles a través de este espacio de nombres:
Se han añadido nuevas opciones en la ventana de Configuración para que esto ocurra. Puedes definir el espacio de nombres para tu clase, y decidir si quieres generar el archivo de sintaxis para permitir el autocompletado cuando un desarrollador utilice tu componente:
Después de generar su componente como de costumbre, y ponerlo en su base de datos anfitriona, puede escribir este tipo de código para utilizar su clase:
var $class : cs.myComponent.Class1
$class:=cs.myComponent.Class1.new()
Completaciones y consejos
Cuando se compila, puede elegir activar la finalización y el prototipo que se muestra en la base del host configurando la opción Generar archivo de sintaxis para la finalización del código.
Si la opción está seleccionada, puede utilizar las clases y métodos de su componente con:
- Completar:
- Consejos:
- Y prototipo en la parte inferior de las ventanas del editor de código:
Eche un vistazo a la documentación para más información, y no dude en darnos su opinión en el foro de 4D.