Présentation

Article

1 - CONCEPTS OBJETS DANS LE LANGAGE C++

2 - STRATÉGIES DE CONCEPTION

3 - C++ DANS L’INDUSTRIE ET LA RECHERCHE

4 - CONCLUSION

Article de référence | Réf : H3138 v1

Concepts objets dans le langage C++
Conception par objets en C++

Auteur(s) : Amal SAYAH

Date de publication : 10 mai 2003

Pour explorer cet article
Télécharger l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !

Sommaire

Présentation

Version en anglais English

RÉSUMÉ

La programmation par objet, et le  langage C++, s'appliquent bien aux besoins de développement moderne, favorisant le travail simultané de plusieurs développeurs, et une maintenabilité et une évolutivité du code obtenu. Cet article décrit les concepts objets offerts par le langage C++. Puis quelques problèmes liés aux choix de conception par objets en C++ sont analysés, avec une présentation des conséquences immédiates ou futures lors des évolutions des produits développés.

Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.

Lire l’article

Auteur(s)

  • Amal SAYAH : Maître de conférences, université Paul-Sabatier - Institut de recherche en informatique de Toulouse (IRIT )

INTRODUCTION

De nombreuses applications ont été développées en utilisant des langages à objets et en particulier le C++. Cet engouement pour la programmation par objets se justifie aujourd’hui. En effet, plusieurs équipes participent généralement à la réalisation d'un logiciel, d'où un problème d'interaction entre ces différentes parties. De plus, les logiciels ont une durée de vie de plus en plus longue, pendant laquelle ils subissent d'importantes adaptations et modifications (évolutions technologiques, du besoin, des normes, etc.). Enfin, la programmation par objets, au travers des concepts qu’elle propose (objet, classe, héritage, sous-typage, polymorphisme, etc.), répond aux besoins de telles applications.

Dans cet article, nous consacrerons une première partie à une description des concepts objets offerts par le langage C++. Ensuite, à partir d’expériences vécues dans le développement d’applications C++, nous analyserons quelques problèmes liés aux choix de conception par objets en C++ et à leurs conséquences immédiates ou futures lors des évolutions des produits développés.

Je tiens à remercier mes collègues qui ont accepté, malgré leur emploi du temps chargé, d’en consacrer une partie à la lecture de ce document. Par leurs remarques, ils m’ont incité à développer la présentation de certains concepts ou à apporter des explications complémentaires. Je pense en particulier à mon collègue et ami Mamoun Filali.

Cet article est réservé aux abonnés.
Il vous reste 93% à découvrir.

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

DOI (Digital Object Identifier)

https://doi.org/10.51257/a-v1-h3138


Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(240 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS

Lecture en cours
Présentation
Version en anglais English

1. Concepts objets dans le langage C++

Aperçu historique

En 1980, un chercheur, Bjarne Stroustrup, devait programmer une application pour laquelle le langage Simula, du fait des concepts qu’il implémente et en particulier la notion de classe, semblait le plus approprié. Cette expérience tourna court pour des raisons d’efficacité (le code généré ne permettait pas des temps de réponse corrects pour une application en temps réel). Ce chercheur, se souvenant probablement de la genèse du langage C [1], décida de suivre l’exemple de ses concepteurs, qui, plusieurs années auparavant, avaient voulu réécrire le code d’un système qu’ils avaient conçu, Unix, et s’étaient heurtés à l’absence d’un langage efficace pour une telle application : ils avaient alors conçu le langage C, intermédiaire entre un langage d’assemblage et un langage évolué. Bjarne Stroustrup se proposa alors d’ajouter, entre autres, le concept de classe au langage C, pour bénéficier à la fois de l’efficacité du C et des avantages de la programmation par objets : ce fut le « C with classe ». En 1983, la première version du langage C++, issue de ces travaux, fut diffusée essentiellement dans le monde universitaire, suivie en 1986 d’une version améliorée, plus « propre » et qui servira de base à la norme internationale du C++ ISO/IEC 14882.

Nous allons présenter aussi succinctement que possible les principaux concepts objets du C++. Le lecteur intéressé par une présentation plus détaillée du C++ pourra se reporter aux nombreux ouvrages qui lui ont été consacrés, en particulier [2][3][4][5].

1.1 const et référence

Avant d’aborder l’aspect objets du C++, il est utile de présenter l’attribut const et la notion de référence, très utilisés dans cet article.

HAUT DE PAGE

1.1.1 Déclaration de constantes

Pour assurer un meilleur contrôle sémantique...

Cet article est réservé aux abonnés.
Il vous reste 94% à découvrir.

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(240 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS

Lecture en cours
Concepts objets dans le langage C++
Sommaire
Sommaire

BIBLIOGRAPHIE

  • (1) - KERNIGHAM (B.W.), RITCHIE (D.M.) -   The C Programming Language  -  . Prentice-Hall (1978).

  • (2) - ELLIS (M.A.), STROUSTRUP (B.) -   The annotated C++ reference manual  -  . Addison-Wesley (1990).

  • (3) - GORLEN (K.E.), ORLOW (S.M.), PLEXICO (P.S.) -   Data abstraction and object-oriented programming in C++  -  . Editions John Wiley & Sons (1990).

  • (4) - STROUSTRUP (B.) -   Le langage C++  -  . Addison-Wesley France (1992).

  • (5) - BODEVEIX (J.P.), FILALI (M.), SAYAH (A.) -   Programmation en C++  -  . InterÉditions France (1994).

  • (6) - MEYER (B.) -   Eiffel : the language  -  . Prentice Hall (1992).

  • (7) - MASINI...

DANS NOS BASES DOCUMENTAIRES

1 Site Internet

Barne Stroustrup http://www.research.att.com/~bs/applications.html

HAUT DE PAGE

2 Norme

ISO/IEC 14882 - 1998 - Langages de programmation – C++ - -

HAUT DE PAGE

Cet article est réservé aux abonnés.
Il vous reste 95% à découvrir.

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(240 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS