Quel est l'intéret d'apprendre le C avant le C++ ? - Programmation
Marsh Posté le 14-02-2002 à 20:37:17
y'a tant de différences entre le C et le C++ ?
j'ai pas beaucoup d'expérience là dedans, mais ce qui me semble difficile dans la programmation, c'est la logique à acquérir...
Donc que tu l'acquière en C ou en C++, au début tu verras pas de grandes différences ; c'est une fois que tu utiliseras des fonctions un peu plus évoluées que tu risques d'avoir quelques ennuis...
Un informaticien pour confirmer svp
A+
Marsh Posté le 14-02-2002 à 20:42:17
Le C est un langage Procédural tandis que le C++ est un langage orienté objet, selon moi il est préférable d'apprendre les conceptes de la programmation avant de faire du C++, les grands concepts sont facile à apprendre avec des langages comme le C ou encore le Pascal.
Marsh Posté le 14-02-2002 à 20:44:21
euh, commencer par le C risque de te donner des mauvaises habitudes (le procedural c'est pas ce qu'il y a de mieux) qu'il sera difficile de perdre en objet. Je connais des programmeurs avec une certaine experience qui ont commencé par du C et pour qui les reflexes du procedural sont restés bien presents du coup leur code est... un peu bancal et un peu chiant à lire.
Marsh Posté le 14-02-2002 à 21:08:29
wpk a écrit a écrit : euh, commencer par le C risque de te donner des mauvaises habitudes (le procedural c'est pas ce qu'il y a de mieux) qu'il sera difficile de perdre en objet. Je connais des programmeurs avec une certaine experience qui ont commencé par du C et pour qui les reflexes du procedural sont restés bien presents du coup leur code est... un peu bancal et un peu chiant à lire. |
j'adhère
Marsh Posté le 14-02-2002 à 21:13:00
Je connais des programmeurs avec une certaine experience qui ont commencé par du C et qui ont parfaitement intégré les concepts objet. du coup leur code est élégant et facile à lire.
//
commence par le C ou par le C++, c'est pas bien important. ce n'est pas le langage qui compte mais la capacité à résoudre un problème dans un langage donné.
ah, ça veut aussi dire qu'il faut que tu prennes la décision toi-même plutôt que de compter sur les généralisations mensongères de qq posts (dont la mienne). ouch.
évidemment, je te dirais bien d'apprendre les deux ...
Marsh Posté le 14-02-2002 à 21:19:22
youdontcare a écrit a écrit : Je connais des programmeurs avec une certaine experience qui ont commencé par du C et qui ont parfaitement intégré les concepts objet. du coup leur code est élégant et facile à lire. // commence par le C ou par le C++, c'est pas bien important. ce n'est pas le langage qui compte mais la capacité à résoudre un problème dans un langage donné. ah, ça veut aussi dire qu'il faut que tu prennes la décision toi-même plutôt que de compter sur les généralisations mensongères de qq posts (dont la mienne). ouch. évidemment, je te dirais bien d'apprendre les deux ... |
mes propos insinuent qu'il n'y a qu'une relation d'inclusion simple entre l'ensemble des codeurs ayant debuté par le C et qui pondent du code C++ "objet" et les programmeurs ayant debuté par le c et qui ecrivent du c en pensant ecrire du c++
[jfdsdjhfuetppo]--Message édité par wpk--[/jfdsdjhfuetppo]
Marsh Posté le 14-02-2002 à 21:43:02
Pas mal de monde apprend le C avant le C++ pour sa syntaxe.
Enfin c'est surtout la méthode des enseignants. Il ne veulent pas commencer à voir tout ce qui est objet avant que tu connaisse la syntaxe, une partie les librairies usuelles, faire mumuse avec des pointeurs en C, etc...
Malheureusement il y a effectivement une partie de choses qui changent entre C et C++ (voir parfois de manière totalement contradictoire) donc très souvent on pond du code batard, facilité par le fait que les compilos ne disent souvent rien.
Marsh Posté le 15-02-2002 à 00:28:01
J'ai fait du C et apres du C++ et c vrai que la transition a l'objet a pas ete facile.
Quand je retombe sur du source de cet epoque j'ai mal au coeur
Donc, ouais essaye peut etre directement sur le C++ . Qand on y pense, y'en a qui ont debuté la prog sur du JAVA et ils en sont pas mort....
Marsh Posté le 15-02-2002 à 01:18:06
Le truc c'est qu?en C y'a que le langage à apprendre alors qu?en c++ il faut aussi apprendre la « méthode »!!
je résume-la!
Moi j'en suis à la transition entre c et c++ !
Et comprendre le C m'a encouragé à faire de C++...
voilà c'etait le post du débutant...
Marsh Posté le 15-02-2002 à 01:23:28
Babekiller a écrit a écrit : Le truc c'est qu?en C y'a que le langage à apprendre alors qu?en c++ il faut aussi apprendre la « méthode »!! |
tu codes en C sans méthode ? tu ne codes pas en C, tu appuies sur des touches au pif et de temps en temps ça compile, c'est ça ? et parfois ça marche ?
Marsh Posté le 15-02-2002 à 02:47:05
wpk a écrit a écrit : mes propos insinuent qu'il n'y a qu'une relation d'inclusion simple entre l'ensemble des codeurs ayant debuté par le C et qui pondent du code C++ "objet" et les programmeurs ayant debuté par le c et qui ecrivent du c en pensant ecrire du c++ |
C'est pas C++ que tu voulais ecrire, la?
Sinon, pour repondre a la question initiale: aucun.
De nos jours ou le C++ est dispo avec des compilos natifs et une librairie assez standardisee, sur la pluspart des plate-formes, apprendre le C avant la C++ n'a aucun interet.
A+,
Marsh Posté le 15-02-2002 à 05:26:40
TaTaN a écrit a écrit : Le C est un langage Procédural tandis que le C++ est un langage orienté objet, selon moi il est préférable d'apprendre les conceptes de la programmation avant de faire du C++, les grands concepts sont facile à apprendre avec des langages comme le C ou encore le Pascal. |
tu peux expliquer la difference entre procedural et orienté objet, stp ?
le PHP tu le classes dans le procedural j'imagine ?
donc si je suis + ou - ton raisonnement une personne qui ne connait pas les concepts de programmation programme mal !?
et a part le C ou le pascal y a pas d'autres voies ??
[jfdsdjhfuetppo]--Message édité par potiron--[/jfdsdjhfuetppo]
Marsh Posté le 15-02-2002 à 07:55:19
Vive le Smalltalk !!!
OK, je sors.
Marsh Posté le 15-02-2002 à 09:04:39
Deepcore a écrit a écrit : Vive le Smalltalk !!! OK, je sors. |
c pas bien smalltalk !? j'en ai beaucoup entendu parler... et pas qu'en mal !
Marsh Posté le 15-02-2002 à 09:58:05
ya quand meme un intéret je pense
Apprendre le C avant te permet de maitriser le truc le plus chiant à mon avis: les pointeurs.
dés que tu maitrises ce concept et ce qui va avec (pointeurs de fonctions, paramètres de fonctions, syntaxes....), là tu peux passer au C++
Marsh Posté le 15-02-2002 à 10:16:46
EL_gringo> Moi j'aime bien le SmallTalk. Si tu veux apprendre l'objet, c'est excellent car tout est objet en ST. Mais bcp de gens l'aime pas trop.
Jupiler> Assez d'accord avec toi.
Marsh Posté le 15-02-2002 à 10:23:07
Deepcore a écrit a écrit : EL_gringo> Moi j'aime bien le SmallTalk. Si tu veux apprendre l'objet, c'est excellent car tout est objet en ST. Mais bcp de gens l'aime pas trop. Jupiler> Assez d'accord avec toi. |
l'objet je connais, c bon !
Et puis, le Java aussi c tout objet ! Perso, même si je pratique pas en ce moment (a mon grand desespoire), je suis tombé amoureux de ce langage
[jfdsdjhfuetppo]--Message édité par El_Gringo--[/jfdsdjhfuetppo]
Marsh Posté le 15-02-2002 à 10:30:39
Jubijub a écrit a écrit : Parce que je compte me mettre au C++ (g 2 ans pour apprendre les bases)...et je voulais savoir si une maitrise du C (qui semble disparaitre) s'avère tjs utile... |
Apprendre le C avant le C++ te permettra de prendre pleins de mauvaises habitudes qui ne manqueront pas de te faire remarquer par de ton chef de projet
Non, sérieux, il n'y a plus aucune justification pour utiliser le C aujourd'hui à part programmer des drivers. Dès qu'un projet fait plus 100 lignes, il faut le faire en C++.
Marsh Posté le 15-02-2002 à 10:31:38
El_Gringo a écrit a écrit : l'objet je connais, c bon ! Et puis, le Java aussi c tout objet ! Perso, même si je pratique pas en ce moment (a mon grand desespoire), je suis tombé amoureux de ce langage |
J'aime bien le Java (je m'y suis mis depuis peu), mais je me suis mal exprimé: en Java tu as une synthaxe proche du C, donc assez permissive. En ST, t'as pas de typage à faire (par ex) et pourtant, t'es quasi obligé de faire du code impécable (et ce facilement).
Marsh Posté le 15-02-2002 à 10:34:29
Tetragrammaton IHVH a écrit a écrit : Non, sérieux, il n'y a plus aucune justification pour utiliser le C aujourd'hui à part programmer des drivers. Dès qu'un projet fait plus 100 lignes, il faut le faire en C++. |
Je ne crois pas qu'il cherche à apprendre le C pour s'en servir, mais comme base pour apprendre le C++
Marsh Posté le 15-02-2002 à 10:52:17
Deepcore a écrit a écrit : Vive le Smalltalk !!! OK, je sors. |
Non, tu sors pas. Pour vraiment comprendre ce qu'est un langage orienté objet (ce que n'est pas C++) rien de tel que le smalltalk.
C++ permet de faire de la prog orientee objet, mais ne l'impose pas. Smalltalk si. Bon, bien sur, il y a aussi Java maintenant.
A+,
Marsh Posté le 15-02-2002 à 11:26:30
Maintenant, Oracle utilise Java, entre autres pour les wizards de création de base ou pour le programme d'installation sous Windows.
Et c'est LE pb avec Java : c'est très gourmand. Mais on peut vraiment faire des choses sympa
Marsh Posté le 15-02-2002 à 11:50:47
du C pour:
- programmation système
- programmes pas trop gros mais à haute performance requise
du Java pour:
- portabilité
- programmation d'applications orientés réseaux (CORBA, servlettes, etc.)
- besoin de chargements dynamiques de classes
du C++ pour:
- gros programmes à haute performance requise
Je vois ces trois langages de cette manière. Qu'en pensez-ous? Etes-vous d'accord avec mon opinion?
[jfdsdjhfuetppo]--Message édité par Krueger--[/jfdsdjhfuetppo]
Marsh Posté le 15-02-2002 à 11:57:52
je suis assez d'accord
Marsh Posté le 15-02-2002 à 13:02:07
Citation : du Java pour: |
On peut aussi ecrire du code portable sans Java.
A+,
Marsh Posté le 15-02-2002 à 13:27:26
Krueger a écrit a écrit : du C pour: du C++ pour: - gros programmes à haute performance requise |
je rajouterai: petits programmes aussi
A+
LEGREG
Marsh Posté le 15-02-2002 à 13:57:52
Tetragrammaton IHVH a écrit a écrit : Apprendre le C avant le C++ te permettra de prendre pleins de mauvaises habitudes qui ne manqueront pas de te faire remarquer par de ton chef de projet Non, sérieux, il n'y a plus aucune justification pour utiliser le C aujourd'hui à part programmer des drivers. Dès qu'un projet fait plus 100 lignes, il faut le faire en C++. |
mouais sauf que si tu fais du pro C ( C + embedded sql ) bah vaut mieux connaitre le C
perso je lutte avec java et C++ pour connaitre les concepts objets
j suis procedural dans l ame et le C me bloque a mon avis pour l objet
je conseillerais plutot d apprendre le C++ sans connaitre le C
Marsh Posté le 15-02-2002 à 14:56:35
Moi je pense que c'est pas plus mal de connaitre le C en premier.
Comme ca tu comprendra l'avantage de mainpuler des objets quand tu auras fais un projet de plusieurs milliers de lignes avec des appels du type :tab->caractere[tab.nb_ligne+...]
En plus quand tu sauras pas quelle methode C++ utiliser tu pourras toujours faire du C bas niveau(ok c'est porkasse mais ca marche )
Marsh Posté le 15-02-2002 à 21:34:21
De ce que j'ai remarqué qui revenait souvent dans les offres d'emplois, l'administration réseau va souvent de pair avec l'administration système.
Et puis on ne dis pas pearl, mais perl.
Pour la question de la portabilité je voulais en fait sous-entendre des programmes utilisables sur des plateformes variées sans recompilation. Connaissez-vous des exemples de langages qui font ça excepté Java?
[jfdsdjhfuetppo]--Message édité par Krueger--[/jfdsdjhfuetppo]
Marsh Posté le 15-02-2002 à 22:31:19
VB POWAAAAA
bon, d'accord... je sors....
Marsh Posté le 15-02-2002 à 23:43:28
Citation : Pour la question de la portabilité je voulais en fait sous-entendre des programmes utilisables sur des plateformes variées sans recompilation. Connaissez-vous des exemples de langages qui font ça excepté Java? |
Il y a le Python qui fait ca et peut-etre aussi le Ruby ( ils se ressemblent tellement ces 2 langages parait-il )
Enfin, le Perl aussi si je ne me trompe pas.
[jfdsdjhfuetppo]--Message édité par Kristoph--[/jfdsdjhfuetppo]
Marsh Posté le 14-02-2002 à 20:26:59
Parce que je compte me mettre au C++ (g 2 ans pour apprendre les bases)...et je voulais savoir si une maitrise du C (qui semble disparaitre) s'avère tjs utile...
---------------
Jubi Photos : Flickr - 500px