IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Perl Discussion :

optimisation script perl


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    624
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 624
    Par défaut optimisation script perl
    Bonjour,

    J'ai un script dans lequel je teste que le résultat de plusieurs variables est égal à OK.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if ( "${V_Aquittement_Demarrage}" eq "OK" && "${V_Aquittement_TA}" eq "OK" && "${Categorie}" eq "OK" ) {
    ....
     
    }

    Comment puis je faire pour optimiser tout cela et éviter les && redondants ?

  2. #2
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Par défaut
    Qu'entends-tu par optimisation ?
    Le code est simple (complexité linéaire). Il ne sera pas plus rapide avec aucune autre méthode.

    Si tu entends pas optimisé, plus court (en nombre de caractère), ça me également semble difficile de faire plus court.

    Tu peux tout au plus alléger la syntaxe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if ( $V_Aquittement_Demarrage eq "OK" && $V_Aquittement_TA eq "OK" && $Categorie eq "OK" ) {
    ....

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2010
    Messages : 15
    Par défaut
    Peut-être que Vince2005 attendait quelque chose comme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if (($V_Aquittement_Demarrage && $V_Aquittement_TA && $Categorie) eq "OK") {
    ....
     
    }
    J'ai déjà utilisé un tel test sans me faire insulter par l'interpréteur ni obtenir de résultats déconnants.

  4. #4
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Par défaut
    Peut-être, mais il ne correspond pas du tout du test initial.
    Ton test vérifie que $V_Aquittement_Demarrage et $V_Aquittement_TA sont définis et non vides et que $Categorie est égal à "OK".
    Ce test aura un fonctionnement différent de celui désiré si, par exemple, $V_Aquittement_Demarrage et $V_Aquittement_TA valent "NOK" (dans ce cas, il sera vrai alors que dans le cas demandé, il sera faux).

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2010
    Messages : 15
    Par défaut
    Citation Envoyé par Philou67430 Voir le message
    Peut-être, mais il ne correspond pas du tout du test initial.
    Ton test vérifie que $V_Aquittement_Demarrage et $V_Aquittement_TA sont définis et non vides et que $Categorie est égal à "OK".
    Ce test aura un fonctionnement différent de celui désiré si, par exemple, $V_Aquittement_Demarrage et $V_Aquittement_TA valent "NOK" (dans ce cas, il sera vrai alors que dans le cas demandé, il sera faux).
    Merci pour l'explication ; "plus j'apprends et plus je mesure mon ignorance"...

Discussions similaires

  1. Optimisation des perfs d'un script perl
    Par photorelief dans le forum Langage
    Réponses: 7
    Dernier message: 12/11/2009, 09h37
  2. Optimisation de scripts Perl
    Par Fango dans le forum Langage
    Réponses: 12
    Dernier message: 21/10/2009, 13h34
  3. [langage] awk et sed dans script perl
    Par scoti dans le forum Langage
    Réponses: 3
    Dernier message: 07/04/2003, 18h26
  4. Réponses: 2
    Dernier message: 11/07/2002, 08h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo