Programmer ========== .. contents:: :local: Pourquoi apprendre à programmer? -------------------------------- Les gouvernements, les entreprises, les associations du domaine informatique et les faiseurs de tendances affirment tous la même chose: l’apprentissage de la programmation jouera à l’avenir un rôle clé. Dans ce contexte, le mouvement est souvent présenté comme une panacée aux problèmes du marché du travail au XXIe siècle. Entre les 9 et 15 décembre 2020, des éducateurs, des étudiants et des membres du public des quatre coins du monde ont participé à la `Semaine de l’enseignement de l’informatique `_ en organisant et en animant des tutoriels de `l’Heure du Code. `_. Plus de 2 700 activités de codage ont eu lieu et figurent déjà au répertoire de `Code.org `_, un organisme sans but lucratif américain qui assure la promotion de l’événement annuel. Ce dernier incarne l’esprit du mouvement pour l’apprentissage de la programmation et entend motiver les étudiants du primaire et du secondaire à développer des compétences en codage. > Le mouvement est vraiment en marche. Apprendre à programmer ---------------------- Si vous souhaitez progresser et augmenter vos connaissances, il est incontournable de vous intéresser à la programmation. En plus de cela, cela va vous permettre dans un premier temps de découvrir comment sont créés les programmes. Mais, bien au delà d'apprendre à programmer, cela va vous permettre de comprendre le code source de GNU/Linux, de Windows ou encore des applications que vous utilisez. C'est un long voyage, un long apprentissage et même si vous ne maîtrisez pas l'ensemble des mécanismes qui animent votre système d'exploitation, cela va vous permettre d'apprendre bien plus qu'en lisant des livres ou des articles. Pour apprendre, il faut pratiquer. Et pratiquer, c'est programmer. Vous avez la possibilité de vous intéresser aux langages de votre choix. Cependant, sachez tout de même que le langage de programmation C a été et est encore grandement utilisé. Il est considéré comme un langage système, ce qui est le cas, mais il peut être utilisé pour réaliser tout type de programme. Si je vous oriente vers le langage C, c'est au moins pour ces raisons: * une communauté très active, * le noyau Linux est développé en C, * compilateurs gratuits, * apprendre le C permet ensuite d'apprendre d'autres langages plus facilement, * permet d'accéder à des ressources de bas niveau. Selon le fameux `index TIOBE `_ de mars 2020 c'est encore le langage n°1 ! .. image:: images/Tiobe_C.png :align: center Après une période de sommeil, le langage C redevient très utilisé. Langage de l'année 2019, il est très bien positionné pour le rester en 2020. Allez au delà ------------- Ne vous limitez pas à l'apprentissage d'un langage, il en existe de nombreux et il serait dommage de passer à coté. Ne vous arrêtez pas à une poignée de langages. En fait, plus vous connaîtrez de langages, plus vous progresserez vite dans votre connaissance du fonctionnement d'un ordinateur. Si la participation à une activité de codage peut donner l’impression que l’apprentissage de la programmation est un jeu d’enfant, la vérité est qu’une expérience épisodique ne permet pas de développer des compétences en la matière. En faisant mousser l’apprentissage du codage, on risque de mal représenter la programmation informatique en simplifiant les concepts à outrance. Or, devenir programmeur informatique exige des efforts, de la persistance et de la patience. Par où commencer? ----------------- Choisir un langage ****************** En tout premier lieu, il faut choisir un langage. Et pour commencer, je vous conseille donc de vous intéresser au langage C, même si il peut paraître un peu démodé et qu'il impose de prendre connaissance de concepts considérés comme de bas niveau. C'est justement ce qui est intéressant dans ce langage, c'est qu'il faut prendre en considération des détails de bas niveau pour réaliser des programmes efficaces. Proche de la couche physique, le langage C permet de comprendre le fonctionnement d'un ordinateur. Il existe de nombreux langages, pour vous en faire une idée, faites quelques recherches sur internet. Par exemple, les pages wikipedia suivantes vous en donneront un aperçu non exhaustif: * `Histoire des langages de programmation `_ * `Chronologie des langages de programmation `_ * `Liste de langages de programmation `_ Installer ses outils ******************** Il existe de nombreux outils pour développer. Mais, avant tout, il est nécessaire de définir votre environnement. Pour programmer, il peut être intéressant d'installer GNU/Linux sur votre ordinateur. Je vous le recommande. Vous n'êtes pas obligé d'installer nativement cet outil, vous pouvez par exemple utiliser une machine virtuelle. Ensuite, il vous faudra un bon éditeur de texte, un compilateur et éventuellement un gestionnaire de versions. Pourquoi Linux? """"""""""""""" Et bien, les outils de développement sont quasiment toujours disponibles et faciles à installer. Vous pouvez choisir la distribution Linux de votre choix. Toutefois, pour écrire ces articles, j'ai choisi ubuntu comme distribution de référence. Ubuntu est très simple à installer et offre tous les outils nécessaires pour apprendre à développer. Il n'est pas obligatoire de choisir cette distribution, vous pouvez choisir la distribution de votre choix. Vous y trouverez certainement tous les outils nécessaires pour apprendre à programmer. Comment utiliser ces pages -------------------------- Pour commencer de manière basique, vous pouvez utiliser ces pages. Et aussi utiliser des exemples d'autres sites internets, de livres et de formations. L'ensemble devrait vous permettre de mieux apprendre le C. En tout cas, je me suis efforcé de faire en sorte que les exemples soient toujours accompagnés des commandes permettant de les compiler.