Cours uml
La version finalisée, largement enrichie et corrigée de cette première ébauche de cours est parue, dans la collection Info+ chez les éditions Ellipses, sous le titre UML 2 - de l'apprentissage à la pratique (cours et exercices) (FNAC, amazon.fr)
[pic]
UML 2
Laurent AUDIBERT
Avant-propos
Les techniques de programmation n’ont cessé de progresser depuis l’époque de la programmation en langage binaire (cartes perforées, switch) à nos jours. Cette évolution a toujours été dictée par le besoin de concevoir et de maintenir des applications toujours plus complexes.
La programmation par cartes perforées, switch ou câblage (de 1800 à 1940) a ainsi fait place à des techniques plus évoluées, comme l’assembleur (1947), avec l’arrivée de l’ordinateur électronique né des besoins de la guerre. Des langages plus évolués ont ensuite vu le jour comme Fortran en 1956 ou Cobol en 1959. Jusque là, les techniques de programmation étaient basées sur le branchement conditionnel et inconditionnel (goto) rendant les programmes importants extrêmement difficiles à développer, à maîtriser et à maintenir.
La programmation structurée (Pascal en 1970, C en 1972, Modula et Ada en 1979, …) a alors vu le jour et permis de développer et de maintenir des applications toujours plus ambitieuses. L’algorithmique ne se suffisant plus à elle seule à la fin des années 1970, le génie logiciel est venu placer la méthodologie au cœur du développement logiciel. Des méthodes comme Merise (1978) se sont alors imposées.
La taille des applications ne cessant de croître, la programmation structurée a également rencontré ses limites, faisant alors place à la programmation orientée objet (Simula 67 en 1967, Smalltalk en 1976, C++ en 1982, Java en 1995, …). La technologie objet est donc la conséquence ultime de la modularisation dictée par la maîtrise de la conception et de la maintenance d’applications toujours plus complexes. Cette nouvelle technique de