8.12 Domänenspezifische Sprachen

Der Zweck der Metaprogrammierung in Ruby besteht oft in der Erzeugung domänenspezifischer Sprachen (domain-specific languages oder DSLs). Eine DSL ist einfach eine Erweiterung der Ruby-Syntax (durch Methoden, die wie Schlüsselwörter aussehen) oder eine API, die Ihnen ermöglicht, auf natürlichere Weise ein Problem zu lösen oder Daten darzustellen, als es anderweitig möglich wäre. Für unsere Beispiele betrachten wir die Ausgabe formatierter XML-Daten als Problemdomäne und definieren zwei DSLs — eine sehr einfache und eine klügere — um dieses Problem anzugehen.[31]

8.12.1 Einfache XML-Ausgabe mit method_missing

Wir beginnen mit einer einfachen Klasse namens XML zur Erzeugung einer XML-Ausgabe. Hier sehen Sie ein Beispiel ...

Get Die Programmiersprache Ruby now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.