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

La suite est réservée aux abonnés. Il vous reste 95% à découvrir.
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Envie de lire la suite ? Rejoignez Connect
Je m'abonne maintenant


Article rédigé par

Par le(s) même(s) auteur(s)

Un chat en Pharo : le client

Magazine
Marque
GNU/Linux Magazine
Numéro
189
Mois de parution
janvier 2016
Spécialité(s)
Résumé
Poursuivons la découverte de Pharo et de quelques-uns de ses principaux frameworks. Vous avez déjà fait connaissance avec Teapot permettant de concevoir des services. Dans cet article, vous allez étudier la construction de requêtes HTTP à l'aide de Zinc [1] et construire une interface graphique à l'aide de Spec.

Un chat en Pharo : le serveur

Magazine
Marque
GNU/Linux Magazine
Numéro
189
Mois de parution
janvier 2016
Spécialité(s)
Résumé
À l'aide de Teapot, Pharo permet la définition d'un serveur REST en quelques dizaines de lignes. Grâce à lui, vous allez développer rapidement un serveur de chat basé sur HTTP et permettant l'échange de messages entre plusieurs interlocuteurs.

Une introduction aux sons en Pharo

Magazine
Marque
GNU/Linux Magazine
Numéro
178
Mois de parution
janvier 2015
Spécialité(s)
Résumé
Dans cet article, nous allons vous présenter une facette de Pharo qui n'est pas habituellement mise en avant. Ce domaine, c'est la synthèse sonore. Si nous avons besoin de sonoriser un peu notre tout nouveau programme ce qui nous vient à l'esprit c'est l'utilisation du mp3 pour jouer la musique en fond sonore ou des sons digitalisés pour les bruitages. Dans Pharo nous disposons d'outils et bibliothèques permettant de créer de toute pièce du son synthétisé pour nos productions. Nous allons vous montrer comment faire cela en quelques lignes de code seulement.

Les listes de lecture

Python niveau débutant

9 article(s) - ajoutée le 01/07/2020
Vous désirez apprendre le langage Python, mais ne savez pas trop par où commencer ? Cette liste de lecture vous permettra de faire vos premiers pas en découvrant l'écosystème de Python et en écrivant de petits scripts.

Au pays des algorithmes

11 article(s) - ajoutée le 01/07/2020
La base de tout programme effectuant une tâche un tant soit peu complexe est un algorithme, une méthode permettant de manipuler des données pour obtenir un résultat attendu. Dans cette liste, vous pourrez découvrir quelques spécimens d'algorithmes.

Analyse de données en Python

10 article(s) - ajoutée le 01/07/2020
À quoi bon se targuer de posséder des pétaoctets de données si l'on est incapable d'analyser ces dernières ? Cette liste vous aidera à "faire parler" vos données.
Plus de listes de lecture