next up previous contents index
Next: Introduction à Smalltalk-80 Up: Introduction à Smalltalk-80 Previous: Introduction à Smalltalk-80

Introduction

L'approche à objets a des racines profondes et diverses, notamment Simula pour les classes (1960) et la représentation des connaissances en IA pour l'héritage. Dans ce document, nous nous restreindrons aux modèles objet à classes. Deux autres ``styles'' à objets existent : les frames et les acteurs. Consulter [MNC90] pour une description générale des langages à objets.

Le concept d'objet fédère nombre de disciplines de l'informatique. Si cet aspect facilite l'intégration et la compréhension des différents travaux, il n'en reste pas moins que les définitions varient selon le domaine d'utilisation : un objet est une unité de connaissance, une unité de calcul, un module, une valeur d'un type, une ``chose'' ayant une existence propre...

Comme beaucoup d'auteurs, nous reprendrons la classification de [Weg90] : ``Object-Oriented languages support object fonctionality, object management by classes, and class management by inheritance''. Ce qui est symbolisé par les équations :




Le document est structuré comme suite. Dans la section 2, nous présentons rapidement Smalltalk-80, qui est à la fois un langage, un système d'exploitation et un environnement. Smaltalk est un langage à objets avec une syntaxe et une sémantique. Il est inspiré des la programmation fonctionnelle et de la programmation impérative. Le typage est dynamique. Smalltalk-80 contient toutes les fonctionnalités d'un système d'exploitation : gestion du processeur, gestion de la mémoire, gestion des périphériques. L'ensemble est réalisé par des classes. Ce qui donne une implantation très agréable du système d'exploitation. Smalltalk-80 est un environnement de programmation comprenant des outils avancés d'édition, des outils de gestion de classes et de méthodes (rangement, recherche, modification) et enfin des outisl de mise au pint sophistiqués (débogueurs, évaluateurs, inspecteurs).

Nous n'étudions pas Smalltalk-V qui est un langage différent de Smalltalk-80. Nous étudions ensuite plus en profondeur les concepts du modèle à objets de Smalltalk-80 dans la section 3. Dans la section 4, nous détaillons l'environnement de programmation de Smalltalk-80. Cet environnement est riche et le système entier est directement accessible. Dans la section 5, nous étudions quelques hiérarchies importantes du système. Enfin, dans la section 6, nous étudions rapidement le modèle Model/View/Controller, la méthode de développement d'interfaces homme/machine de Smalltalk.

Le discours est valable pour les versions 4.0 et suivantes de Smalltalk-80. Le système VisualWorks permet en plus de construire directement et aisément des interfaces graphiques. Nous ne parlerons pas ici des spécificités de cette boîte à outils.

La bibliographie de référence est la suivante : la description du langage et du système dans sa version 2.5 sera abordée avec profit dans [LP90]. Deux ouvrages généraux sur Smalltalk-80 sont [Gol83, Lal94]. Enfin, concernant les versions récentes de Smalltalk-80 et la programmation sous VisualWorks, consulter [HH95, How95, Sha97].


next up previous contents index
Next: Introduction à Smalltalk-80 Up: Introduction à Smalltalk-80 Previous: Introduction à Smalltalk-80

Pascal Andre
Tue Jun 8 12:20:44 GMT 1999