Des exceptions exceptionnelles en Smalltalk

Magazine
Marque
GNU/Linux Magazine
Numéro
112
Mois de parution
janvier 2009


Résumé
Dans l'article précédent, nous avons montré comment Smalltalk permet de lever et capturer des exceptions. Nous avons montré comment une exception peut être relancée. Dans cet article, nous aborderons les aspects les plus puissants de la gestion des exceptions en Smalltalk et tout particulièrement la reprise du flot d'exécution au point de signalement d'une exception. Nous montrerons comment l'exception de Deprecation fonctionne et ce qu'est une reprise d'exception.

1. Error et Notification

Tout d'abord, regardons les différentes sortes d'exceptions proposées en Smalltalk. Ici, il n'y a pas de différence notable avec des langages tels que C# ou Java. Différentes sortes d'exceptions peuvent être levées : on distingue deux principales catégories, les erreurs indiquant que le programme ne peut plus s'exécuter normalement et les notifications qui indiquent qu'un événement se passe, mais que si aucune action n'est effectuée le programme continue sa marche normalement. Les notifications sont souvent spécialisées en alertes (classe Warning), qui sont utilisées pour notifier des comportements anormaux, mais non fatales.

Typiquement, un message non compris (message not understood) lève l'exception MessageNotUnderstood qui est une sous-classe de la classe Error. Les notifications sont utilisées pour implanter des retours d'informations dans les interfaces graphiques. En Squeak, ProgressNotification sert à faire avancer les barres de...

Cet article est réservé aux abonnés. Il vous reste 95% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite