Environnement de développement
Pharo propose un environnement de développement qui comportent des outils similaires à ceux que l'on retrouve dans tous les environnements Smalltalk (inspecteur d'objets, navigateurs de classes, outils de refactorisation), mais dont certains sont plus originaux :
- Refactoring Browser : permet de visualiser facilement tout le code source de Pharo rangé en paquetages, classes, protocoles et méthodes. Il possède des fonctions pour les transformations de code :
- Renommage d'une classe, d'une méthode ou d'une variable automatiquement répercutée sur toutes les occurrences du nom de cette classe dans le code source.
- Création en un clic des accesseurs à l'ajout d'une variable d'instance.
- Extraction d'une partie d'une méthode dans une autre méthode (factorisation du code).
- Method Finder : permet de retrouver une méthode dans tout le code en lui donnant une liste de paramètres (ordre non nécessaire) et un résultat attendu. Exemples :
MethodFinder methodFor: #( ('Pharo is a programming environment' 6) ('Pharo') )
- Résultat retourné :
'(data1 truncateTo: data2) '
- → Il faut donc utiliser la méthode
truncateTo:
pour avoir le début d'une chaîne de caractères.
MethodFinder methodFor: #( #(#(4 2 3 1)) #(1 2 3 4))
- Résultat retourné :
'(data1 asSortedArray) (data1 sort) '
- → Il existe donc deux méthodes pour trier un tableau.
- Workspace : permet de s'entraîner en tapant des commandes Smalltalk et en voyant immédiatement leurs résultats.
- Navigateur pour les tests unitaires, navigateur pour la gestion de version des paquets, etc.