Contenu | Rechercher | Menus

Annonce

Ubuntu 16.04 LTS
Commandez vos DVD et clés USB Ubuntu-fr !

Pour en savoir un peu plus sur l'équipe du forum.

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.

#276 Le 15/10/2017, à 09:39

abakkk

Re : Petit guide pour aider au choix d'un langage

Je pars du principe que ce sujet s'adresse aux gens qui ne sont pas dans une démarche professionnalisante ou universitaire. Des gens qui ne veulent pas mourir bêtes et qui cherchent à mieux comprendre le monde qui les entoure, à devenir plus autonomes en informatique.

On ne le répétera jamais assez : on apprend la programmation en pratiquant. Apprenez un langage et laissez le de côté 6 mois, il vous deviendra étranger et il ne subsistera que quelques bases d’algorithmie. Il faut être confronté à des problèmes, chercher, faire des erreurs, etc. C'est vrai partout mais cela prend tout son sens en programmation. Tous les cours dignes de ce nom proposent des exercices mais il faut bien avouer que quand on apprend en roue libre, c'est à dire quand on est pas dans un cursus contraignant de formation, il est parfois difficile de se motiver à faire avec application ces exercices qui nous semblent ennuyeux et rébarbatifs. A partir de là on peut affirmer que le seul critère qui compte est l'utilité immédiate du langage. Comment je vais pouvoir mettre en pratique mes connaissances au fur et à mesure de mon apprentissage ? C'est pourquoi je conseil de ne pas choisir un langage, mais de choisir un projet dans lequel on veut s'impliquer et de laisser celui-ci dicter le choix du langage.

Les possibilités de manquent pas. Si on veut faire un site, on s'orientera vers html/css puis javascript, qui est assez neutre dans sa syntaxe, et peut-être php par la suite. La programmation avec Ardiuno et Raspberry est aussi une bonne porte d'entrée. Il existe tout un tas de tutoriels avec des applications diverses et variées allant de la domotique à l'hébergement d'un service sur un serveur. Une autre bonne idée est de faire un plugin pour personnaliser un logiciel qu'on aime bien. C'est très motivant. Le langage sera alors généralement imposé par le logiciel. Le logiciel en question peut par exemple être un environnement de bureau. Même un environnement très sophistiqué comme Gnome, qui va prochainement être celui par défaut sur Ubuntu soit-dit en passant, encourage le développement d'extensions simples (en javascript) pour changer ou personnaliser le shell. D'ailleurs rien n'interdit de personnaliser une extension elle-même ... Il est à noter qu'il existe aussi des façons accessibles à tous de faire des petites applications utilitaires avec interface graphique en Qt ou GTK. Ce qui m'amène à évoquer les langages de shell si on a envie d'administrer son pc.

Pour ceux qui avancent en terrain totalement inconnu, Python est un langage dont la syntaxe très naturelle pour un humain (à tel point qu'il en devient intimidant quand on est habitué à faire reposer notre rigueur sur une syntaxe rigide) permet de se concentrer sur l'algorithmie. En outre c'est un langage extrêmement puissant, dans le sens où avec très peu de connaissances et de lignes de code, on peut aboutir à un programme qui fait quelque chose de tangible. Les cas pratiques ludiques ne manquent pas et un script python peut s'exécuter très facilement sur n'importe quel système, avec une quantité de bibliothèques portée partout qui surpasse de loin tous les autres langages. D'ailleurs c'est le langage de prédilection de ceux qui sont amené à la programmation, non par goût mais par nécessité pratique, comme les scientifiques.

Enfin, s'agissant de ceux qui veulent apprendre le C, langage au combien important pour un programmeur mais aussi au combien inutile pour des amateurs comme nous, il existe un MOOC formidable ! Celui de Rémi Sharrock sur la plateforme fun-mooc, "ABC du langage C". C'est accessible à tous, très bien expliqué et tout se fait dans le navigateur grâce à des vidéos interactives où on peut prendre la main sur le code quand on veut (outil Codecast). Vraiment il faut essayer pour le croire. Il y a une ou deux sessions par an, la prochaine n'étant pas encore définie.

Dernière modification par abakkk (Le 15/10/2017, à 09:43)

Hors ligne