La Façade

Version 1.0

Remerciements : Stefan Bertholon

Article lu   fois.

L'auteur

Site personnel

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

I. Synonyme

Frontal

II. Synopsis

Unifie et simplifie l'interface d'un sous-système cohérent et éventuellement autonome. Forme donc un point d'entrée simplifié dans une API. La façade permet en effet de limiter les points d'entrée d'une API, ce qui a comme effet bénéfique pour votre ensemble de classes, s'il est complexe, d'avoir une chance d'être utilisé.

Image non disponible
Image non disponible

III. Exploration

Lorsque vous développez un module, fonctionnel ou technique, les chances pour que l'interface de ce module soit importante sont grandes. En effet, si je considère ici l'interface comme étant l'ensemble des méthodes (et attributs) publics de toutes les classes présentes, et que l'on part sur un ensemble de 10 classes ayant chacune 5 méthodes publiques (petit module), on se retrouve avec la bagatelle de 50 méthodes à découvrir. L'architecture n'est pas lisible au premier coup d'oeil, il faut donc simplifier l'utilisation de votre API.

L'utilisation d'une façade qui transforme votre ensemble de classes en un composant facilite l'utilisation et donne du même coup une chance pour que vos efforts servent plusieurs fois et sans votre intervention. Elle vous donne également la chance de décrire le tout sous la forme d'un javabean (ou toute autre méthode de description de composants pour d'autres langages) et même facilite l'écriture d'un assistant.

IV. Structure

La structure est triviale et expliquée dans le schéma précédent, inutile de répéter. Je vous donne exceptionnellement un exemple d'utilisation sous la forme d'un diagramme de séquences dans cette rubrique, je pense que ce sera plus parlant.

Image non disponible

V. Implémentation

Là encore, j'ai l'impression que le pattern mérite d'être connu, mais qu'il est très simple à comprendre. Du coup, je ne pense pas qu'il soit nécessaire de vous présenter une implémentation de celui-ci. Néanmoins, si je reçois de nombreux messages privés pour qu'une implémentation soit présentée, je le ferais quand même.

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

  

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2013 Sébastien MERIC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.