C++, orienté objet?

vmalep Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   -  
 safa -
Bonjour,
Lors une petite discussion avec un ami (rassurez-vous, on n'en est pas arrivé aux mains), on s'est demandé dans quelle mesure le C++ est un language orienté objet.

Il me semble en effet que s'il s'en rapproche, il n'est pas aussi orienté objet que l'est le java.

J'ai bien consulté les tutoriaux, mais je n'ai pas trouvé de comparaison. Quelqu'un pourrait-il éclaircir ce point?

Merci,
Pierre

11 réponses

safa
 
quel est le rôle de la commande gets en programmation C++
1
teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Je connais pas Java donc pas de comparaison en ce qui me concerne, mais C++ est definitivement un langage oriente objet...sans conteste...


ö,ö  "Il est plus facile de donner des conseils
\_/    que de les appliquer"
0
ivvrick Messages postés 11 Date d'inscription   Statut Membre Dernière intervention  
 
salut comment dit teebo C++ est un langage OO, mais comme il supporte le c, on peut ne pas faire de l'objet.

Beaucoup de développeur programme en C++ sans faire du tout objet.

Par contre java a été conçu pour faire et ne faire que de l'objet.
C'est à dire que tout ce que tu crées doit obligatoirement faire parti d'une classe et donc d'un objet.

C++ te donne les moyens de faire du tout objet mais ne t'y oblige pas.

Donc oui C++ est un langage objet.

J'ai un document qui compare technique les deux si tu veux je te l'envoie dés que je le trouve ....
a+
0
vmalep Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   7
 
Merci, ça peut m'intéresser. Ceci dit, en cherchant sur le net, je suis tombé sur Python et ça a l'air encore mieux ( http://www.p3b.be ou http://www.python.org).
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ivvrick Messages postés 11 Date d'inscription   Statut Membre Dernière intervention  
 
Tu as aussi Ruby qui nous viens du japon...
www.ruby-lang.org
a+
0
teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Et l'inenarrable Smalltalk...du pur objet jusqu'a son interface de programmation meme!!!

ö,ö  "Il est plus facile de donner des conseils
\_/    que de les appliquer"
0
sebsauvage Messages postés 32893 Date d'inscription   Statut Modérateur Dernière intervention   15 662
 
Oui oui, le C++ n'est en fait pas très 'objet'.
Il l'est beaucoup moins que Java ou Python.
Et très largement moins que SmallTalk.
(De l'avis même des membres du comité ANSI C++, comme Bruce Eckel, ce qui donne à réfléchir).

Et puis, les langages de plus haut niveaux (en particuliers ceux qui tournent sur des machines virtuelles comme Java, Python ou .Net), sont en passe de supplanter les langages objets de "l'ancienne" génération comme C++.
0
EdgeCrusher
 
Je connais Java et C++. Pour moi Java est du pur objet, tandis que c++ n'a qu'une facade objet. Certes on peut faire de l'heritage et tout les autres choses liées aux objets, mais derriere, d'apres mon experience, il n'y a que des "bonnes vieilles" structures C. Le c++ a le gout et l'odeur de l'objet, mais il semble n'etre "seulement" qu'un rafistolage du c pour faire comme de l'objet. Ceci dit c++ est tout dememe un tres bon tres riche language. Mais bon tout le monde s'est mis a faire de l'objet et on peut en faire avec un peu n'importe quoi : cobol (2), lisp, etc... peut etre meme de l'assembleur si on se creuse un peu la tete .....
En parlant de language novateur je conseille tout ceux que cela interessent le Hasckell ( http://www.haskell.org), un language de prog fonctionnelle dite pareisseuse, avis aux amateur....
0
tafiscobar Messages postés 1277 Date d'inscription   Statut Contributeur Dernière intervention   177
 
"langage des paresseux" => je conseille le rebol(j'y connais rien, mais d'apres ce a j'ai lu sur leur site, il est vraiment fait pour les paresseux)
Treve donc sur le rebol.
En fait, je ne comprends pas pourqoi on s'attaq tout le temps au C++,
moi personnellement, je trouve que l'on p tout faire avec(de la prog appli a la prog systeme)
contrairement a certains langages quis e valent de tres bons langages objets, mais peu efficaces en prog systemes
coe lel java, q je commence aapprendre(en tout cas mise a part les interfaces, le C++ fait tout ce q java fait en objet)
Une chose j p l'accpeter: C++ est oriente objet (on p programmer sans objet) alors q le java si j n m trompe'
il est un langage objet(rien faire sans objet).
Une chose est sure, le C++ n'est pas totalement objet, mais cela n'en fait pas un mauvaisd langage, bon il est difficile,
mais bon, on p tout faire avec(en tout cas, il n m viendrai pas a l'idee de faire un noyau systeme en java
bien q cela soit possible, je prefererai le C ou C++, mais cote appli, je p hesiter, suivant ce q j p faire).
Neanmoins, prog objet est mieux q procedurale.
tafiscobar
0
teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
T'es un peu dur a lire sur ce coup Tafiscobar...
Sinon tu sembles defendre le C++ que personne n'avait attaque, certains ont emis des reserves sur son Objetitude, pas sur sa qualite! A part ca, prog objet est mieux que procedurale...ca depend des cas, tu dis toi meme que tu prendrai eventuellement C pour un noyau...qui lui n'est pas objet, donc comme quoi dans certains cas, le procedural...et puis le fonctionnel a aussi ses avantages selon ce que tu veux faire, ca n'a pas les memes buts, et forcement, si tu prends un marteau pour viser, tu vas trouver que c'est vraiment nul les marteaux, mais ce n'est pas une raison pour enfoncer les clous a coup de tournevis :-D

ö,ö  "Il est plus facile de donner des conseils
\_/    que de les appliquer"
0
jhonny
 
il m'a interresser ce probleme que vous posez...
etant un etudiant de genie logiciel, je sais que le c++
est une version avancee de c, et qu'on peut executer de
l'orienter objet en l'utilisant..
c'est un langage oo par exellence,
nous avons appris l'oo ce semestre avec ce langage
et tout marche bien...
merci
0
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
Au sujet du C++, il est vrai que c'est du C trafiqué et que tout est remis en structures C et fonction. Mais est-ce vraiment important ? Le fait qu'il soit orienté objet, c'est important au niveau du programmeur, que le compilateur fasse une tambouille derrière après, on s'en fiche non ? D'ailleurs, si ça se trouve, Java fait pareil. Et au final, tout fini en langage machine, qui ressemble plutôt à du GOTO !
Pour répondre au message original, disons que ça dépend de e qu'on entend par orienté objet. Si ça veux dire que le langage permet de faire tout ce qui est prévu par la POO, allors la réponse est oui. Si ça veux dire qu'il ne peut faire que ça, alors la réponse est non. Le C++, contrairement à Java, est capable de faire de l'héritage multiple. Serait il plus POO que la java ?
0