Up ! Software Development Kit - Notes de révision - 2.0.0
Ce document présente les changements apportés à Up ! Software Development Kit entre les versions-révisions 1.2.0 et 2.0.0.
Les évolutions fondamentales sont les suivantes :
- Disponibilité d'Up ! Debugger, le dévermineur de programmes écrits en Up ! 5GL.
- Disponibilité d'Up ! Parser, les automates d'analyse lexicale et syntaxique d'un flux.
- Disponibilité d'Up ! Profiler, le profiler de programmes écrits en Up ! 5GL.
- Disponibilité d'Up ! Script Engine, l'interpréteur de programmes écrits en Up ! 5GL.
- Disponibilité d'Up ! Shell, l'interpréteur de commandes interactives écrites en Up ! 5GL.
Up ! 5GL
Concepts ajoutés
- AttacherModule
L'instruction AttacherModule permet de détecter le démarrage d'un nouveau module.
- AttacherTache
L'instruction AttacherTache permet de détecter le démarrage d'un nouvelle tâche.
- ConserverObjets
L'instruction ConserverObjets permet de conserver sur demande un certains nombre d'objets pré-construits en anté-mémoire pour accélérer les performances d'Up ! Object Management System.
- DetacherModule
L'instruction DetacherModule permet de détecter l'arrêt d'un module.
- DetacherTache
L'instruction DetacherTache permet de détecter l'arrêt d'un tâche.
- EffetDeBord
L'instruction EffetDeBord permet de spécifier qu'une procédure, une fonction ou une méthode effectue un effet de bord.
- HachageDe
L'instruction HachageDe permet de déclarer ou de construire une table de hachage.
- Normes de programmation.
Il est possible de définir des normes pour harmoniser les programmes en Up ! 5GL. Confère Paramètres d'Up ! 5GL.
- PasDeMiseAuPoint
L'instruction PasDeMiseAuPoint permet de spécifier qu'une procédure, une fonction ou une méthode ne comporte pas de code de mise au point.
- PasDEffetDeBord
L'instruction PasDEffetDeBord permet de spécifier qu'une procédure, une fonction ou une méthode n'effectue pas un effet de bord.
- PasDeProfilage
L'instruction PasDeProfilage permet de spécifier qu'une procédure, une fonction ou une méthode ne comporte pas de code de profilage.
- Rappel
L'instruction Rappel permet de déclarer des méthodes de rappel.
- Trace
L'instruction Trace permet de déclarer les propriétés des types qui doivent être tracées par Up ! Debugger.
Concepts modifiés
- AttraperException
L'instruction AttraperException permet également d'attraper les exceptions envoyées indépendemment de l'appel l'ayant provoquée.
- Habilitation
Quand la fonction Principal comporte une déclaration d'obligation, le paramètre Connexion d'Up ! Security Manager est obligatoire.
- Joker ?
Il est désormais possible de définir une valeur par défaut équivalente au joker ? pour un paramètre de sortie.
- Synchroniser - 1
Quand une méthode est synchronisée, l'accès aux propriétés de l'objet sur lequel elle porte est direct. Ceci permet d'améliorer nettement les performances.
Les méthodes Allouer, AllouerRessource,
Cloner, Constructeur,
Destructeur, Exporter,
Importer, Liberer et
LibererRessource sont systématiquement synchronisées pour cette raison.
- Synchroniser - 2
Quand une propriété d'un type ou d'une interface, une variable est synchronisée, la mise à jour est exclusive entre les tâches.
- TailleSegment
L'instruction TailleSegment a été modifié pour gérer dynamiquement par paramétrage la taille des segments d'allocation des objets des types.
Up ! Black Board
Architecture
- Fichier upsp5l.ini.
Ce fichier rassemble la liste des modules dont les définitions sont automatiquement importés. Ils étaient initialement énumérés dans ${UPS_HOME}/ini/upsvtm.ini.
- Fichier upspcm.ini.
Ce fichier rassemble la liste des modules dont les définitions sont automatiquement importés pour un client Com. Ils étaient initialement énumérés dans ${UPS_HOME}/ini/upsvtm.ini.
- Fichier upspcb.ini.
Ce fichier rassemble la liste des modules dont les définitions sont automatiquement importés pour un client Corba. Ils étaient initialement énumérés dans ${UPS_HOME}/ini/upsvtm.ini.
- Fichier upspjv.ini.
Ce fichier rassemble la liste des modules dont les définitions sont automatiquement importés pour un client Java. Ils étaient initialement énumérés dans ${UPS_HOME}/ini/upsvtm.ini.
Concepts ajoutés
Up ! Black Board est le gestionnaire d'agents coopératifs qui est à ce jour utilisé pour les tâches de compilation et d'interprétation.
Il est partagé par Up ! Compiler et Up ! Script Engine.
Up ! Compiler
Architecture
- Agents coopératifs.
L'ordonnancement des actions d'analyse, de génération et de compilation est pris en charge par le gestionnaire d'agents coopératifs Up ! Black Board qui est mis en commun avec Up ! Script Engine.
- Optimisation.
Up ! Compiler optimise désormais le nombre de modules d'Up ! Virtual Technical Machine nécessaires au fonctionnement du programme compilé. Les modules Up ! Mathematical, Up ! Network, Up ! Object Request Broker et Up ! Security Manager sont chargés si besoin est.
- Répertoire upscmp.
Up ! Compiler étant désormais rattaché à Up ! Software Development Kit, le répertoire ${UPS_HOME}/upscmp a été renommé en ${UPS_HOME}/upssdk.
Paramètres
- Compactage
Le paramètre Compactage permet de minimiser la taille du code de généré par Up ! C / C++ Generator.
- MiseAuPoint
Le paramètre Map est désormais renommé en MiseAuPoint.
- Normes
Le paramètre Normes permet de spécifier les normes de programmation à vérifier.
- Profilage
Le paramètre Profilage permet d'inclure le code de profilage exploitable par Up ! Profiler.
Up ! Debugger
Up ! Debugger est le dévermineur de programmes écrits en Up ! 5GL.
Il est chargé automatiquement dès lors que le programme est lancé avec le paramètre MiseAuPoint activé.
Paramètres
- AttraperException
Le paramètre AttraperException permet de demander à Up ! Debugger d'attraper les exceptions.
- Entete
Le paramètre Entete permet d'afficher l'en-tête d'accueil d'Up ! Debugger.
- MiseAuPoint
Le paramètre MiseAuPoint permet de choisir le mode de mise au point. Il a été tranféré depuis Up ! Kernel.
- TracerMiseAuPoint
Le paramètre TracerMiseAuPoint permet de tracer dans un fichier le dialogue de déverminage interactif.
- URIMiseAuPoint
Le paramètre URIMiseAuPoint de rediriger les messages de mise au point vers Up ! Debugger.
Concepts ajoutés
Concepts modifiés
- ActiverMiseAuPoint
L'API ActiverMiseAuPoint a été transféré dans Up ! Debugger.
- MiseAuPoint
L'API MiseAuPoint a été transféré dans Up ! Debugger.
Up ! Parser
Up ! Parser comporte deux automates pour analyser le contenu d'un flux - l'un pour l'analyse lexical et l'autre pour l'analyse syntaxique.
Concepts ajoutés
- AnalyseurLexical
Le type AnalyseurLexical permet de définir un analyseur lexical.
- AnalyseurSyntaxique
Le type AnalyseurSyntaxique permet de définir un analyseur syntaxique.
- NonTerminalSyntaxique
Le type NonTerminalSyntaxique permet de définir un non-terminal à dériver en une ou plusiers règles syntaxique.
- PaquetLexical
Le type PaquetLexical permet de définir un paquet de définitions lexicales.
- RegleSyntaxique
Le type RegleSyntaxique permet de définir une règle syntaxique composée d'étape correspondant à un élément lexical ou à un non-terminal.
Up ! Profiler
Up ! Profiler est l'analyseur de performance des programmes écrits en Up ! 5GL.
Il est chargé automatiquement dès lors que le programme est lancé avec le paramètre Profilage activé.
Paramètres
- EcraserProfil
Le paramètre EcraserProfil demande à écraser le précédent profil.
- Entete
Le paramètre Entete permet d'afficher l'en-tête d'accueil d'Up ! Profiler.
- ModeDeTri
Le paramètre ModeDeTri permet de choisir la présentation du rapport de profilage.
- Profilage
Le paramètre Profilage permet de choisir le mode de profilage.
Concepts ajoutés
Up ! Script Engine
Up ! Script Engine est l'interpréteur des programmes et des scripts écrits en Up ! 5GL. Ses paramètres sont présentés dans la fiche Paramètres d'Up ! Script Engine.
Paramètres
- MiseAuPoint
Le paramètre Map est désormais renommé en MiseAuPoint.
- Profilage
Le paramètre Profilage permet d'inclure le code de profilage exploitable par Up ! Profiler.
- Normes
Le paramètre Normes permet de spécifier les normes de programmation à vérifier.
- Source
Le paramètre Source permet de définir le nom du fichier source à interpréter.
Up ! Shell
Up ! Shell est l'interpréteur de commandes écrites en Up ! 5GL. Ses paramètres sont présentés dans la fiche Paramètres d'Up ! Shell.
Paramètres
- Source
Le paramètre Source permet de définir le script d'initialisation.