Mon dieu....
Je ne sais pas parler l'allemand. J'ai totalement oublier l'espagnole et l'anglais.
Pourtant, je code en JAVA, C++, C, PHP, JEE, .NET (C#, VB, ASP)...
Et je trouve plus simple d'apprendre un langage de prog, plutôt qu'une langue...
Mon dieu....
Je ne sais pas parler l'allemand. J'ai totalement oublier l'espagnole et l'anglais.
Pourtant, je code en JAVA, C++, C, PHP, JEE, .NET (C#, VB, ASP)...
Et je trouve plus simple d'apprendre un langage de prog, plutôt qu'une langue...
Je pense qu'un langage de programmation n'est pas comparable à un langage humain...
En premier lieu le langage humain est un vecteur d'information entre des êtres intelligents, capables d'abstraction et d'interprétation. Un langage humain sert à informer, échanger des idées, formuler des sensations, exprimer des sentiments... Un langage informatique sert quant à lui à formaliser un ensemble d'instructions destinées à être exécutées par une machine. La machine ne pense pas et ne ressent pas, elle se contente juste au final d'exécuter ce qu'on lui demande de faire à travers une série de 1 et de 0.
Le langage humain est intimement lié à la pensée. Il n'y a pas de pensée sans mot. Par ailleurs le langage humain s'exprime dans un contexte... selon des circonstances, selon une intonation... Des mots identiques peuvent parfois avoir des sens très différents. Et puis... avez-vous déjà essayé d'exprimer la colère, la compassion, ou encore l'ironie en javascript, en php ou en C++ ?
Un langage de programmation est une formalisation du langage humain. C'est un modèle de pensée intermédiaire entre le langage humain et le langage machine, binaire. On distingue d'ailleurs des langages de haut niveau, un peu plus proches de la pensée humaine (comme les langages objet), des langages de bas niveau.
L'apprentissage d'un langage de programmation (mots, syntaxe, mais aussi bibliothèques, architectures...) est davantage comparable à l'apprentissage d'une mathématique. Car de la même manière, les mathématiques sont un modèle de pensée intermédiaire entre le langage humain et la réalité physique du monde.
EDIT : je ne suis pas neurobiologiste, mais je parie que lorsqu'on "pisse" du code et lorsqu'on s'essaye à demander son chemin à Londres, ce ne sont pas les mêmes régions du cerveau qui sont sollicitées.
je pense perso que cest une mauvaise comparaison.
quand on apprend son premier language de programmation cest plus semblable a developper un 6eme sens.
quand ce 6eme sens est developpé et quon a maitrisé tout les subtilités de la programmation avec un "bon" language, disons le java et qu'on veux ensuite apprendre le c# exemple...
sa peux prendre 2semaine et personellement tu peux codé pas mal n'importe quel language intuitivement quand tu connais la base sans avoir besoin de l'apprendre... Contrairement a apprendre l'espagnol qui pourrai prendre des mois pourquoi ?
parce que les languages comme le francais, l'anglais, l'espagnol etc... n'ont aucune logique et base commune entre eux, tandis que les langues de programmation sont GÉNÉRALEMENT structuré de la meme facon.
Prend plutôt le français, le chinois et le russe comme exemple de langage, et non pas des langues d'origines latines. Parce que justement par leur origine, elles ont une logique et base commune.
THIS!IS!NOT!MY!COW!
CECI!N'EST!PAS!MA!VACHE!
(mais je persiste à dire que c'est moins classe en français )
Autre piste que j'avais oubliée (honte à moi) : les travaux de Noam Chomsky sur les langages formels, et les travaux dérivés sur les sciences cognitives, l'apprentissage et la pratique des langages.
Si on se place au niveau de l'apprentissage d'une grammaire, d'une syntaxe et d'un vocabulaire (i.e. les mots clés), alors on peut y voir une certaine analogie. Seulement, dans ce cas, on a réduit les langues naturelles (vivantes ou mortes d'ailleurs) à leur expression la plus réduite et totalement dénuées de sens : la pensée, le sens commun, l'histoire, les tons, les sentiments, ... sont ignorés, alors qu'ils constituent la quasi intégralité de ce qui fait la difficulté d'une langue.
En premier lieu, utilisez un moteur de recherche.
En second lieu, postez sur le forum adéquat !
Personnellement, je pense que c'est totalement faux.
Pour moi la seule chose en commun entre un langage de proprammation et le langage humain est le terme "langage".
L'un comme l'autre se basent sur une grammaire et un vocabulaire.
Mais n'oublions pas que les livres de grammaire et les dictionnaires sont venus après le langage oral. D'ailleurs on distingue les livres de grammaires normatives des livres de grammaires descriptives.
Par contre, pour un langage informatique c'est plutôt le contraire, impossible de créer un programme informatique correct sans avoir établit les règles sous-jacentes.
On peut très bien communiquer dans une langue sans pour autant avoir étudier un livre de grammaire ou un dictionnaire. Pour preuve, mon frère est handicapé mental, il a commencé seulement à communiquer à partir de l'âge de 30 ans, et pourtant il ne sait ni lire ni écrire. Il n'a jamais appris les règles de grammaire et de conjugaison. Comment a-t-il appris ? Je pense que le rôle de son environnement a dû jouer (télévision, conversations extérieurs). Certes, il ne deviendra pas homme politique, mais il communique.
Me concernant, j'ai commencé à améliorer mon niveau d'anglais, en abandonnant les méthodes classiques apprises à l'école (collège, lycée). En m'imprégnant par l'écoute et la lecture de contenus intéressants et compréhensibles.
Le problème avec la méthode académique est qu'elle privilégie surtout l'écriture (exercices et tests). Certes, il faut une base lexical solide, mais je pense que se concentrer uniquement sur cette méthode ne risque pas de faire de nous des personnes communiquant avec aisance et confiance.
Du collège au lycée, je n'ai fait que cela, exercices sur exercices, travaux de compréhension de textes sur travaux de compréhension de textes, ma moyenne d'anglais était autour de 16 sur 20.
Par contre, niveau oral, quel catastrophe, sachant qu'en moyenne une classe de langue contient entre 25 et 30 élèves, et qu'un cours dure en général 1 heure (non pleine), je doute fort qu'au bout d'une année scolaire que chaque élève ait pu avoir au moins une trentaine d'heures de paroles.
Pour moi, l'apprentissage d'une langue étrangère doit commencer par la compréhension orale, ensuite écrite. Mais surtout, le plus important, faire en sorte que le contenu soit motivant et varié.
Selon moi les contenus académiques c'est bon les trois premières années mais ensuite, il y a de quoi démotiver le plus travailleur, car trop ennuyeux. Une langue vivante est censé être vivante.
Enfin, pour terminer, je dirai que le professeur est là uniquement pour guider et motivé l'élève. Lui donner des conseils sur des contenus appropriés à son niveau, ensuite c'est à l'élève de s'impliquer dans l'apprentissage de la langue.
Je ne pense pas que l'on puisse apprendre une langue étrangère comme une autre matière tel que les maths, la physique ou la littérature, matières où la présence du professeur est essentiel. Alors que pour une langue, il ne l'est que pour les bases.
Voilà mon point de vue.
Edit :
La grosse différence est qu'un langage informatique (plutôt le compilateur) tel que le C va râler si vous oubliez de fermer une accolade, un point virgule ou si vous écrivez "scan" au lieu de "scanf". Il est pas aussi tolérant qu'un interlocuteur humain où ce dernier s'intéressera au contenu du message avant tout (même si vous avez fait des fautes d'accords à l'oral ou de conjugaison).
De plus, je n'ai jamais eu l'impression de communiquer avec mon PC, c'est juste un "simple" programme. Entre un utilisateur et une machine il y a juste un semblant de communication (un échange d'informations), le programme est là essentiellement pour résoudre un problème. Contrairement à la communication inter-personnelle où chaque interlocuteur exprime des idées, des informations, des sentiments.
Je plussois largement, et me pose exactement la même question concernant l'activité cérébrale d'un développeur.
Un détail qui me concerne, mais qui d'après un prof d'anglais est assez courant : je peux penser en anglais, et lors d'une discussion, je n'ai pas besoin de traduire ce que me dit mon interlocuteur. SAUF pour les nombres. Je suis absolument incapable de comprendre un nombre en anglais : je suis obligé de le décomposer et de le traduire (ce qui me fait perdre le fil de la discussion).
Ce phénomène est semble-t-il assez fréquent, et est dû au fait qu'on n'utilise pas les mêmes zones pour la langue "courante" que pour les nombres.
Je pense qu'on peut en déduire que "comprendre un nombre en anglais" est qque chose de différent de "parler en anglais".
Alors, comparer "apprendre l'anglais" avec "apprendre le C++"...
Yvan
Une solution n'est valable que dans un contexte donné
C'est totalement erroné !
On ne peut comparer un langage de programmation à un langage humain !
Je marche avec tous ceux dise non. Dans le sens qu'un langage humain a une plus grande complexité, avec un très grand dictionnaire de mots, une sémantique complexe pouvant variée selon le ton et prononciation, dans certains cas. Et une possibilité de détour comme l'ARGO et le mode contracté, ... Les possibilités sont énormes, aussi le temps et l'effort d'apprentissage est grande et très différentes.
Un enseignant dit : "Apprendre un langage de programmation revient à apprendre la signification de ses mots natifs et leur agencement".
Là encore, il est important de noter que les langages de programmation se limitent à l'écriture tandis que les langages humains vont jusqu'au parler : avec étude de phonétique, ton et autres.
Comparer ce qui est comparable c'est le début de la sagesse.
Et non : "Y a -t- il une différence entre un pain et un peigne ?"
Essor me dit : "Un clavier AZERTY booste le code mais ce n'est pour mettre des accents."
http://code.code/
Ah je viens de remarquer qu'il est en réalité beaucoup plus simple pour un très bon linguiste d'apprendre une nouvelle langue, Daniel Jackson y parvient en moins d'une minute avec seulement un texte ancien de plusieurs millénaires retrouvé sur une planète morte à des années lumières de notre galaxie. On ne peut pas lutter contre ça :/
Infinity - To The Top, shoot'em up développé en Haxe / OpenFL pour FLASH et Android, piou piou rythmé dans l'espace
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