Romain Canu

Scripting

★★★★★
Temps de lecture : 6 min

Définition

Le scripting est le fait d’utiliser des scripts pour programmer une fonctionnalité. Un script désigne un programme chargé d’exécuter une action prédéfinie; il s’agit de commandes simples qui permettent l’automatisation de tâches successives dans un ordre donné.

Source : journaldunet.fr

Mes éléments de preuve

Tout au long de mon adolescence, j'ai utilisé différents langages de programmation, mais à chaque fois, je finissais toujours par écrire le programme avec le même langage, le Python. J'ai pu ainsi développer une multitude de scripts qui m’ont simplifié la vie au quotidien, notamment en cherchant à automatiser des tâches répétitives ou bien complexes.

Le scripting représente pour moi un moyen de création quasi illimité qui me permet d’explorer des choses très variées, que le script fasse quelques lignes ou plusieurs milliers. C’est un outil sur lequel je m’appuie constamment, que ce soit par exemple pour trouver un rendez-vous pour se faire vacciner contre la Covid-19 ou pour lancer tout simplement une petite requête pour vérifier la disponibilité de la dernière carte graphique en rupture de stock. Le scripting permet réellement d’adresser une infinité de choses. Je connais un certain nombre de langages de script, certains que j'ai survolé, d'autres pour lesquels j’ai un bon niveau de maîtrise et que j'utilise sur la plupart de mes projets professionnels, d’études ou personnels, comme le bash ou le Python que j'ai appris en autodidacte.

Le langage bash est un langage de base connu de quasiment tous les développeurs. Il permet d'exécuter une multitude de commandes sur un système d'exploitation Linux comme supprimer, créer, renommer des dossiers ou des fichiers et fournit bien d'autres fonctionnalités essentielles pour un utilisateur de système Linux.

Exemple de projet développé en bash :

Le langage Python est pour moi un des langages les plus puissants, car il peut vraiment s’adapter à tout type de solution : il peut implémenter du logiciel de très bas niveau comme de haut niveau. La communauté est très grande et une multitude de bibliothèques sont disponibles en téléchargement. Il permet à un débutant de prendre de bonnes habitudes pour développer un programme propre et compréhensible grâce à l’indentation du code imposée par le langage.

Exemples de projets développés en Python :

Mon autocritique

Depuis que je suis adolescent, je développe dans une multitude de langages différents (à l'école, en entreprise et dans le cadre personnel), ce qui me permet d'avoir aujourd'hui une connaissance minimale dans tous les langages (pouvoir reconnaître à minima de quel langage il s'agit), mais aussi une très bonne maîtrise des langages Python et bash qui sont les deux langages que j'utilise le plus. Cette maîtrise est indispensable dans le cadre de mon profil d'Expert en Ingénierie.

Je sais que j'ai beaucoup de facilité à apprendre lorsque je travaille sur des projets concrets, et c'est donc tout naturellement ainsi que j'ai commencé à apprendre le Python lorsque j'étais jeune.

Avec toute l'expérience acquise aujourd'hui sur le scripting, je sais maintenant de manière totalement autonome comment répondre à un besoin de création d'application en Python que ce soit une requête sur internet, un site web, du traitement de données, de l'intelligence artificielle ... mais aussi répondre à mes propres envies pour développer de nouveaux outils qui peuvent me rendre la vie plus facile.

Mon conseil aujourd'hui serait de se concentrer sur l'apprentissage du Python et pas nécessairement sur d'autres langages de programmation ; ce langage est non seulement très complet, très riche en termes de librairies disponibles, mais aussi il permet à tout nouveau développeur d'apprendre comment bien indenter son code, ce qui est un avantage considérable lorsque l'on travaille à plusieurs sur un projet. L'idéal est de commencer par la création de scripts qui servent un intérêt personnel.

Mon évolution dans cette compétence

Le scripting est une compétence déterminante dans mon projet professionel qui est de travailler dans le domaine de la cybersécurité.

Une première évolution serait de continuer à découvrir de nouvelles librairies Python avec l'idée de pouvoir m'appuyer dessus lors de mes futurs projets de développement et de gagner ainsi en productivité.

Une seconde évolution serait de continuer à me perfectionner dans la programmation bash, ce qui serait un bon complément à Python pour pouvoir exécuter des commandes sur le système d'exploitation (exemples : supprimer, créer, renommer des dossiers ou des fichiers).