Salut, j'aimerais vous montrer comment on utilise le
Finder pour trouver de l'information.
Donc le Finder c'est un outil que vous allez trouver dans
le menu Tools, donc Finder.
Imaginons que je veuille chercher maintenant une méthode
qui s'appelle match. Je tape son nom, match.
Et là, je choisis Selectors.
Donc maintenant là, je vois toutes les méthodes qui
contiennent le mot match avec le code ici.
Donc comme j'avais mis les fontes en très gros, on va
essayer de retailler un petit peu.
Donc maintenant vous voyez que quand il y a un petit
triangle devant, ça veut dire que cette méthode-là elle
est définie sur plusieurs classes, et que je peux lire ce genre de chose.
Donc là c'était pour les méthodes, donc il y en a quand même pas mal.
On peut chercher des choses mais ce n'est pas forcément idéal.
Maintenant ce qu'on peut faire, c'est qu'on peut chercher
les classes qui contiennent match, donc là on voit toutes nos classes.
Le mieux après c'est de débrowser en utilisant le browser de code.
Maintenant, il y a beaucoup mieux à faire.
Souvent ce qu'on sait, c'est qu'on sait ce qu'on cherche
mais on ne sait pas comment l'exprimer.
Donc là, moi je sais que j'aimerais savoir est-ce qu'il y
a une méthode qui me dit si ab match
abcd, par exemple. Donc je dis, je donne ab*abcd
et je dis ça doit me rendre vrai, si ça match.
Et je choisis Examples, et là j'obtiens toutes les
méthodes qui ont rendu Vrai.
Alors je vais vous expliquer ce qu'on voit.
Donc là, je vois que supérieur fonctionne aussi.
Ah, j'ai match qui a l'air intéressante.
Là, ce que me montre le système, ce sont toutes les
classes qui définissent la méthode match, mais en
particulier celle avec la petite étoile, c'est celle dont
la méthode a rendu Vrai.
Donc maintenant, on peut faire d'autres exemples.
Par exemple, si je cherche qu'est-ce qui étant donnés 11,
2 me rend 5. Là je vais avoir
// et je vois que ce qu'il y a
de rendu vrai c'est défini sur Integer, donc c'est cette
méthode-là ou sur Number qui est cette méthode-là.
Donc si je fais pareil, de la même manière, je me dis:
maintenant, je veux 5,5. Je n'ai plus que diviser.
Donc c'est très pratique.
Donc maintenant, il y a une autre fonction qu'on peut
utiliser, on peut chercher par exemple quelles sont tous
les Pragmas, donc les Pragmas se sont des annotations
dans le système. Donc si je regarde qu'est-ce que c'est
qu'une annotation, c'est ça par exemple.
Voilà, là j'ai annoté ma méthode avec un Pragma qui s'appelle
Menu, et le système va pouvoir faire des query dessus
pour construire les menus. Et donc en tapant Menu ici, en
sélectionnant Pragma, j'accède à toutes les Pragmas du
système qui contiennent le mot menu en fait.
Donc là, on voit qu'il y en a 2 par exemple, 2 Pragmas.
Donc le worldMenu typiquement, celui qui est affiché
quand on est ici, il est défini par le Pragma menu.
Donc on voit, voilà, worldMenu.
Le screenShotCommand par exemple. HelpOn.
On voit tout ces menus.
Donc maintenant, ce qu'on peut aussi faire avec le
Finder, c'est de chercher toutes les méthodes qui
contiennent la chaîne "Menu" quel que soit l'endroit où
elle se situe. Donc là, je vais le faire, ça prend un petit peu de temps.
Donc là ce qui se passe, c'est que le système va scanner
vraiment tout le corps de toutes les méthodes, il y en a
80 000 dans Pharo, ou un peu plus, et nous montrer le résultat.
Donc là, c'est vraiment une recherche textuelle.
Donc ce qui est intéressant des fois c'est quand on voit
un menu ou quand on voit quelque chose de graphique qu'on veut le retrouver.
Donc là, vous avez toutes les méthodes qui contiennent le
mot Menu, aussi bien dans le nom que, prenons une autre
chose, que là ici ou encore ici.