Apprendre Perl en 2022 | Opensource.com


  • FrançaisFrançais


  • Sorti au début de 1988, Perl est un langage de programmation postmoderne souvent considéré comme un langage de script, mais il est également capable de programmation orientée objet. C’est une langue mature avec des dizaines de milliers de bibliothèques, des frameworks GUI, un langage dérivé appelé Raku et une communauté active et passionnée. Ses développeurs sont fiers de sa flexibilité : selon son créateur Larry Wall, Perl n’impose aucun style de programmation particulier à ses utilisateurs, et il existe plus d’une façon d’accomplir la plupart des choses.

    Perl est tout aussi robuste qu’il l’était lorsqu’il était largement utilisé, ce qui en fait un excellent langage pour les programmeurs débutants.

    [ Download the Perl cheat sheet ]

    Les bases de Perl

    Sous Linux et macOS, Perl est déjà installé. Sous Windows, téléchargez-le et installez-le à partir du Site Web Perle.

    Expressions Perl

    L’unité de base du code source Perl est un expressionqui est tout ce qui renvoie un valeur.

    Par exemple, 1 est une expression. Il renvoie la valeur de 1. L’expression 2 renvoie la valeur de 2et a renvoie la lettre a.

    Les expressions peuvent être plus complexes. L’expression $a + $b contient des variables (espaces réservés pour les données) et le symbole plus (+), qui est un opérateur mathématique.

    Instructions Perl

    Une instruction Perl est composée d’expressions. Chaque instruction se termine par un point-virgule (;).

    Par example:

    $c = $a + $b;

    Pour essayer d’exécuter votre propre instruction Perl, ouvrez un terminal et tapez :

    $ perl -e 'print ("Hello Perl\n");'

    Blocs Perl

    Un bloc d’instructions Perl peut être regroupé avec des accolades ({ }). Les blocs sont un outil d’organisation utile, mais ils fournissent également portée pour les données dont vous n’aurez besoin d’utiliser que pour une petite partie de votre programme. Python définit la portée avec des espaces, LISP utilise des parenthèses, tandis que C et Java utilisent des accolades.

    variables

    Les variables sont des espaces réservés pour les données. Les humains utilisent des variables tous les jours sans y penser. Par exemple, le mot “ça” peut faire référence à n’importe quel nom, nous l’utilisons donc comme espace réservé pratique. “Trouvez mon téléphone et apportez-le-moi” signifie en réalité “Trouvez mon téléphone et apportez-le-moi”.

    Pour les ordinateurs, les variables ne sont pas une commodité mais une nécessité. Les variables sont la façon dont les ordinateurs identifient et suivent les données.

    En Perl, vous créez des variables en déclarant un nom de variable puis son contenu.

    Les noms de variables en Perl sont toujours précédés du signe dollar ($).

    Ces instructions simples créent une variable $var contenant les chaînes “Hello” et “Perl” puis imprime le contenu de la variable sur votre terminal :

    $ perl -e '$var = "hello perl"; print ("$var\n");'

    Contrôle de flux

    La plupart des programmes nécessitent qu’une décision soit prise, et ces choix sont définis et contrôlés par des instructions et des boucles conditionnelles. le si est l’une des plus intuitives : Perl peut tester une condition spécifique, et Perl décide comment le programme procède en fonction de cette condition. La syntaxe est similaire à C ou Java :

    my $var = 1;

    if($var == 1){
      print("Hello Perl\n");
    }
    elsif($var == 0){
      print("1 not found");
    }
    else{
      print("Good-bye");
    }

    Perl propose également une forme abrégée de if déclaration:

    $var = 1;

    print("Hello Perl\n") if($var == 1);

    Fonctions et sous-programmes

    Réutiliser le code aussi souvent que possible est une habitude de programmation utile. Cette pratique réduit les erreurs (ou consolide les erreurs dans un bloc de code, vous n’avez donc qu’à le corriger une seule fois), facilite la maintenance de votre programme, simplifie la logique de votre programme et facilite la compréhension par les autres développeurs.

    En Perl, vous pouvez créer un sous-programme qui prend des entrées (stockées dans une variable tableau spéciale appelée @_) et peut renvoyer une sortie. Vous créez une sous-routine en utilisant le mot-clé subsuivi d’un nom de sous-programme de votre choix, puis du bloc de code :

    #!/usr/bin/env perl

    use strict;
    use warnings;

    sub sum {
      my $total = 0;

      for my $i(@_){
        $total += $i;
      }

      return($total);
    }

    print &sum(1,2), "\n";

    Bien sûr, Perl possède de nombreuses sous-routines que vous n’aurez jamais à créer vous-même. Certains sont intégrés à Perl, et les bibliothèques communautaires en fournissent d’autres.

    Script avec Perl

    Perl peut être compilé ou utilisé comme langage de script interprété. Cette dernière est l’option la plus simple au début, surtout si vous êtes déjà familiarisé avec Python ou les scripts shell.

    Voici un simple script de lancer de dés écrit en Perl. Lisez-le et voyez si vous pouvez le suivre.

    #!/usr/bin/env perl

    use warnings;
    use strict;
    use utf8;
    binmode STDOUT, ":encoding(UTF-8)";
    binmode STDERR, ":encoding(UTF-8)";

    my $sides = shift or
      die "\nYou must provide a number of sides for the dice.\n";

    sub roller {
        my ($s) = @_;

        my $roll = int(rand($s));
        print $roll+1, "\n";
    }

    roller($sides);

    La première ligne indique à votre terminal POSIX quel exécutable utiliser pour exécuter le script.

    Les cinq lignes suivantes sont passe-partout inclut et paramètres. le use warnings indique à Perl de vérifier les erreurs et d’émettre des avertissements dans le terminal sur les problèmes qu’il trouve. le use strict indique à Perl de ne pas exécuter le script lorsque des erreurs sont détectées.

    Ces deux paramètres vous aident à trouver des erreurs dans votre code avant qu’elles ne causent des problèmes, il est donc généralement préférable de les activer dans vos scripts.

    La partie principale du script commence par analyser l’argument fourni au script lorsqu’il est lancé depuis un terminal. Dans ce cas, l’argument attendu est le côté désiré d’un dé virtuel. Perl traite cela comme une pile et utilise le shift fonction pour l’affecter à la variable $sides. le die La fonction est déclenchée lorsqu’aucun argument n’est fourni.

    le roller sous-programme ou fonction, créé avec le sub mot-clé, utilise le rand fonction de Perl pour générer un nombre pseudo-aléatoire jusqu’au nombre fourni en argument non compris. Cela signifie qu’un dé à 6 faces dans ce programme ne peut jamais lancer un 6, mais il peut lancer un 0. C’est bien pour les ordinateurs et les programmeurs, mais pour la plupart des utilisateurs, c’est déroutant, donc cela peut être considéré comme un bogue. Pour corriger ce bogue avant qu’il ne devienne un problème, la ligne suivante ajoute 1 au nombre aléatoire et imprime le total comme résultat du jet de dé.

    Lorsque vous faites référence à un argument passé à un sous-programme, vous faites référence à la variable spéciale @_, qui est un tableau contenant tout ce qui est inclus entre parenthèses dans le cadre de l’appel de fonction. Cependant, lors de l’extraction d’une valeur d’un tableau, les données sont converties en scalaire (le $s variables dans l’exemple).

    Une sous-routine ne s’exécute pas tant qu’elle n’est pas appelée, donc la dernière ligne du script invoque la coutume roller fonction, fournissant l’argument de la commande comme argument de la fonction.

    Enregistrez le fichier sous dice.pl et marquez-le comme exécutable :

    $ chmod +x dice.pl

    Enfin, essayez de l’exécuter en lui fournissant un nombre maximum parmi lequel choisir son nombre aléatoire :

    $ ./dice.pl 20
    1
    $ ./dice.lisp 20
    7
    $ ./dice.lisp 20
    20

    Pas mal!

    Aide-mémoire Perl

    Perl est un langage amusant et puissant. Bien que les langages émergents comme Python, Ruby et Go aient attiré l’attention de nombreuses personnes depuis que Perl était le langage de script par défaut, Perl n’en est pas moins robuste. En fait, c’est mieux que jamais, avec un bel avenir devant nous.

    La prochaine fois que vous recherchez un langage plus flexible avec des options de livraison simples, essayez Perl et téléchargez l’aide-mémoire !

    Source

    N'oubliez pas de voter pour cet article !
    1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
    Loading...

    La Rédaction

    L'équipe rédactionnnelle du site

    Pour contacter personnellement le taulier :

    Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée.