Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 18/12/2006, à 22:18

Spartan117

combien de temps ça vous a pris pour apprendre C ?

salut à tous big_smile
pour info ; tout est dans le titre.
Je suis débutant en programmation je me suis lancé dans l'apprentissage du langage C pour migrer ensuite vers le C++. ça fait maintenant 2 semaines et je voudrai simplement savoir combien de temps ça prend en moyenne (ou paut-être que c'est pas comme ça qu'il faut voir les choses ??) .

Hors ligne

#2 Le 18/12/2006, à 22:21

Crashforburn

Re : combien de temps ça vous a pris pour apprendre C ?

Si c'est ton premier language tu vas mettre un bon bout de temps...

Moi, j'avais commencé par Java, j'ai assez vite intégré, puis le C, à part les pointeurs, ça s'est fait vite smile

PS : Le C++ c'est vachement différent du C quand même, la POO vient s'ajouter big_smile


Un blog inutile de plus : http://crashforburn.free.fr/dotclear/
[Membre du club des beaux Ubunteros] : http://forum.ubuntu-fr.org/viewtopic.php?pid=535299
Contre la nouvelle année, votons fonacon : http://www.fonacon.net/

Hors ligne

#3 Le 19/12/2006, à 08:43

jobherzt

Re : combien de temps ça vous a pris pour apprendre C ?

je ne veux pas me la jouer vieux sage, mais ca ne veut pas dire grand chose. apprendre un langage n'est pas tres difficile en soi, le premier est dur car il faut comprendre la "logique", mais les commandes de bases sont peu nombreuses. apres, ce qui est difficile, c'est :
-faire du code propre et efficace
-apprendre, comprendre et implementer intelligemment de nouveaux algorithmes. ca c'est le vrai coeur de la programmation, et la dessus tu n'as jamais fini d'en apprendre, puisque il ya autant d'algorithme que de tache a effectuer... et c'est cette partie qui peut etre difficile.

Hors ligne

#4 Le 19/12/2006, à 08:44

jobherzt

Re : combien de temps ça vous a pris pour apprendre C ?

et oui, a vaut le cp de commencer directement au C++, les logiues sont assez differentes pour que ca ne soit pas forcement recommandé de commencer par le C. mais bon, cette opinion fait debat a ce que j'en sais :-)

Hors ligne

#5 Le 19/12/2006, à 11:23

Nameless

Re : combien de temps ça vous a pris pour apprendre C ?

Pour ma part j'ai d'abord programmé en pascal avant de faire du C.
les pointeurs étant present dans pascal, je n'ai eu aucun soucis avec ceux de C, c'est juste la syntaxe qui est différente, mais le fond reste le même.
Quand au c++ ou java, il m'a fallu environ 2 semaines pour bien saisir les concepts et la sémantique objet, mais avec des cours j'admet que c'est plus facil. Il n'est pas evident de se mettre tout seul à l'objet car je pense qu'on a tendance à vouloir aller trop vite alors qu'il faut accepter de comprendre progressivement toutes les spécificités.
Mais bon la je m'égare ^^ si tu as déjà programmé en imperatif le C ne te poseras pas trop de problème.

#6 Le 19/12/2006, à 19:05

Spartan117

Re : combien de temps ça vous a pris pour apprendre C ?

ouai c'est sur les pointeurs c'est quelque chose wink
mais c'est bien en langage C qu'est écris le noyau Linux non ?

Hors ligne

#7 Le 19/12/2006, à 20:10

kaworu

Re : combien de temps ça vous a pris pour apprendre C ?

Oui, et d'ailleur tous les kernels sont écris en C.


"There are in order of increasing severity: lies, damn lies, statistics, and computer benchmarks."

Hors ligne

#8 Le 19/12/2006, à 21:07

skateinmars

Re : combien de temps ça vous a pris pour apprendre C ?

kaworu a écrit :

Oui, et d'ailleur tous les kernels sont écris en C.

Faux.

http://isaacos.loria.fr/ par exemple

Hors ligne

#9 Le 20/12/2006, à 23:20

Link31

Re : combien de temps ça vous a pris pour apprendre C ?

Personnellement ça ne m'a pris que quelques mois pour maîtriser à peu près bien le C. Mais j'avais plusieurs années de Pascal derrière moi wink

Le C++ ressemble au C pour la syntaxe, mais il y a vraiment beaucoup de nouvelles fonctionnalités. la programmation objet n'est pas si difficile que ça (c'est juste plus long à écrire smile) mais il y a encore un tas de choses que j'ai du mal à apprendre. Les templates, la bibliothèque standard... Enfin ça viendra un jour. Pour l'instant je fais surtout du C (et encore du Pascal pour la programmation graphique, parce que Delphi/Lazarus permettent un développement assez rapide et efficace).

Hors ligne

#10 Le 20/12/2006, à 23:56

|-Corpse-|

Re : combien de temps ça vous a pris pour apprendre C ?

Le C reste un langage de programmation assez facile (et « primitif ») dans le sens où la conception de programmes se fait de façon logique par rapport à l'esprit humain. Cependant comme dit plus haut, ce n'est pas apprendre la syntaxe d'un langage qui est difficile, en particulier celle du C : if... then... else ; while... do.
C'est plutôt créer un code performant, logique et bien adapté au problème qui est difficile. Il faut savoir utiliser quels outils en quelles occasions, tenir compte de toutes les erreurs possibles et surtout (le plus chiant à mon avis) apprendre à débugger un programme. Le compilateur indique une erreur à la ligne 582 ? Ben 9 fois sur 10, c'est pas exactement là que se situe l'erreur...
Sinon comment commencer ? L'idéal est de suivre un cours, si pas acheter un bouquin et se fixer un but. Par exemple créer un programme qui fait le produit de 2 matrices en permettant à l'utilisateur de rentrer ses propres matrices, les vérifier, utiliser des pointeurs au lieu des tableaux, faire une fonction, etc.
A part ça, n'espère pas comprendre le code source du kernel avant quelques mois/années. Essaie déjà d'analyser un code source de quelques milliers de lignes (c'est-à-dire pas grand chose au sens d'un programme) et tu verras combien c'est difficile de piger ce que le programmeur a voulu faire.

Hors ligne

#11 Le 21/12/2006, à 00:04

Link31

Re : combien de temps ça vous a pris pour apprendre C ?

|-Corpse-| a écrit :

Essaie déjà d'analyser un code source de quelques milliers de lignes (c'est-à-dire pas grand chose au sens d'un programme) et tu verras combien c'est difficile de piger ce que le programmeur a voulu faire.

Oh oui wink
D'autant plus que le C est un langage "write-only" lol

|-Corpse-| a écrit :

C'est plutôt créer un code performant, logique et bien adapté au problème qui est difficile. Il faut savoir utiliser quels outils en quelles occasions, tenir compte de toutes les erreurs possibles et surtout (le plus chiant à mon avis) apprendre à débugger un programme. Le compilateur indique une erreur à la ligne 582 ? Ben 9 fois sur 10, c'est pas exactement là que se situe l'erreur...

En ce qui me concerne, je suis en train de programmer en C sur calculatrice TI-89, et c'est vraiment très bien pour apprendre à faire du bon code. Parce que la mémoire est limitée, parce que l'absence de MMU ne pardonne pas en cas d'erreur... C'est vraiment très enrichissant de programmer sur des petits systèmes.
Bien sûr il faut avoir une TI...

Hors ligne

#12 Le 21/12/2006, à 13:44

Spartan117

Re : combien de temps ça vous a pris pour apprendre C ?

okay je vois que le chemin de la liberté est long et larborieux tongue
tant pis j'ai toute ma vie pour y arriver
et est-ce qu'il y a un site où on peut récuperer les tout premiers kernel de sorte à suivre l'évolution du noyau, je pense que ce serai un bon moyen de comprendre "facilement" le code actuel, non ?

Hors ligne

#13 Le 21/12/2006, à 19:17

Link31

Re : combien de temps ça vous a pris pour apprendre C ?

Spartan117 a écrit :

et est-ce qu'il y a un site où on peut récuperer les tout premiers kernel de sorte à suivre l'évolution du noyau, je pense que ce serai un bon moyen de comprendre "facilement" le code actuel, non ?

Oui : ftp://ftp.kernel.org/pub/linux/kernel

Linux 0.01 :
ftp://ftp.kernel.org/pub/linux/kernel/Historic/linux-0.01.tar.bz2

Mais attention, le noyau 0.01 ne compilera pas. Il est fait pour une très ancienne version de gcc.

Enfin pour apprendre le C ça me semble un peu gros pour commencer. Même le noyau 0.01 n'est pas évident à comprendre quand on débute. Tu devrais commencer par faire des petits projets, regarder des tutos...

Hors ligne

#14 Le 21/12/2006, à 19:54

Spartan117

Re : combien de temps ça vous a pris pour apprendre C ?

oui bien sur tout ça ce sera dans un second temps

Hors ligne

#15 Le 21/12/2006, à 21:33

Francinou

Re : combien de temps ça vous a pris pour apprendre C ?

Le site du zéro! C'est très bien fait, et le cours de C++ est en cours de construction, mais de toute façon il commence par du C.

Hors ligne

#16 Le 21/12/2006, à 22:17

Enjoy Aspirin

Re : combien de temps ça vous a pris pour apprendre C ?

Assimiler les bases est une chose. Ca te permet assez rapidement de faire des programmes sympas mais très sommaires.
Acquérir la rigueur et la technique est incomparablement plus difficile. La difficulté est en dehors de la maîtrise de la syntaxe, qu'il s'agisse du C ou du C++.
Là un prof est nécessaire à mon avis. Il faut s'astreinde à faire beaucoups d'exercices.
Je pense sérieusement que c'est improductif et très frustrant d'apprendre le C++ tout seul. Surtout que le C++ est surtout une façon d'écrire le code avant d'être une syntaxe étendue du C. Ce que tu  n'apprendra pas seulement avec les bouquins.

Si tu veux t'amuser sans te prendre la tête avec les truc chiants (gestion de la mémoire etc) mais faire de vrais programmes, voici mon conseil en tant que non-informaticien "instruit" :

- phase 1 : apprendre le C et essayer de faire de petits programmes sans prétention. Ca te permettra d'avoir une culture générale en programmation (algorithmie, déboguage, représentation des nombres et des données, pointeurs)

- phase 2: apprendre le python. Cela te permettra d'aborder la prog. orientée objet, de faire de véritables interfaces graphiques. Et finalement de faire rapidement de véritables petits programmes. C'est très gratifiant. Le langage de prédilection du hackeur du dimanche à mon avis !


- phase 3:
être un génie et continuer dans la voie autodidacte sinon prendre des cours de C ou de C++ dans le supérieur.

Dernière modification par Enjoy Aspirin (Le 21/12/2006, à 22:29)

#17 Le 23/12/2006, à 13:50

Spartan117

Re : combien de temps ça vous a pris pour apprendre C ?

mouai mais je n'ai que les livres pour moi l'accès à un professeur n'est même pas envisageable dans un petit collège de banlieue parisienne classé en zone ZEP

Hors ligne

#18 Le 23/12/2006, à 14:37

Lord Alembert

Re : combien de temps ça vous a pris pour apprendre C ?

10 ans.

Hors ligne

#19 Le 03/01/2007, à 19:17

Spartan117

Re : combien de temps ça vous a pris pour apprendre C ?

??

Hors ligne

#20 Le 03/01/2007, à 22:24

Link31

Re : combien de temps ça vous a pris pour apprendre C ?

Lord Alembert a écrit :

10 ans.

Oui bon, il y a différents niveaux de maîtrise. J'ai entendu dire qu'on ne peut jamais prétendre maîtriser entièrement le C. C'est vrai qu'il est difficile de répondre précisément à la question de Spartan117...

Hors ligne

#21 Le 04/01/2007, à 00:34

Lord Alembert

Re : combien de temps ça vous a pris pour apprendre C ?

C'est tout le problème. Je dirais qu'il faut un an pour s'y retrouver et puis on peaufine toute sa vie.

On ne peut jamais dire qu'on maitrise totalement un langage, car ce n'est qu'un langage : on peut faire une infinité de chose avec, et pour chaque chose on peut se spécialiser. En plus tout dépend de la formation qu'on reçoit (internet, livre, ami, université, ...) et du temps qu'on y consacre ( 1h par jour? par semaine? non stop?).

Donc on peut dire que la question, telle qu'elle est formulée n'a pas trop de sens. Moi il m'a fallut un an pour que j'ai une bonne prise en main du programme, pour que je commence à sentir que je le "pousse". Après cela c'est du perfectionnement toute la vie durant.

Hors ligne

#22 Le 04/01/2007, à 14:08

Spartan117

Re : combien de temps ça vous a pris pour apprendre C ?

okay je vois ce que vous voulez dire

Hors ligne