Identifiant :
Mot de passe :

Patrons de conception

Interprète

Diagramme de classes :

Diagramme de classes

Description :

Type :  Co  (Comportemental)
Intention : Pour un langage donné, définit une représentation de sa grammaire, en même temps qu'un interprète utilisant cette représentation interprète les phrases du langage.
Applicabilité : Il faut utiliser l'Interprète, lorsqu'il y a un langage à interpréter, et que vous pouvez représenter les déclarations du langage sous forme d'arbres syntaxiques abstraits. L'Interprète fonctionne au mieux lorsque :
- La grammaire est simple. Pour les grammaires complexes, la hiérarchie de classes grammaire devient grande et impossible à gérer. Dans de tels cas des outils tels que les générateurs syntaxiques sont de meilleures solutions. Il peuvent interpréter des expressions sans construire d'arbres syntaxiques abstraits, ce qui permet d'économiser de la place et probablement du temps.
- L'efficacité n'est pas un souci majeur. Les Interprètes les plus efficaces ne sont pas généralement implémentés de façon à faire l'interprétation directe d'arbres syntaxiques, mais plutôt pour les traduire préalablement sous une autre forme. Par exemple, les expressions régulières sont fréquemment transformées en machines d'état. Mais même dans ce cas, le traducteur peut être implémenté avec l'Interprète, qui reste donc toujours applicable.

Participants au patron :

Problèmes :

  1. 1. Modélisation d'un langage
Les têtes de mule
Cédric BOUHOURS
Cédric BOUHOURS
Cédric BOUHOURS