Implementation est un terme anglais. Les termes français ne sont que très rarement utilisés, la traduction littérale étant "implantation", et de meilleures traductions étant "mise en oeuvre", "réalisation" ou, par abus de langage, "développement" qui normalement désigne l'activité de production logicielle en générale et ne recouvre pas que la discipline d'implémentation.

Besoin

Traduire une conception en un langage exécutable par une machine.

Analyse

L'implémenteur (ou "développeur") traduit la conception (notamment exprimée à l'aide d'un formalisme UML par exemple) en algorithmes manipulant des structures de données algorithm + data structures = programs - Niklaus Wirth, à travers un code source écrit dans un langage donné.

Ce code source est ensuite traduit à son tour en code machine compréhensible par la couche plus primitive/matérielle, soit :

  • via un compilateur, le traduisant en
    • virtuelle (JVM par exemple)
    • réelle (Pentium 4 par exemple)
  • via un interpréteur (JavaScript, BASIC par exemple) qui le traduit en direct

Conception

Il existe différents paradigmes de programmation, qui ne sont pas tous exclusifs (i.e. certains peuvent être utilisés dans d'autres) :

  • Impérative qui consiste à donner des ordres à la machine (fait ceci, affecte telle valeur à telle variable, si ceci alors cela, boucle tant que, etc.).
  • POO (classe, composant, prototype)
  • Déclarative (descriptive, fonctionnelle, logique ou par contraintes)
  • autres (événementielle, réactive, etc.)

Test

L'activité d'implémentation nécessite toujours des sous-activités régulières de mise-au-point permettant de tracer et corriger les erreurs d'implémentation (debugging).

Notes

  • Généralement réalisée à l'aide d'un EDI
  • Existent également des décompilateurs, capables de générer un code source à partir d'un code machine (Jad par exemple)