> Tech > Les codeurs délicats choisissent les BIF

Les codeurs délicats choisissent les BIF

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

  Jadis, chaque fois qu'IBM publiait une nouvelle release, je me précipitais sur le chapitre Operation Codes du manuel de référence RPG, à  la recherche des codes opérations nouveaux ou changés. Après tout, les codes opérations étaient les éléments qui activaient toutes les nouvelles fonctions en RPG. Ce n'est plus le

Les codeurs délicats choisissent les BIF

cas ! Désormais, le premier chapitre que je vérifie est celui des fonctions intégrées (BIF, bult-in functions). Les huit BIF originales du RPG IV ont fait boule de neige et sont devenues près de 70 en V5R1. La figure 4 énumère toutes les nouvelles BIF, qui se divisent à  peu près en trois catégories : fonctions associées aux dates, fonctions de remplacement de code opération, et fonctions associées à  Java.

   Les fonctions associées aux dates permettent d’exploiter le support de date natif dans des expressions en format libre (enfin !). ADDDUR (Add Duration), SUBDUR (Substract Duration) et EXTRCT (Extract a Portion of a Date) sont effectivement obsolètes ; elles n’autorisent pas de syntaxe en format libre. A la place, on peut utiliser + et – pour ajouter et soustraire des dates et utiliser les nouvelles fonctions pour traiter les problèmes de durée. La fonction %DIFF remplace SUBDUR quand on veut connaître la différence entre deux dates. La fonction %SUBDT remplace EXTRCT ; elle obtient un sous-ensemble d’une date. La figure 5 présente quelques-unes des nouvelles fonctions dans deux procédures pratiques : DayOfWeek et WeekOfYear.

  Les fonctions de remplacement des codes opérations prennent la place des codes opérations en format fixe correspondants (pas forcément associés aux dates), ce qui permet de les utiliser dans des expressions. Je ne peux pas m’empêcher de faire une observation critique sur ce groupe : était-il vraiment nécessaire de créer 10 fonctions pour remplacer LOOKUP ? Il est probable que %LOOKUP et %TLOOKUP auraient amplement suffi, en ajoutant un argument facultatif pour les comparaisons GT, LT, GE et LE rarement utilisées.

  Les fonctions associées à  Java sont représentées par une BIF vraiment nouvelle, %THIS, qui approche encore davantage le RPG de l’intégration Java directe. %THIS permet d’invoquer une méthode native pour l’instance courante d’une classe sans être obligé de connaître le nom de la classe. La fonction %THIS correspond au qualificateur réservé this de Java (nous reviendrons sur les améliorations associées à  Java plus loin).

Téléchargez gratuitement cette ressource

Protection des Données : 10 Best Practices

Protection des Données : 10 Best Practices

Le TOP 10 des meilleures pratiques, processus et solutions de sécurité pour mettre en œuvre une protection efficace des données et limiter au maximum les répercutions d’une violation de données.

Tech - Par iTPro - Publié le 24 juin 2010