tout le monde, j'aimerais avoir votre avis sur le langage à apprendre pour débuter la programmation.
Selon vous faut-il apprendre le C ou le Pascal?
tout le monde, j'aimerais avoir votre avis sur le langage à apprendre pour débuter la programmation.
Selon vous faut-il apprendre le C ou le Pascal?
j'aime la rigueur qu'apporte Pascal... ça me semble beaucoup mieux pour commencer la programmation procédurale
Pascal est un langage académique à typage statique explicite, qui fut longtemps le langage le plus enseigné...
Il a l'avantage d'être assez complet pour réaliser des vrais projets, et suffisamment rigoureux pour détecter énormement d'erreurs à la compilation... un point très appréciable
après, tu entendras pas mal de monde dire que son successeur en France, OCaml, est 100 fois mieux avec des arguments plus ou moins valables... il faut surtout te dire que Caml s'est imposé dans les prépas à cause du niveau assez faible des profs qui y enseignent l'informatique, de son paradigme principalement fonctionnel facile à enseigner aux enseignants matheux, et d'un fort lobbying de la recherche française pour diffuser ce langage
je ne renie pas les qualités évidentes d'OCaml et la beauté de l'inférence de type... toutefois, je continue de penser qu'enseigner avec Pascal n'est pas un mauvais choix, parce qu'il oblige les élèves à refléchir aux types qu'ils utilisent. sinon on se retrouve dans une situation telle qu'on voit souvent en master : beaucoup d'élèves sont très bons sur le papier, assez moyen avec Caml, et totalement ignorant de ce qui sort d'un cadre purement académique (car formaté au fonctionnel avec inférence de type)
en ce qui concerne le C, je pense que beaucoup commencent par ce langage car ils n'auront pas forcemment le choix d'en apprendre d'autres lors de leur cursus![]()
J'ai entendu que le C étant réputé pour sa précision, sa portabilité et sa souplesse, il est beaucoup plus conseillé dans les débuts de programmation histoire de données de bonnes habitudes aux programmeurs.
Qu'en dites-vous?
Bonjour,
Le langage pascal est le langage par lequel j'ai débuté et je te le conseil pour la maîtrise de l'algorithme mais surtout pour etre roder dans la syntaxe, oui parce pascal est très strict dans la syntaxe, ce qui donne une rigueur faramineuse.
Maintenant venons en au C, ce langage là est le langage universel car grâce à lui tu arriveras à te débrouiller sans effort dans d'autres langages qui tu voudras attaquer plus tard et aussi C est le langage le plus proche de la machine et en même temps compréhensible par l'homme. Avec ce langage tu comprendras très facilement comment fonctionne la mémoire, un ordinateur en général. Il est tres complet, tres fascinant on fini pas de découvrir ses avantages.
En somme apprends a être rigoureux dans tes codes ( Pascal),
Et comprend par la suite ce que tu demande à la machine (C).
Pascal est le chemin qui te conduira au C et le C à l'ouverture du monde de codeur
C is life...![]()
En fait, moi j'ai appris à programmer avec le langage C, puis par la suite le Pascal lors de mon initiation à Delphi.
Je pose le problème à cause de la différence des langages enseignés aux débutants dans nos écoles.
si t'as commencé par le C alors plus besoins du pascal, d'ailleurs tu t'en rendras compte toi meme,
concernant l'informatique en CI c'est un peu regrettable mais je trouve qu'il n'y a pas tellement une grande cohérence dans le programme d'enseignement, pas de logique suivi meme si c'est pas partout...![]()
Envoyé par wikipedia
Tu as ta réponse.Envoyé par wikipedia
la deuxieme citation je pense que c'est bien su C que tu parles n'est-ce pas?
Merci![]()
Que commencer par le C produit en général des développeurs médiocres pour tout ce qui concerne la rigueur et l'algorithmique... Et leur code n'est pas souvent "meilleur" que celui des gens plus rigoureux, mais il est largement moins maintenable en général.
Pascal (ou Delphi) est strict, certes, mais c'est une rigueur que je qualifierais de normale, c'est le C qui est laxiste à ce sujet (C++ est mieux, mais bon... pas encore ça).
Quant à l'utilisation de "faramineuse"... Essaie un jour l'ADA, tu sauras ce que le mot "strict" veut réellement dire...
Ceci est par contre un très bon conseil.
Mouais : je préfère quand même faire mes IHM en Delphi qu'en C, elles explosent nettement moins qu'une IHM sous Visual/MFC dès qu'un truc bouge...![]()
J'aurais tendance à dire pour commencer qu'il vaut mieux choisir Pascal par rapport au C qui va vite perdre un débutant.
Par contre en dehors des deux je trouve que le mieux pour débuter en restant dans l'esprit Pascal, c'est ADA. Les outils sont plus sympa et le langage intègre pas mal de notions intéressantes pour migrer ensuite sur autre chose (objet, généricité , pointeurs)
Travaillant dans le domaine de l'embarqué depuis une durée supérieure à l'age d'une grande partie des contributeurs de ce forum, on pourrait croire que je sois tenté de conseiller le C aux débutants. Eh bien, NON, SURTOUT PAS. Aujourd'hui, la précision, la portabilité et la souplesse sont certes irremplaçables dans les domaines système / embarqué, mais ces domaines sont, plus encore que des jolies zinterfaces graphiques ou autres sites webz bitoubi, soumis à des contraintes de fiabilité, sécurité, couts de développements particulièrement sévères.
Et malheureusement, j'ai trop souvent observé qu'un programmeur qui apprend en commençant par le C sera beaucoup moins bien placé pour l'utiliser au mieux de sa puissance que quelqu'un ayant appris à programmer dans un langage plus moderne.
L'équipe que je dirige actuellement comprend certes quelques vrais vétérans du C, qui ont effectivement appris en commençant par le C, et qui sont des professionnels exceptionnels. Cependant, leur performance vient d'abord du fait qu'ils ont été confrontés, en tant que professionnels déjà aguerris, à toutes les évolutions de notre métier au cours des années. L'impact de l'apprentissage initial s'est donc estompé (l'un d'entre eux a d'ailleurs commencé en FORTRAN avant le C).
En revanche, pour les plus jeunes, ceux qui ont commencé en C ne sont pas toujours à la hauteur. Je dois dire par exemple que les trois jeunes permanents de l'équipe formés en Java sont bien meilleurs en C++ que ceux qui ont commencé en C! Je n'ai pas d'exemple personnel de collègue ayant démarré en Pascal, mais je pense que l'effet serait le même: d'abord, il faut apprendre à programmer, voire à bien programmer, et ensuite, lorsqu'on devient un professionnel avec de vraies échéances et des conditions plus sévères qu'en période d'apprentissage, il faut être capable d'utiliser l'outil le plus approprié à la tâche, qui peut fort bien ne pas être un langage sympa comme Java ou Pascal.
Mon expérience personnelle est peut-être biaisée par le domaine où je travaille (tout de même supposé être le domaine de prédilection du C), mais je préfèrerais de très loin avoir des jeunes formés sur Java, C++ (à condition d'avoir sauté la case C), ou Pascal/Delphi.
Je n'ai pas eu la chance de connaître le C dès le début de mon apprentissage de la programmation mais actuellement je l'enseigne à élèves de seconde (on en est au 5ème mois avec 2 séances de 2 heures par semaine) et je n'ai pas encore rencontré d'élève qui s'est plaint. Au contraire, ils adorent.
En fait, l'enseignement du C doit toujours s'accompagner, je pense, d'un cours (même assez superficiel) d'architecture des ordinateurs et des systèmes d'exploitation. Lorsque l'élève comprend ce que c'est qu'un ordinateur, de quoi est-ce constitué, et ce que c'est qu'un OS, il n'aura pas du mal à ingurgiter du bon C.
Apprendre en quoi le C est bordélique et permissif, et oublier les trucs un peu "sauvages" genre variables globales, casts permissifs, non-respect stricts des types, etc...
Bref, apprendre le C++ "strict" (peu conseillé, trop proche du C), le Java, le Pascal ou autre langage strict, en comprendre l'intérêt et la philosophie, puis la réappliquer au C.
De même, bien qu'ayant commencé par le C, je ne suis pas bien sur que ce langage soit le meilleur pour apprendre.
En C, quand on a une erreur de conception, on peut souvent s'en sortir avec un hack horrible. Et du coup, c'est ce qu'on apprend a faire au début car on est nul en conception. Du coup, on progresse plus en hack foireux qu'en conception.
Et on se met naturellement a pondre du code tout plein de hack modélisé à l'arache pouette (expression maison, pardonnez moi).
J'ai vu par la suite divers autres langages, qui ont grandement améliorer ma façon de penser le programme que je suis en train de faire.
Maintenant, mon langage de prédilection est le C++, car on peut tout faire (et comme je l'ai lu je ne sais plus ou ici, on peut même récupérer la balle qu'on s'est tiré dans le pied). Mais c'est un langage pour programmeur ayant déjà une bonne expérience, sinon, c'est le bananage assuré.
Par contre, je ne suis pas sur que le PASCAL soit bien meilleur. Je me permet donc de proposer un autre type de langage.
Pour moi, le meilleur pour commencer est un langage plus haut niveau tel que ruby ou python. Ce sont des langages qui permettent de programmer sans trop se poser de soucis techniques, et de développer une modélisation moderne, ce qui est bien moins évident en PASCAL.
perso j'ai commencé avec le basic (tout petit sur amstrad/mo5/to7)
j'ai vu un peu de pascal pendant le lycée/prépa et ensuite du C
il est clair que pour pouvoir enseigner avec le C il faut ajouter beaucoup de rigueur je pense car le langage est assez permissif et plus un langage est permissif plus il faut etre rigoureux pour faire un truc stable.
Pour trouver un language qui est strict je rejoins certains il faut aller du coté de l'ada (j'ai pratiqué l'ada 83 a un moment) d'ailleurs pour l'enseignement ce langage serait pas mal je trouve. il inclu le multitache dans sa syntaxe, il a un typage strict des données, il n'est pas tres eloigné de l'objet que l'on retrouve probablement dans les versions suivante (ada 95,...) et il a une syntaxe claire et lisible.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager