Les pages JSP : une approche orientée composants
CHAPITRE 5 3
ainsi remplacer cet appareil par un nouveau modèle plus performant, et ce sans qu’il doive
reconstruire toute la maison. La normalisation des environnements et des méthodes de
conception a permis d’obtenir des systèmes souples, faciles à maintenir. Les composants logi-
ciels ont été conçus pour opérer dans ces environnements spécifiques. L’existence de règles
prédéfinies qui régissent leur interaction avec les autres composants augmente d’autant leur
interchangeabilité.
Développement de composants
En général, une application basée sur des composants fait intervenir une combinaison de
composants génériques et de composants spécifiques aux besoins de l’application. Les avan-
tages de la réutilisation des composants se font sentir, non seulement parce que différentes
applications peuvent partager des composants, mais également parce qu’ils peuvent être réuti-
lisés, par la même application ou par des applications différentes.
Considérons par exemple une application bancaire qui compte plusieurs interfaces client, un
module d’accès aux employés et une console d’administration. Chacun de ces modules peut
recourir à un même composant, commun, pour accéder à toutes les données nécessaires à
l’affichage d’un compte bancaire. Si ce composant est suffisamment bien conçu, avec toute
l’anticipation nécessaire, il peut être développé de façon à servir dans toute application de
gestion financière.
Une fois que le composant est conçu, son concepteur peut dans une certaine mesure en modi-
fier le fonctionnement interne sans qu’il doive en prévenir tous ses utilisateurs. Pour parvenir
à un tel niveau d’abstraction, il faut définir une interface qui protège l’application des détails
d’implémentation du composant.
1.3. Conception de composants pour les projets web
L’approche par composants est tout indiquée pour la conception d’applications web. Les JSP
offrent désormais aux concepteurs web les principes de conception orientée composant que
les développeurs de logiciels traditionnels avaient toujours utilisés. Il n’est désormais plus
nécessaire d’intégrer directement une logique complexe dans les pages au moyen de scripts ni
de développer le contenu de la page dans une logique de programmation; les concepteurs
peuvent plus simplement utiliser un format de page HTML autour des composants. En outre,
la propriété de réutilisation des composants minimise le temps consacré au développement et
fait que les projets sont moins complexes.
La séparation de la logique applicative du format de présentation est devenue indispensable
pour les sociétés de développements web, dans lesquelles les équipes sont organisées autour
de membres qui ont des compétences complémentaires, à savoir en général des développeurs
d’application et des développeurs web. Les premiers possèdent un savoir-faire dans des tâches
telles que les échanges d’informations avec une base de données et l’optimisation du code du
serveur en vue d’améliorer les performances, tandis que les seconds sont plus à même de
résoudre les problèmes de présentation (conception d’interface, format du contenu des pages,
etc.). Dans un projet de développement web par composants, les développeurs d’applications
peuvent se concentrer sur la conception des composants qui renferment la logique applicative
et les développeurs web peuvent quant à eux construire l’application autour de ces compo-
sants, en mettant l’accent sur la présentation. Comme l’illustre la figure 5-2, il est clair que le