|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Membre Expert
![]() Eleveur de cornichons Inscription : juin 2002 Messages : 1 078 ![]() |
Bonjour.
Je m'interesse depuis peu au langage C. Je cherche donc svt des cours clairs (les cours americains sont bcp mieux que les francais De plus, sur un site us dont j'ai oublié l'url, il y a un excellent tutorial sur les pointeurs et au moment d'aborder les "dynamic allocation" , et bien, aucune mention des fonctions *alloc mais seulement des "new" , des " delete" ... et lorsque l'on aborde le sujet des structures, c'est vite remplacé par les classes ... Je sais bien qu'il y a des sites qui traitent uniquement du C (comme developpez par exemple) mais est-ce que c'est bientot la fin de la communauté C , qui laissera sa place a une énorme communauté C++ J'aimerais avoir votre avis sur la question : par exemple, etes-vous developpeur C et C++ ou seulement C (ou seulement C++) ?? Si c'est uniquement C, pensez vous évoluer un jour vers le C++ ou comptez-vous rester au language C uniquement ? Merci. Nas' |
|
|
00
|
|
|
#2 |
|
Membre du Club
![]() |
je pense que le C a encore de beaux jours devant lui.
j'ai 2 bonnes raisons qui me font dire ça : 1. les noyaux des OS (linux, windows je croit du moins en partie...) sont souvent ecrit en C et donc les appels systemes sont des fonctions C et avant de traduire tous les noyaux des OS en C++ il y a du temps. 2. le C est plus rapide et moins gourmand en memmoire que le C++ (c'est p'etre pour ça que les noyaux sont en C voila c'est mon avis, mais peut être que des personnes trouverons des choses à redire. |
|
|
10
|
|
|
#3 |
|
Membre à l'essai
![]() |
et puis tous les systemes embarqués sont encore programmés en C, je crois qu'il n'y a pas beaucoup de µcontrolleurs programmables en c++, vu que c de la programmation objet
|
|
|
00
|
|
|
#4 |
|
Membre confirmé
![]() Inscription : mars 2003 Messages : 258 ![]() |
Moi personnellement je code en C mais lorsque je dois réaliser des gros projets (de l'ordre de 1000 lignes et plus) ou alors que lorsque je programme je trouve qu'une implentation de hierarchie ou de polymorphisme de classe se preterait bien à résoudre le problème alors je bascule en C++, bien que je sois bien moins compétent dans ce dernier.
Perso je crois que le C est beaucoup moin rigide pour des programmes de petites envergures mais le C++ offre quelques beaux atouts. Aujourd'hui tout bon programmeur (enfin pas encore tellement aujourd'hui mais dans les années à venir) se doit (devra) de connaître les 2. Et puis tu sais il y a aussi le C# qui viens de sortir. J'ai regardé quelques codes et il a l'air vraiment très bien, surtout pour programmer une API Windows. Tu sais encore aujourd'hui on programme en basic |
|
|
10
|
|
|
#5 |
|
Membre du Club
![]() |
encore moi...
je ne sais pas si c'est une preuve de long vie a avenir mais il y a encore pas mal de gens qui bossent sur des nouveaux standards (avec UNICODE) du C. |
|
|
00
|
|
|
#6 | |
|
Membre Expert
![]() Eleveur de cornichons Inscription : juin 2002 Messages : 1 078 ![]() |
Citation:
trop fort ca, c'est vrai j'ai lu des articles qui disaient qu'il y avait encore meme une communauté de Basiciens (on dit ca? lol).Moi je connais un peu et j'utilise pour les calculettes c'est tout Oui, donc, j'ai vu que le noyau et les µcontrolleurs .... étaient écrits tjs en C (et qui le resteront apparament). Mais ca ne reste pas des domaines bien précis ? Perso, j'apprend le C en ce moment en passant à l'avenir (j'aime qd mm programmer mais c'est plus pour avoir de l'avance qd je feré mes études) et je me demande, ces derniers jours surtout, si ca vaut le coup de continuer... Car apprendre le C++, franchement, en lisant qq tutos, je me suis rendu compte qu'il ne fallait pas connaitre le C ... je connais trèstrès très peu le C et je comprend presque tout des notions de bases du C++ ... mais j'ai plus de facilité à coder en C... (j'arrive pas a me faire a la notion de classes et tout ca... Alors, continuer dans la programmation C vaut le coup? Les exemples que vous m'avez donné, sont certes justes, mais trop précis non? On voit qd mm bcp plus de docs C++ que C ... et puis, avec Borland et tout ca... tous les tutos de developpez sont pour le C++ (meme si certains sadaptent au C) . Donc, daprès vous , la communauté du C va sagrandir ou pas? Pour l'instant, selon moi, elle se porte bien (je vois ca sur ce forum Nas' |
|
|
|
00
|
|
|
#7 | |
|
Membre confirmé
![]() Inscription : mars 2003 Messages : 258 ![]() |
Issus d'un poste de la taverne mais pourtant tellement vrai :
Citation:
Tu peux apprendre à conduire une formule 1 sans avoir ton permis de voiture, mais c'est beaucoup plus facile si tu as déjà ton permis Si tu t'inquiète pour l'avenir sache que dans la majeure partie des écoles d'info c'est du C d'abord Et puis récemment il y a la programmation neuronale qui est apparue, et c'est réalisable en C. On prévoit de mettre ce type de programmation dans touts les types d'appareils ménagers. Donc franchement pour l'avenir le C est très bien armé et le C++ et le C# ne deviendront pas le standard de la programmation avant un petit bout de temps (qui se sent de re-coder tout le noyau linux pour peut-être ne même pas avoir un léger gain en performance et pour qu'il prenne plus de place ?). Pour le basic moi je m'en sers souvent sur la calculatrice (qui n'a jamais fait un prog de résolution d'équation du 2nd degré :p) et pourtant ce language est né il y a, pfiou, une bonne trentaine d'année Voilà j'espère que tu es rassuré |
|
|
|
00
|
|
|
#8 | |
|
Membre chevronné
![]() ![]() Inscription : avril 2002 Messages : 105 ![]() |
Je pense que le C n'est pas prêt de disparaître, car par exemple pour le noyau Linux et même pour bien d'autre chose, le C est nécéssaire car assez proche du système. Je vois mal comment programmer sur un µC ou même un PC en bas niveau avec un langage comme C++. En faite je pense que l'un ne remplacera jamais l'autre car ils ont chacun leur domaine d'utilisation même si le C++ est parfois beaucoup plus commode dans certaine application (ex: manipilation de chaîne de caractères).
C => proche de la machine bas niveau, accès au port du PC ou µC etc... C++ => haut niveau, POO, graphisme etc... Je pense que cela restera comme ça pendant un bon bout de temps, mais ce n'est que mon avis. Citation:
|
|
|
|
00
|
|
|
#9 |
|
Membre du Club
![]() |
juste une remarque, essais peut etre de poster ce message sur le forum C++ pour savoir ce que les programmeurs C++ en pense.
Car sur un forum C il y a logiquement beaucoup de partisant pour le C. (meme si, je suppose que des programmeurs C/C++ naviguent entre les 2 forums) |
|
|
00
|
|
|
#10 | |
|
Membre Expert
![]() Eleveur de cornichons Inscription : juin 2002 Messages : 1 078 ![]() |
Citation:
Sinon, vous etes unanime pour dire que le C a de l'avenir et qu'il n'est pa près de s'éteindre. Mais une chose m'a frappé, Vincent, je pensais que le langage C était un langage de haut niveau et non de bas niveau ? Il est les deux? Pour moi un langage "lowlevel" c'est plutot l'asm ... Sinon, oui je suis rassuré Yabo Qd je regarde un programme ecrit en C++, c'est pas du tout comme un langage écrit en C ... les headers changent, les fonctions (printf devient cout...ou cin je sais plus Donc je dévie un peu le sujet, mais j'aimerai savoir, pour ceux qui codent en C et C++, qd sont-ils passés au C++ (si ils ont commencé par le C)? Après les structures ? (ce qui ma été conseillé) ou bien c'est au "feeling" ? Autre chose : j'aimerai bien avoir un avis d'une personne qui pense que la fin du C approche, si y'en a une bien sur Merci davoir repondu Nas' |
|
|
|
00
|
|
|
#11 |
|
Candidat au titre de Membre du Club
![]() |
Les purs programmes C vont disparaitre a mon avis.L'avenir de la programmation c'est la programmation objet et quand vous dites que le C permet de faire de la programmation bas niveau et qu'il a de beau jour devant lui grace a linux ,c'est surtout du au fait que les developpeurs réécrivent pas le noyau en entier.Et puis en c++ on pt programmer en bas niveau aussi.
Personnellement je fais quelques logiciels et je n'utilise plus vraiment le C car c'est une grosse perte de temps. De plus en regardant des projets un peu plus gros on utilise plus du tout le C on utilise de la prog objet genre java ou c++ car on peut faire de bonnes analyses grace a uml ... Si vous connaissez pas rationnal ,c est une boite qui sort d logiciels pour faire d analyses objet et une fois lanalyse faite vous pouvez generer tous les fichiers de votre projet et faire du reverse engeneering sans probleme pour mettre a jour lanalyse.Enfin bref tout ca pour dire que la programmation objet va prendre largement le dessus et le c en definitive ne restera qu'un langage permettant de meiux aborder le c++ . |
|
|
00
|
|
|
#12 | |
|
Membre chevronné
![]() ![]() Inscription : avril 2002 Messages : 105 ![]() |
Citation:
Et quand on y pense un µC c'est un PC sans écran ni clavier, c'est pourquoi je pense que tout ce qui est programmation "proche" su système restera en C et non en C++ pour les même raison que précedemment. Le C++ est beaucoup plus gourmand en mémoire et il n'y aurai aucun interêt à programmer par exemple: le noyau Linux en C++, pas plus qu'un µC d'ailleur ! Je tiens a préciser que ce n'est que mon avis personnel. |
|
|
|
00
|
|
|
#13 |
|
Membre Expert
![]() Eleveur de cornichons Inscription : juin 2002 Messages : 1 078 ![]() |
Ca devient interessant là ... y'en a qui pensent qd meme que le C n'aura plus gros interet... j'ai demandé cette question à un ingénieur (dans un salon des métiers) et il m'a dit la meme chose que Krusaf, à savoir que ce sont les langages orientés objets qui vont prendre le dessus *largement* ... je lui ai en fait demandé si ca sert à qch de connaitre le C ... sa réponse fut "oui, bien sur, mais l'avenir est à l'OO et le C seul ne te servira pas à grand chose" ...
Meme sur le forum C++ (ou j'ai posté le meme message) on m'a parlé du noyau de Linux codé en C ... mais bon, le refaire en C++, ca doit pas etre impossible . Mais aussi, d'après tout vos exemples de choses faites en C, ce sont des ptites parties de programmes et non des programmes entiers. Y-a til par exemple un logiciel *connu* codé seulement en C (ou avec asm) ? Par contre des progs codé en C++ y'en a bcp (comme IE). Je vois qd mm que le C attire encore qq personnes ... je vais le continuer mais pouvez-vous me dire qd etes vous passés au C++ ? Nas' |
|
|
00
|
|
|
#14 |
|
Membre confirmé
![]() Inscription : mars 2003 Messages : 258 ![]() |
Quand j'en ai eu besoin :p Une fois que j'ai fais beaucoup de C il m'est arrivé de me dire : Tiens et là en C++ n'y aurait-il pas une solution plus simple ?
Alors j'ai cherché et j'ai trouvé. Si c'est plus simple -> J'apprends la méthode, Sinon -> Je reste en C Sinon pour un programme entièrement en C y a Linux et Windows 98 si je ne m'abuse. Et puis quant au fait de re coder le noyau Linux en C++ c'est certes faisable mais n'apporterait pas (ou peu) d'avantages et il serait plus gourmand en ressources. Donc je crois qu'il va encore rester un bon bout de temps en C. |
|
|
00
|
|
|
#15 |
|
Membre éprouvé
![]() Inscription : mars 2002 Messages : 623 ![]() |
A titre personnel, je préfère le C++
Si un programmeur ne connaissant ni C ni C++ me demande lequel choisir, je lui dirais C++ Cependant si un programmeur maîtrise parfaitement le C, je ne lui dirais pas de passer au C++ De plus pour les appli système ou réseaux (bas niveau), le code doit être compact et véloce d'où préférence au C. On dit que le langage C part du principe que le programmeur sait ce qu'il fait. donc liberté presque totale mais à ses risques et périls. Enfin Unix et langage C sont frères siamois On peut ne pas aimer ce langage mais on ne peut l'ignorer. C'est , je crois, le langage le plus utilisé au monde et ceux qui prédisent sa fin proche, se trompe lourdement. Que NaskY se rassure donc sur la pérennité du C |
|
|
00
|
|
|
#16 |
|
Membre du Club
![]() |
si tu cherche des gros logiciels fait en C, regard le code sources de prog linux, beaucoup sont en C.
A mon avis, il est bon d'apprendre le C (ça reste d'ailleur le langage le plus enseigné) car toute la base du C++ est du C. Une classe en C++, ça ressemble beaucoup a une structure en C. Avec des variables => données menbres Et des pointeurs de fonctions (permet du polymorphisme) => methodes On peut faire en C de la prog qui ressemble beaucoup de la prog objet. Bien sur en C++ c'est plus simple a realiser, et il y a en plus l'encapsulation, la surcharge et le pointeur this est passé en parametre de toute les methodes sans que tu le vois (en C on est obligé de mettre le pointeur sur la structure dans les arguments des fonctions). De plus en C++ on a parfois besoin de faire des fonctions en dehors d'une classe, la prog se rapproche alors enormément du C. |
|
|
00
|
|
|
#17 |
|
Membre chevronné
![]() ![]() Inscription : avril 2002 Messages : 105 ![]() |
Personnellement je me suis d'abord interessé à C++ Builder , qui est un simple loisir, donc en C++, très maniable surtout les types AnsiString etc... Puis ensuite au C, en cours pour les µC.
Pour un gros projet en C, il y a "PCB, interactive printed circuit board design" sous Linux Tu peux voir une copie d'écran en bas de cette page : http://fribotte.free.fr/bdtech/pic_and_linux/pic_and_linux.html |
|
|
00
|
|
|
#18 |
|
Membre éclairé
![]() Inscription : février 2003 Messages : 235 ![]() |
Si on se place dans un contexte d'apprentissage de langage, je pense qu'il faut bien maitriser 2 types de langages à partir desquels on apprendra rapidement n'importe quel autre:
- un langage procédural (le C en l'occurence) car il est complet et proche de la machine, donc ca permet de comprendre beaucoup de notions liées au matériel et au système. Et il est toujours très utilisé. - un langage objet car c'est la solution la meilleure (et la plus utilisée à aujourd'hui) pour des projets importants. Quand au 1er langage objet, je ne te conseillerai pas le C++, mais Java qui permet de mieuX appréhender la philosophie objet sans bidouille. Une fois qu'on programme en C et en Java, on a assez de maîtrise technique et méthodologique pour passer au C++. Le principal défaut du C++ à mon avis c'est qu'il n'oblige pas suffisamment à faire de l'objet. En débutant avec, on risque de prendre de mauvaises habitudes |
|
|
00
|
|
|
#19 |
|
Futur Membre du Club
![]() Inscription : juillet 2005 Messages : 24 ![]() |
slt
Pour répondre à tes questions existentielles, j'utilise le C pour la programmation sous unix/linux. Je ne pense pas évoluer vers le C++, because si je veux de la programmation orienté objet, Java me suffit amplement. Il est simple à apprendre et d'utilisation. En outre, si tu as envie de réaliser des os, le C a tout ce qu'il faut, alors pourquoi en rajouter. De la à penser que le C disparaitra un jour, j'en doute, il y aura tj qn pour programmer dans ce langage, a moins que l'on arrive à écrire des os en Java M'enfin C pas grave et n'oublies pas java bien |
|
|
00
|
|
|
#20 |
![]() ![]() ![]() |
Il ne faut pas oublier qu'encore énormément de programmes sous Linux sont créés en C ! Moi je ne jure qu'en C, je ne fait que ca, C/GTK/GLIB/POSIX !
Donc je pense que le Langage C a encore une longue et heureuse vie devant lui, pour moi il reste un des langages incontournables !
__________________
"L'imagination est plus importante que le savoir." A. Einstein et à cliquer sur pour les réponses qui vous ont aidé.
|
|
|
10
|
Copyright © 2000-2013 - www.developpez.com