Introduction
Au sens de la syntaxe du langage Java, une interface Java ne se limite pas aux opérations ; elles peut comporter des
membres Interface, Classe ou Zone Java. Les interfaces Java sont donc modélisées comme des classes affectées du
stéréotype <<JavaInterface>>.
Lorsque le développement est effectué en Java ou en J2EE, l'interface UML ne comporte aucun mappage direct à une
construction de langage.
Interfaces avec conception Java
Même si les interfaces UML ne sont pas mappées à une construction de langage en Java ou J2EE, il peut arriver que le
concepteur souhaite les utiliser. Parmi les raisons possibles :
-
Autres langages et technologies potentiellement ciblés
-
Expression de l'idée qu'une interface sera utilisée, sans que la décision n'ait au préalable été prise quant à
l'utilisation du langage Java ou d'un certain type de classe d'accès ou déléguée
Si Java est le langage d'implémentation, vous préférerez peut-être utiliser des classes affectées du stéréotype
<<JavaInterface>> dans un modèle
de conception et non des interfaces UML. Le modèle de conception peut ainsi évoluer plus facilement et rester en
cohérence avec le modèle d'implémentation (reportez-vous à Concept : Mappage de la conception au code).
Notez que les classes affectées du stéréotype <<JavaInterface>> ne peuvent pas être représentées comme des
éléments contractuels à l'extérieur de sous-systèmes ou composants UML. Les interfaces exposées sont indiquées
comme des éléments visibles par la cible, appartenant à un sous-système ou comme des éléments visibles par la cible,
résidant sur un composant UML.
Interfaces avec conception d'EJB
Les interfaces EJB correspondent à des interfaces Java spécialisées. Leurs stéréotypes sont décrits dans Instructions : Identification d'Enterprise JavaBeans (EJB).
Pour modéliser des interfaces selon le degré de lien souhaité pour le mappage à une implémentation particulière, le
concepteur peut utiliser des interfaces UML, des classes affectées du stéréotype <<JavaInterface>> ou des
classes affectées de stéréotypes spécifiques aux EJB.
|