> Tech > Convertir des sous-routines en procédures

Convertir des sous-routines en procédures

Tech - Par iTPro - Publié le 24 juin 2010
email

Pour certains, les procédures sont des sous-routines dopées ; pour d'autres, les sous-routines sont des procédures boiteuses. La vérité se situe probablement entre les deux.
Il est vrai que les procédures sont nettement supérieures aux sous-routines à  bien des égards : valeur de renvoi, transmission de paramètres et variables locales.

Convertir des sous-routines en procédures

Quand il s’agit de
moderniser une application existante, ou d’en concevoir une
nouvelle, il est logique de préférer les procédures aux sousroutines.
En général, le changement d’une sous-routine en
une procédure passe par les étapes suivantes :

  • Extraire la sous-routine de la procédure principale, en la
    déplaçant après la dernière spécification de sortie (ou,
    mieux encore, dans un membre source séparé).

  • Changer les lignes BEGSR/ENDSR en spécifications de limites
    de procédure (P-specs).

  • Ajouter une définition de prototype simple.
  • Utiliser un appel de procédure au lieu de EXSR pour exécuter
    la procédure.

La figure 2 illustre la conversion d’une sous-routine en
une procédure.
Après avoir transformé une sous-routine en procédure,
vous pourrez localiser la définition des variables utilisées seulement
dans la procédure. Vous pourrez aussi ajouter des paramètres
en créant une interface de procédure et en mettant
à  jour le prototype et l’appel de procédure. Enfin, profitez de
la faculté qu’a la procédure de renvoyer une valeur à  son appelant.
Toutes les procédures transformées en sous-routines
n’ont pas leur place dans des modules NoMain séparés. Bon
nombre d’entre elles peuvent être codées dans le même
membre source que le reste du programme. Mais, si une procédure
évolue à  partir d’une sous-routine commune utilisée
par de nombreux programmes, il est bon de centraliser le
code dans un module NoMain unique et de packager celui-ci
dans un programme de service.

Téléchargez gratuitement cette ressource

Cybersécurité sous contrôle à 360°

Cybersécurité sous contrôle à 360°

Avec Cloud in One, les entreprises ne gagnent pas uniquement en agilité, en modernisation et en flexibilité. Elles gagnent également en sécurité et en résilience pour lutter efficacement contre l’accroissement en nombre et en intensité des cyberattaques. Découvrez l'axe Cybersécurité de la solution Cloud In One.

Tech - Par iTPro - Publié le 24 juin 2010