On conseille à un programmeur d'apprendre en premier le C avant d'apprendre le C++ pour ne pas cumuler les difficultés. Mais vu que tu connais déjà un langage objet, tu n'auras pas à apprendre les concepts objets, c'est pourquoi tu peux très bien commencer directement à apprendre le C++ sans passer par le C.
PS : il n'y a pas que le Java et le C++ qui sont orientés objets.
__________________________
Lisez la charte, pensez à regarder la FAQ, les tutoriaux, l'annuaire et faites une recherche dans les forums.
N'oubliez pas le Tag [Résolu].
L'apprentissage du C++ ne nécessite pas de connaitre la notion d'objets. On peut en utiliser, comme cout, par exemple, sans savoir qu'ils en sont.
Actuellement, je crois qu'une grande majorité des langages de programmation supportent la POO.
__________________________
Aidez les autres membres en publiant sur le forum le code que nous vous avons aidé à créer ! Où sont les membres de MP ?
le C n'est pas encore mort je confirme, loin de là.
un example: les ordinateurs travaillant sur la sécurité de chez airbus même sur l' A380 de airbus sont programmés en C. car le C est un language rapide et très sûr il suffit de pas faire trop d'erreurs.
Je pense qu'il a quelques défauts pour la POO mais j'en fais (en C) ça marche très bien.
__________________________
n'hesitez pas à visiter Mon site et surtout Mon Tutorial C
popol dit : Je pense qu'il a quelques défauts pour la POO mais j'en fais (en C) ça marche très bien.
Tu fais de la POO en C ? Balèze, je m'incline bas pour saluer ta prouesse.
__________________________
Lisez la charte, pensez à regarder la FAQ, les tutoriaux, l'annuaire et faites une recherche dans les forums.
N'oubliez pas le Tag [Résolu].
Pac dit : Tu fais de la POO en C ? Balèze, je m'incline bas pour saluer ta prouesse.
lol, je pense qu'il parlait des structures
__________________________
............ Curtis: RTS 3D .............. ......
........... TeamMoteurProg...........
Si on peut simuler de la POO en C, on peut le faire avec tous les langages procéduraux.
Alp, je suis pas idiot, il suffit de déclarer une structure pour définir les champs de l'objet, puis pour les méthodes, il suffit de faire des routines qui prennent en premier paramètre la structure.
Mais dans ce cas, pourquoi continuer à faire la distinction entre les langages procéduraux et les langages objets ? Autant tout mettre dans le même panier.
Non, ils ont une différence qui va plus loin que le fait d'avoir le type class qui inclue à la fois des champs et à la fois des routines, c'est dans le principe même de la programmation, on ne va pas programmer de la même façon en procédural et en POO, ce sont 2 modes de réflexion différents.
On peut aussi faire du procédural en C++, d'ailleurs.
Mais si tu penses POO quand tu fais du C, c'est que tu n'as rien compris et autant faire du C++. Et si tu penses procédural quand tu fais du C++, autant faire du C.
Mais il ne faut pas dire qu'on fait de la POO en C, c'est faux. Sinon autant dire qu'on fait aussi de la POO en assembleur.
__________________________
Lisez la charte, pensez à regarder la FAQ, les tutoriaux, l'annuaire et faites une recherche dans les forums.
N'oubliez pas le Tag [Résolu].
Chez Airbus ils sont pas plutot en ADA ? en tout cas chez Ariane ils sont sous ADA car c'est le seul langage qui possede un compilo certifié 100% garanti, c'est a dire qu'il produit exactement ce que tu lui as demandé sans y insérer de bug. En general dans l'aeronautique (surtout la partie embarqué) ils ne font pas attention aux performances, si ils ont besoin ils mettent un plus gros processeur, alors que dans les jeux on peut pas demander aux joueurs de mettre des plus gros processeurs (quoi que pas mal de jeux le font)
Au niveau du C il resout tres bien les problèmes proceduraux, il est selon moi "obsolete" car le C++ permet de faire du C et d'utiliser du C externe, et permet de simplifier la couche objet (meme si on peut l'emuler en C, on l'a direct en C++)
mais faire du C++ "tout objet" en decidant de ne pas mettre de fonction libre je ne pense pas que ca soit une bonne idée, d'ailleurs les mecs de la STL ont decidé de coller toute les operations de chaine dans la classe string et ils en sont revenus, ils ont avoué que c'etait une tres mauvaise idée. Comme quoi les choses procedurales sont a faire dans un langage procedurale et les choses objet dans un langage objet. C++ permettant de faire les deux, le C est un petit peu obsolete en soit, il est employé dans des projets comprenant du C et du C++ =)
pour répondre a pac, c'est vrai qu'en y repensent j'ai commencer la prog par fair du C en procédurale, et maintenant ça doit faire un an que je ne code qu'en pascal (delphi 6) , et je pense que la première chose que je ferai si je refesai du C c'est de déclarer des classe et des procedure.. tellement ça me parait indispenssable maintenant. je suis foutu pour refaire du C alor ?
__________________________
Salut litle_titeuf, faut pas pleurer si tu ne penses plus qu'objet et plus procédural, lol !
A l'inverse, il y a beaucoup de gens qui n'arrivent pas à penser objet et font du procédural avec des langages objets.
Je suis comme toi, je ne peux plus penser procédural, je me rends compte que déjà pour mon premier (et unique) projet en C, je pensais POO, une structure avec des routines qui prennaient toujours la structure en premier paramètre.
Mais même si on peut simuler la POO en C, on ne peut pas tout faire tout de même ou alors laborieusement, comme le polymorphisme, la virtualisation et dérivation par exemple.
screetch dit : les mecs de la STL ont decidé de coller toute les operations de chaine dans la classe string et ils en sont revenus, ils ont avoué que c'etait une tres mauvaise idée.
En C++, les méthodes statiques existent je présume, non ?
Pourquoi en sont-ils revenus ? Quels en sont les inconvénients ?
Il existe des langages uniquement objets comme le C#, Eiffel (je n'en suis pas sûr pour Eiffel) et je ne vois aucun problème (en tout cas pour le C# que je pratique).
En Delphi, il est possible de faire des routines qui ne soient pas des méthodes, il existe aussi les méthodes statiques, j'ai préféré migrer mes routines en méthodes statiques pour un soucis d'organisation du code et de cohérence comme le fait le C#.
__________________________
Lisez la charte, pensez à regarder la FAQ, les tutoriaux, l'annuaire et faites une recherche dans les forums.
N'oubliez pas le Tag [Résolu].