Advanced Topics
📄️ Browser Console
Utiliser la console du navigateur pour imprimer des informations précieuses sur le programme est une partie intégrante du processus de développement. La classe utilitaire BrowserConsole offre de nombreuses fonctionnalités pour améliorer les capacités de journalisation.
📄️ Lifecycle Listeners
L'interface AppLifecycleListener permet à du code externe d'observer et de réagir aux événements du cycle de vie de l'application. En implémentant cette interface, vous pouvez exécuter du code à des moments spécifiques durant le démarrage et l'arrêt de l'application sans modifier la classe App elle-même.
📄️ Web Storage
Stockage web est un concept fondamental en développement web qui permet aux sites web de stocker des données côté client. Cela permet aux applications web d'enregistrer l'état, les préférences et d'autres informations localement sur le navigateur de l'utilisateur. Le stockage web fournit un moyen de conserver les données entre les recharges de page et les sessions de navigateur, réduisant ainsi la nécessité de requêtes répétées vers le serveur et permettant des capacités hors ligne.
📄️ Locale Management
webforJ offre un support intégré pour la gestion des paramètres régionaux de l'application. Le paramètre régional détermine quelle langue et quel formatage régional sont utilisés dans toute l'application. Les composants peuvent réagir aux changements de paramètres régionaux grâce à l'interface LocaleObserver, permettant à l'interface utilisateur de se mettre à jour immédiatement lorsque l'utilisateur change de langue.
📄️ Translation
webforJ inclut un système de traduction intégré pour rechercher des chaînes localisées par clé. Le système se compose d'un résolveur de traduction qui associe les clés à des textes localisés, d'une interface de préoccupation HasTranslation qui fournit une méthode pratique t(), App.getTranslation() pour un accès direct partout, la détection automatique de la langue à partir du navigateur, et un support pour des sources de traduction personnalisées telles que des bases de données.
📄️ Interval
La classe Interval représente un minuteur qui déclenche un événement avec un délai fixe entre chaque déclenchement.
📄️ Browser History
La classe BrowserHistory dans webforJ fournit une API de haut niveau pour interagir avec l'historique du navigateur. L'historique du navigateur permet aux applications web de suivre la navigation de l'utilisateur au sein de l'application. En tirant parti de l'historique du navigateur, les développeurs peuvent activer des fonctionnalités comme la navigation arrière et avant, la préservation de l'état et la gestion dynamique des URL sans nécessiter de rechargements de page complets.
📄️ Debouncing
Le débouncing est une technique qui retarde l'exécution d'une action jusqu'à ce qu'un certain temps se soit écoulé depuis le dernier appel. Chaque nouvel appel réinitialise le timer. Cela est utile pour des scénarios comme la recherche au fur et à mesure que vous tapez, où vous voulez attendre que l'utilisateur cesse de taper avant d'exécuter une requête de recherche.
📄️ Error Handling
La gestion des erreurs est un aspect crucial du développement d'applications web robustes. Dans webforJ, la gestion des erreurs est conçue pour être flexible et personnalisable, permettant aux développeurs de gérer les exceptions de la manière qui correspond le mieux aux besoins de leur application.
📄️ Namespaces
Les espaces de noms dans webforJ fournissent un mécanisme pour stocker et récupérer des données partagées à travers différents contextes dans une application web. Ils permettent la communication de données entre composants et entre sessions sans dépendre de techniques de stockage traditionnelles comme les attributs de session ou les champs statiques. Cette abstraction permet aux développeurs d'encapsuler et d'accéder à l'état de manière contrôlée et sécurisée par les threads. Les espaces de noms sont idéaux pour construire des outils de collaboration multi-utilisateurs ou simplement maintenir des paramètres globaux cohérents, et vous permettent de coordonner des données en toute sécurité et efficacement.
📄️ Terminate and Error Actions
Lors du développement d'applications avec webforJ, il est essentiel de définir le comportement de votre application lorsqu'elle se termine ou rencontre une erreur. Le framework fournit des mécanismes pour personnaliser ces comportements via des actions terminate et error.
📄️ View Transitions
Les transitions de vue fournissent des transitions animées lorsque le DOM change, réduisant le choc visuel et maintenant le contexte spatial lors de la navigation ou des mises à jour de contenu. webforJ s'intègre à l'API de transition de vue du navigateur pour gérer la complexité de la coordination des animations entre les anciens et les nouveaux états.
📄️ Object and String Tables
L'ObjectTable, le SessionObjectTable et le StringTable fournissent un accès statique aux données partagées dans un environnement webforJ. Tous sont accessibles de n'importe où dans votre application et servent des objectifs différents :
📄️ Asynchronous Updates
L'API Environment.runLater() fournit un mécanisme pour mettre à jour en toute sécurité l'interface utilisateur à partir de threads d'arrière-plan dans les applications webforJ. Cette fonctionnalité expérimentale permet des opérations asynchrones tout en maintenant la sécurité des threads pour les modifications de l'interface utilisateur.
🗃️ Dépôt
3 articles
📄️ Route Registry Provider
Le RouteRegistryProvider est une Interface de Fournisseur de Services (SPI) qui permet aux frameworks d'intégration de fournir des mécanismes de découverte de routes personnalisés. Cela permet aux frameworks d'intégrer leur propre système de recherche sur le classpath et de gestion des dépendances avec l'infrastructure de routage de webforJ.