Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Quel langage de programmation choisir pour débuter ?
Un développeur donne son avis et compare neuf langages aux personnages du Seigneur des anneaux

Le , par Olivier Famien

258PARTAGES

7  1 
Avec l’explosion des technologies de l’information, nombreuses sont les personnes qui désirent changer de métier ou souhaitent simplement apprendre un langage de programmation. Bien que programmer puisse être défini aussi simplement qu’écrire un programme, choisir un langage de programmation pour faire ses premiers pas dans l’environnement informatique, n’offre pas toujours cette même aisance.

À bien des égards, l’on a maintes fois entendu de la part de débutants la question lancinante, avec quel langage de programmation devrais-je débuter ?

Certaines personnes pourraient suggérer le langage C, tandis que d’autres mettraient en avant C++. D’autres par contre conseilleraient java tandis que quelques orienteraient une personne parce qu’ils ont eu une bonne expérience avec ce langage. En somme, l’unanimité serait la chose la moins partagée si l’on devait demander l’avis de chacun pour conseiller un langage de programmation à un débutant.

Toutefois, pour Carl Cheo, un développeur de logiciels et passionné des technologies, a voulu répondre à cette question avec une approche différente. Pour Carl, la première question qu’une personne souhaitant embrasser la programmation doit se poser est « pourquoi souhaitez-vous apprendre la programmation ? ».

Cette réponse étant variable selon les motivations, Carl a pris sur lui d’éditer un schéma intégrant plusieurs variables possibles associées à neuf langages de programmation (Python, Java, C, C++, JavaScript, C#, Ruby, PHP, Objective-C).

Ainsi, si vous souhaitez vous lancer dans l’écriture du code à cause de vos enfants, le diagramme suggère de débuter avec python. Si vous n’avez aucune idée, le diagramme vous suggère de commencer avec python. Si vous voulez juste vous faire de l’argent, les choix vont varier en fonction des plateformes. Pour le mobile, il serait souhaitable de débuter avec java si on a un projet en tête ou Objective-C si on souhaite mettre en œuvre une application pour la plateforme iOS.

Si vous voulez obtenir un emploi dans le domaine du Web, JavaScript est le mieux adapté et si vous souhaitez travailler dans de grandes entreprises telles que Google, Facebook, Microsoft ou Apple, il va falloir se spécialiser dans le langage mis en avant par la firme. Pour Google et Facebook par exemple, apprendre Python serait un avantage tandis C# serait une évidence pour celui qui souhaite entrer chez Microsoft, là où Objective-C serait requis pour celui qui a des projets pour intégrer l’équipe d’Apple. Pour plus de détails sur les langages de programmation, vous pouvez consulter le schéma ci-dessous.


À côté de ce diagramme détaillant l’orientation d’un débutant vers un langage en fonction de plusieurs critères, Carl a également conçu un tableau descriptif associant ces neuf langages aux personnages du film " Le Seigneur des anneaux " afin d'aider les débutants à se faire une opinion personnelle de chaque langage pour porter leur dévolu sur celui qu'ils préfèrent.

Comme premier élément du comparatif, on retrouve Sylverbarbe, l’Ent qui est un personnage qui aida Hobbits (le débutant) dans le film. Il s’apparente ici à Python dont le niveau de difficulté est le plus bas des neuf langages avec une note de 1/5. Il est décrit par Carl comme étant le plus facile apprendre et le meilleur langage pour les débutants.

Java est représentée par Gandalf qui veut la paix et travaille avec tout le monde. Le critère de corrélation avec ce personnage est le fait que Java est portable. Carl le décrit comme un langage très populaire sur toutes plateformes et fait partie des langages les plus demandés et les mieux rémunérés. Il donne la note de 3/5 comme niveau de difficulté.

C++ est représenté ici par Saroumane que tout le monde pense qu’il est le bonhomme. « Mais une fois que vous apprenez à le connaitre, vous réaliserez qu’il veut le pouvoir », cite Marc. Il décrit ce langage comme une version complexe de C avec beaucoup plus de fonctionnalités et le recommande uniquement si vous êtes assisté par un mentor.

C# est considéré comme l’Elf qui est assez beau comme le langage d’ailleurs et utilisé dans leur terre Rivendell (la plateforme Microsoft), mais a récemment commencé à s’ouvrir aux voisins (open source). Il est largement adopté en entreprise pour créer les sites web et les applications Windows avec le framework .net. Il est assez proche de java dans les syntaxes de base et quelques fonctionnalités. Marc considère que son niveau de difficulté est de 3/5.

Ojective-C est associé à Smaug qui est un dragon seul aimant l’or. C’est le langage primaire utilisé par Apple pour OSX et iOS. Marc le recommande si vous souhaitez vous focaliser sur ces deux plateformes. Toutefois, vous devrez envisager l’apprentissage de Swift, son nouveau langage rendu open source.

JavaScript est considéré comme le Hobbit dont la puissance est fréquemment sous-estimée. C’est l’un des langages les plus en vogue à présent. Carl lui donne la note de 2/5 pour ce qui concerne son niveau de difficulté.

Enfin, nous avons C qui est considéré comme un anneau. Tout le monde connait sa puissance et désire l’obtenir. Il est décrit par Carl comme l’un des plus vieux et les plus utilisés langages au monde. La note de 3/5 comme niveau de difficulté lui a été donnée.

Vous pouvez consulter la description complète des neuf langages et la comparaison avec les différents personnages du film à cette page.

En fin de compte, Carl termine son argumentaire en affirmant « qu’en fait, la manière dont vous débutez importe peu. Vous devez connaitre au moins quelques langages pour comprendre le concept sous-jacent. Juste mouillez-vous les pieds ».

Source : Blog Carl Cheo

Et vous ?

Que pensez-vous de l’avis de Carl sur la question ?

Êtes-vous d’accord avec lui ?

À quoi pouvez-vous comparer les langages de programmation pour mieux les définir ?

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Neckara
Expert éminent sénior https://www.developpez.com
Le 01/07/2015 à 12:53
Si cela continue, la question ne sera plus "Quel langage de programmation choisir pour débuter ?" mais "Quel article, expliquant quel langage de programmation choisir pour débuter, choisir ?"
8  0 
Avatar de athrus
Membre à l'essai https://www.developpez.com
Le 01/07/2015 à 11:18
HS : Parfois il serait bien pratique d'avoir des images sur lesquels on peu zoomer... à bon entendeur.
8  2 
Avatar de SylvainPV
Rédacteur/Modérateur https://www.developpez.com
Le 01/07/2015 à 10:43
Citation Envoyé par plegat Voir le message
ça va de toute façon finir en troll.
Si PHP est un orc, qui est le troll ? Zend Framework ?
5  0 
Avatar de CodeurPlusPlus
En attente de confirmation mail https://www.developpez.com
Le 11/07/2015 à 14:17
Donc quelqu'un qui aurait suivi des cours de programmation ne sera jamais un grand développeur ?

Purée, il faut vite fermer toutes les écoles d'informatique !

(Ou leur demander de remplacer leurs cours de programmation par, mettons, des cours de peinture)
5  0 
Avatar de Lordsephiroth
Membre confirmé https://www.developpez.com
Le 01/07/2015 à 9:28
J'ai bien rigolé en lisant cette infographie que je trouve plutôt réussie. Il y a un fond de vérité mêlé à un peu d'humour potache, et j'en trouve le message subtil et intéressant. La comparaison de PHP avec les orques et d'Objective-C avec Smaug m'ont particulièrement fait rire. Le dragon Apple qui vit dans une montagne remplie d'or...
4  0 
Avatar de SylvainPV
Rédacteur/Modérateur https://www.developpez.com
Le 01/07/2015 à 21:08
Citation Envoyé par derderder Voir le message
Et le javascript, pur il a tellement mauvaise réputation que vanillaJS a du être créé.
Soit tu es un troll, soit ton cas est vraiment désespéré. Dans les deux cas merci pour la rigolade
4  0 
Avatar de Pierre Louis Chevalier
Expert éminent sénior https://www.developpez.com
Le 17/06/2016 à 17:20
Citation Envoyé par jfrow Voir le message
Bonjour,
J'ai lu avec attention l'article, le schéma et les commentaires émis par chacun de vous... personne n'évoque MYSQL, notamment si l'on envisage d'écrire un programme de comptabilité... que pensez-vous de ce langage d'une façon générale et plus spécifiquement pour l'application envisagée? Merci pour vos avis éclairés JF
MySQL n'est pas un langage mais un SGBD, voir la rubrique MySQL.
Pour faire des applications de gestion, ou applications bases de données au sens large il faut effectivement avoir été formé sur les bases de données, c'est ce qui est fait pendant la formation des développeurs, du Bac+2 au Bac+5. Tu commences par les généralités sur les bases de données, par exemple avec les Cours SGBD puis tu apprends le langage SQL : Cours SQL. Pour choisir une base de données : Le Comparatif SGBD.

Une formation de développeur professionnel c'est généralement au moins deux ans, par exemple en DUT informatique. Pour une formation plus avancée avec potentiel d'évolution vers l'encadrement comme chef de projet ou autres poste de direction c'est école d'ingénieur en informatique (CTI) ou Master en informatique en Fac, pour obtenir un Bac+5, ce qui est le plus recherché par les entreprises.
3  0 
Avatar de vanquish
Membre éprouvé https://www.developpez.com
Le 01/07/2015 à 9:37
Un diagramme est plus intelligent qu'une affirmation péremptoire.
Mais le diagramme mélange 'débuter' et 'apprendre' : ce qui n'est pas forcement la même chose.

Débuter avec un projet web : javascript n'est guère un choix, mais une quasi obligation avec un autre langage dont le choix risque fortement d'être guidé par l'hébergement.
Apprendre la programmation : javascript est probablement le pire des professeurs tant il est permissif et va vous faire prendre de mauvaises habitudes.
(On peux écrire un beau code javascript, mais mieux vaux être passé par vrai langage objet obligeant à un peu de rigueur avant.)
3  1 
Avatar de ScriptorTux
Membre régulier https://www.developpez.com
Le 01/07/2015 à 9:41
Je trouve que les images/comparaisons sont plutôt intéressantes l'idée d'avoir pris le seigneur des anneaux comme comparaison est à mon avis assez marrant et réussie
De plus je trouve son diagramme très esthétique, même si il est pas très ordonné
2  0 
Avatar de vinmar
Membre confirmé https://www.developpez.com
Le 01/07/2015 à 10:23
L'idée est plutôt originale et à prendre au second degrés...

Deux choses :
- tout un graphique pour dire que php c'est nul et python c'est cool...
Je crois que oui, le mec n'est pas fan de PHP.

Après il n'y a que PHP que je ne recommanderai pas tant on voit passer du code sale du à sa trop grande souplesse, en espérant que la prochaine version fasse mieux.
De manière général, je constate régulièrement sur les fils de discussion de développez.com un bashing sur PHP relativement agaçant. Surtout que ta remarque est vraie pour tous les langages.
5  3