Infrastructure de module
L'infrastructure de module permet la contribution d'extensions à différentes zones d'une page afin d'assurer une certaine souplesse, d'améliorer l'acquis utilisateur et d'optimiser les performances.
L'infrastructure de modularisation découple l'activation de la fonction à partir du code du thème lui-même. Les thèmes peuvent être développés plus facilement avec peu de connaissances détaillées sur la façon dont le code sous-jacent d'une fonction fonctionne. Des points logiques sont fournis où des modules peuvent ajouter des données à un thème lors de l'exécution et permettent d'optimiser ces contributions en les combinant, si possible. Plusieurs sources distantes disparates peuvent être combinées en une seule demande pour améliorer les performances.
Les fonctions d'un thème peuvent être activées et désactivées à l'aide d'un profil pour les configurer. Vous pouvez vous concentrer sur la conception de l'interface du thème sans vous soucier des détails assurant le bon fonctionnement des fonctions dans leur thème. Il est facile de désactiver les fonctions qui ne sont pas nécessaires dans un environnement et qui peuvent l'être dans un autre environnement. Par exemple, vous pouvez désactiver les capacités d'édition dans un environnement de portail de production alors qu'elles sont activées dans un environnement de développement. Le même code de thème peut être utilisé dans les deux environnements ; la seule variable est le profil d'inclusion de module.
Vous pouvez associer des dépendances à des fonctions dans les portlets et les profils. Les fonctions sont chargées automatiquement sur la page de manière agrégée. Il n'est pas nécessaire que votre profil contienne plus de modules que requis par les portlets. Votre profil peut être centré sur des fonctions de thème. Les modules requis uniquement par des portlets donnés peuvent être chargés par ces portlets. Les dépendances de portlet sont chargées indépendamment du profil. Si de nombreux portlets utilisent les mêmes fonctions sur un grand nombre de pages, vous pouvez ajouter cette fonction au profil afin d'optimiser les performances du cache. Si votre thème est basé sur HCL version 8.5 antérieure au groupe de correctifs CF03, vous devez activer cette fonction pour l'utiliser. Pour les thèmes basés sur HCL version 8.5 à un niveau correspondant ou ultérieur au groupe de correctifs CF03, cette fonction est activée par défaut.
Les modules sont des extensions enregistrées qui sont ensuite consommées par un profil de module. Chaque module est énuméré par les identificateurs uniques de modules. Il est possible qu'un module requiert d'autres modules pour permettre l'inclusion automatique du code nécessaire à une fonction particulière. Vous pouvez, par exemple, utiliser le Toolkit Dojo dans un module. Un module peut utiliser le Toolkit Dojo pour construire des widgets personnalisés. Pour séparer le code du module du code Dojo, ce module nécessite que des modules Dojo assurent le chargement du code dans la séquence appropriée. La dissociation du conditionnement du code de chaque module permet une meilleure serviçabilité.