Extrait du cours analyse et conception
Diagramme de classes :
Interface
Encapsulation
• [Parnas72] information hiding
– The secrets of a module: Design decisions that can be changed without affecting any other module
– The assembly of a system made of modules is usually best done if the interfaces are simple and well-understood by all involved
Interface (définitions)
• imagée : c’est la partie émergée de l’iceberg.
• d’un objet (exécution) : un ensemble de messages compris par un objet.
• d’une classe (conception) : l’interface d’une classe fournit sa vue externe : on augmente l’abstraction en cachant la structure et les secrets du comportement de la classe.
• UML : an interface is a kind of classifier that represents a declaration of a set of coherent public features and obligations. An interface specifies a contract; any instance of a classifier that realizes the interface must fulfill that contract.
Notion d’interface
• Les interfaces déclarent des opérations (et des propriétés*) publiques offertes par une classe
• Déclaration => elles ne sont pas instanciables !
• ≈ classes abstraites pour lesquelles toutes les opérations sont abstraites
• Une classe qui réalise une interface doit présenter les méthodes publiques qui se conforment à la spécification de l’interface
• Une classe peut posséder plusieurs interfaces (regroupement de services liés)
……
Cours UML: Analyse et conception (576 KO) (Cours PDF)