Informatique et Sciences du Numérique au lycée : un pas plus loin/LANGAGES/Éléments de syntaxe et de sémantique/Structuration des programmes
Lorsque la spécification d'un logiciel est suffisamment ample, il est en général possible de la structurer en parties relativement indépendantes les unes des autres communiquant seulement au travers d'interfaces précisément définies. Les langages de programmation fournissent des outils pour refléter cette décomposition de la spécification et son réassemblage. Schématiquement, il est possible de structurer en s'appuyant sur la nature des données à manipuler ou sur les actions à effectuer. Le premier point de vue est celui qui a conduit aux notions de classes et d'objets, via la notion de type abstrait qui regroupe avec une structure de données ses outils de manipulation. Le second a conduit à la notion de module puis de foncteur. Ces deux approches sont maintenant offertes conjointement par de nombreux langages de programmation. Ce chapitre présente donc les modules et foncteurs, les classes et objets , ainsi que le chargement dynamique de code. Les notions de surcharge, coercion, sous-types, sérialisation-désérialisation sont également traitées.
Table des matières
[modifier | modifier le wikicode]Types abstraits en programmation