[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Programmation Langage C



Le mardi 20 février 2007 10:26, Yves Rutschle a écrit :
> > P.S: Par contre je n'ai pas compris ce qu'il y avait de choquant à
> > apprendre le C avant le java, le python ou le perl etc... ???
> > Si quelqu'un peut m'expliquer?!
> Quand on apprend à programmer, les difficultés les plus importantes sont
> les découpages en algorithmes, en fonctions etc.
Je ne pense pas que les langages de haut-niveau soient utiles pour cela.
Il laissent passer trop de choses qu'il ne faut pas laisser passer au début.
Par exemple c'est en débordant de son tableau que l'on comprends l'utilité des 
conditions aux limites, la nécessité d'un critère monotone strict de boucle, 
de l'initialisation des variables, etc...

> En C, tu ajoutes un tas de difficulités liées au matériel (ou du moins à
> l'implémentation très bas niveau): on peut additionner 2 nombres
> positifs, et avoir un résultat négatif; on peut adresser un tableau
> n'importe comment et arriver n'importe où en mémoire; il faut des
> pointeurs (avec une syntaxe pas évidente) pour faire un tas de choses,
> etc. Et on ne parle même pas de la gestion de la mémoire, où tout est
> fait à la main.
Ce sont pour moi des concepts fondamentaux qu'il est essentiel d'avoir 
expérimenté (clou,marteau,main...). 9 * (2 / 3) = 0 et (9 * 2) / 3 = 6...

> Ces difficultés n'apparaissent pas dans des langages de plus haut
> niveau, où un nombre est un nombre, où l'on aggrandit les tableaux comme
> il faut etc, tout ça automatiquement
Jusqu'au moment où cela ne se passe pas comme prévu parque la machine ne 
travaille pas de cette manière ; et dans ce cas, il devient très compliqué de 
comprendre pourquoi.

Il est AMHA fondamental de comprendre que la machine ne travaille pas 
exactement comme l'humain AVANT d'aborder les langages de haut-niveau.
Il n'est pour moi nullement besoin d'être bon en C pour aborder le reste des 
langages, l'avoir expérimenté un peu me semble suffisant.

Combien de gens utilisent-ils un nombre incalculable de threads (dans les 
langages de haut-niveau) sans se préoccuper nullement des modalités d'accès 
aux ressources partagées ?

> Y.
Cordialement,
-- 
Eric DÉCORNOD
Ingénieur d'Études
SCICS - Faculté des Sciences
Université Henri Poincaré



Reply to: