La figure 5 montre quelques codes
opération que j'ai regroupés sous l'appellation
opérations diverses. Elles incluent
des affectations numériques et
logiques (champs indicateurs). Les
comparaisons suivantes montrent que
la version en format libre de ces opérations
est simple et claire :
C Z-Add X Z Z = X;
C SetOn
01
*In01 = *On;
J’espère que vos programmes en
RPG IV évitent déjà ces codes opération
en format fixe. Si ce n’est pas le
cas, saisissez l’occasion du format libre
pour le faire.
La concaténation de chaînes est
également plus simple et plus claire en
format libre. Soit les exemples suivants
comparant les versions en format fixe
et libre, respectivement :
C String1 Cat String2 String3
String3 = String1 + String2;
Le format libre remplace le code
opération AddDur par l'opérateur +
utilisé conjointement aux BIF de durée.
De même, SubDur utilise l'opérateur
-. Comparons un exemple en format
fixe à la version en format libre
équivalente :
C LoanDate AddDur YY:*Years
DueDate
C AddDur MM:*Months
DueDate
C AddDur DD:*Days
DueDate
Eval DueDate = LoanDate + %Years(YY) +
%Months(MM) +
%Days (DD);
Là encore, la version en format
libre est plus facile à lire. Bien que
l'exemple ne le montre pas, le RPG en
format libre présente un autre avantage.
Dans la version en format fixe, on
est limité dans la longueur du nom de
variable contenant la durée parce que
ce nom, en même temps que le code
de durée, doit tenir dans l'espace
fourni pour Factor 2. Le format libre
vous affranchit de cette contrainte et
autorise des noms de variables plus
longs.
Comptant sur les indicateurs résultants,
Comp est un autre code opération
obsolète même en RPG en format
fixe. Son absence du RPG en format
libre impose de meilleures pratiques
de programmation pour les environnements
qui utilisent encore Comp.
Les conventions d'appel non prototypées
sont elles aussi obsolètes,
même en RPG en format fixe. On y
trouve les codes opération Call et CallB
en même temps que les structures de
listes de paramètres comprises dans
les codes opération PList et Parm. Il
faut toujours prototyper les appels et
utiliser l'opération CallP. Avec un
double avantage : vérification des paramètres
au moment de la compilation,
et le fait que la convention d'appel prototypée
fournit un code clair et net. Là
encore, le RPG en format libre favorise
de meilleures pratiques de programmation
en vous obligeant à utiliser les
appels prototypés.
Define est le dernier code opération
que j'inclus dans la catégorie divers.
Il permet de définir une variable
de programme en se fondant sur les attributs
d'une autre variable, en utilisant
la forme Define *Like de l'opération. Il
permet également de définir une zone
de données en utilisant la forme
Define *DtaAra. A bon escient, le RPG
en format libre déplace cette fonction
dans la carte D (D-spec), où l'on utilise
les mots-clés Like et DtaAra.
Téléchargez cette ressource
Guide de Sécurité IA et IoT
Compte tenu de l'ampleur des changements que l'IA est susceptible d'entraîner, les organisations doivent élaborer une stratégie pour se préparer à adopter et à sécuriser l'IA. Découvrez dans ce Livre blanc Kaspersky quatre stratégies efficaces pour sécuriser l'IA et l'IoT.