"Travailler avec des opérations en étendue limitée"
Quentin Ducasse.
-Bonjour à tous.
Dans cette vidéo, on s'intéressera de plus près
aux packages présentés par le System Browser.
Pour rappel, le System Browser s'ouvre en cliquant dans l'environnement Pharo,
puis Tools, puis System Browser.
Une fois que vous êtes ici,
on voit que certains des packages présentés sur la gauche
vont avoir des flèches sur leur gauche.
En fait, ces flèches vont présenter tous les tags à l'intérieur du package.
Ça signifie que notre package AST-Core, qui était composé de toutes ces classes,
a en fait plusieurs tags sur ces classes.
Si on s'intéresse aux Tokens, aux Visiteurs, aux Patterns,
on va avoir les classes, ici, sur la droite qui seront filtrées.
Ça vous permet de structurer votre package.
Comment on les crée ?
Il suffit, au moment où vous créez votre classe,
d'ajouter tiret et le nom de votre tag après le nom de votre package.
Par exemple, toutes les classes qui font partie de "AST-Core-Nodes"
auront le tag "Nodes" rajouté à la fin du nom du package.
C'est utile car ça permet de structurer
et de rechercher plus efficacement vos classes dans le package.
Une autre chose intéressante, c'est la possibilité de filtrer.
Imaginons qu'on n'ait pas besoin de voir toutes les classes du système
et juste voir les classes de Collections.
On peut trouver toutes les classes de Collections en filtrant ici.
Une autre chose importante... J'enlève ce filtre.
C'est qu'on peut créer une scope. Vous voyez le bouton Scoped View, ici.
Si je suis sur le package AST-Core et que je clique sur Scoped View,
tous les autres packages disparaîtront
et ça limitera les actions que je fais dans ce package à ce package.
Je peux aussi créer une scope avec plusieurs packages.
Je fais clic droit sur un des packages, ici.
Je fais Set up scope
et je peux cliquer et sélectionner les packages dont j'ai besoin.
Par exemple, je vais prendre les trois AST-Core.
J'appuie sur OK.
Je vais avoir un System Browser avec seulement ces trois packages-là
et dont les actions vont se limiter à ces trois packages-là.
Les actions de refactoring ou n'importe quelle action sur le package
vont se limiter à ces trois-là.
C'est très utile, car ça vous permet d'enlever
tous les packages dont vous n'avez pas besoin
qui sont chargés dans l'environnement Pharo
et ça permet de contrôler les actions sur l'environnement.