Synthèse des rôles de programmation

images/whitebelt.png

Etant basée sur des "composants" une exécution de code JAVA implique la collaboration (éventuellement dynamique) de codes de diverses origines.

On peut distinguer différents rôles de programmeurs:

Dans la mesure où ces personnes ne se connaissent pas nécessairement et n’ont pas forcément une coordination parfaite (pensez toujours à la dualité programmeur réalisant, programmeur appelant), ils doivent produire des codes qui:

image: schema d’une classe

Ce qui est décrit ici relève essentiellement des prestations rendus par les instances de la classe.

Les types définis par l’utilisateur sont presque toujours plus sophistiqués que de simples data objects.

Pour revenir aux rôles de programmeurs on pourra noter qu’en fait le programmeur d’application peut être amené à agir avec des approches et des outils analogues à ceux qu’utilisent les programmeurs de déploiement. En effet une application peut être enrichie a posteriori par des codes qui peuvent être "branchés" sur une application existante (plug-in). Nous allons voir que certaines fonctionnalités peuvent être définies dans leur principe par un programmeur puis réalisées de diverses manières par d’autres. Nous verrons ultérieurement des notions d'interface et de service qui permettent ces architectures ouvertes.