Advanced Topics
📄️ Error Handling
El manejo de errores es un aspecto crucial del desarrollo de aplicaciones web confiables. En webforJ, el manejo de errores está diseñado para ser flexible y personalizable, permitiendo a los desarrolladores gestionar excepciones de la manera que mejor se adapte a las necesidades de su aplicación.
📄️ Lifecycle Listeners
La interfaz AppLifecycleListener permite que el código externo observe y responda a los eventos del ciclo de vida de la aplicación. Al implementar esta interfaz, puedes ejecutar código en momentos específicos durante el inicio y apagado de la aplicación sin modificar la clase App.
📄️ Web Storage
El almacenamiento web es un concepto fundamental en el desarrollo web que permite a los sitios web almacenar datos en el lado del cliente. Esto permite que las aplicaciones web guarden el estado, las preferencias y otra información localmente en el navegador del usuario. El almacenamiento web proporciona una manera de persistir datos a través de recargas de página y sesiones de navegador, reduciendo la necesidad de solicitudes repetidas al servidor y habilitando capacidades fuera de línea.
📄️ Locale Management
webforJ ofrece soporte integrado para gestionar la localización de la aplicación. La localización determina qué idioma y formato regional se utiliza en toda la aplicación. Los componentes pueden reaccionar a los cambios de localización a través de la interfaz LocaleObserver, lo que permite que la interfaz de usuario se actualice inmediatamente cuando el usuario cambia de idioma.
📄️ Translation
webforJ incluye un sistema de traducción incorporado para buscar cadenas localizadas por clave. El sistema consta de un resolvedor de traducciones que mapea claves a texto localizado, una interfaz de preocupación HasTranslation que proporciona un conveniente método t(), App.getTranslation() para acceso directo en cualquier lugar, detección automática de la configuración regional desde el navegador y soporte para fuentes de traducción personalizadas, como bases de datos.
📄️ Browser Console
Usar la consola del navegador para imprimir información del programa es una parte integral del proceso de desarrollo. La clase utilitaria BrowserConsole proporciona características que mejoran las capacidades de registro a través de tipos de registro y estilos.
📄️ MaskDecorator
MaskDecorator es una clase de utilidad estática para aplicar máscaras a cadenas, números, fechas y horas fuera de un campo de entrada. Utiliza la misma sintaxis de máscara que los componentes de campo enmascarados de webforJ, lo que hace que sea sencillo formatear y analizar valores de manera consistente, ya sea en una etiqueta de visualización, un renderizador de Tabla o cualquier otra ubicación en tu aplicación.
📄️ Interval
La clase Interval representa un temporizador que activa un evento con un retraso de tiempo fijo entre cada activación.
📄️ Debouncing
El rebote (debouncing) es una técnica que retrasa la ejecución de una acción hasta que ha transcurrido un tiempo específico desde la última llamada. Cada nueva llamada reinicia el temporizador. Esto es útil para escenarios como la búsqueda mientras se escribe, donde deseas esperar a que el usuario deje de escribir antes de ejecutar una consulta de búsqueda.
📄️ Browser History
La clase BrowserHistory en webforJ proporciona una API de alto nivel para interactuar con el historial del navegador. El historial del navegador permite que las aplicaciones web realicen un seguimiento de la navegación del usuario dentro de la aplicación. Al utilizar el historial del navegador, los desarrolladores pueden habilitar funciones como la navegación hacia atrás y hacia adelante, la preservación del estado y la gestión dinámica de URL sin requerir recargas completas de página.
📄️ Namespaces
Share thread-safe key-value state across sessions, thread groups, or the entire JVM using Private, Group, and Global namespaces.
📄️ Terminate and Error Actions
Al desarrollar aplicaciones con webforJ, es esencial definir cómo se comporta tu aplicación cuando termina o encuentra un error. El marco proporciona mecanismos para personalizar estos comportamientos a través de acciones de terminate y error.
📄️ View Transitions
Las transiciones de vista proporcionan transiciones animadas cuando el DOM cambia, reduciendo el desajuste visual y manteniendo el contexto espacial durante la navegación o actualizaciones de contenido. webforJ se integra con la API de Transición de Vista del navegador para manejar la complejidad de coordinar animaciones entre los estados antiguos y nuevos.
📄️ Object and String Tables
La ObjectTable, SessionObjectTable y StringTable proporcionan acceso estático a datos compartidos en un entorno webforJ. Todos son accesibles desde cualquier parte de su aplicación y sirven diferentes propósitos:
🗃️ Repositorio
3 artículos
📄️ Asynchronous Updates
La API Environment.runLater() proporciona un mecanismo para actualizar de manera segura la interfaz de usuario desde hilos de fondo en aplicaciones webforJ. Esta característica experimental permite operaciones asincrónicas mientras se mantiene la seguridad de los hilos para las modificaciones de la interfaz de usuario.
📄️ Route Registry Provider
El RouteRegistryProvider es una Interfaz de Proveedor de Servicio (SPI) que permite a los marcos de integración proporcionar mecanismos personalizados de descubrimiento de rutas. Esto permite que los marcos integren su propio escaneo de classpath y sistemas de inyección de dependencias con la infraestructura de enrutamiento de webforJ.