1

VBScript garantit que le GC s'exécutera après chaque ligne, donc si vous créez un objet et ne gardez pas de référence, son destructeur sera appelé à la fin de la ligne. Cela vous permet de faire un certain nombre de choses intéressantes, dont un est la simulation des arguments optionnels:Recherche du nom d'un motif de conception

with foo(mandatoryArg) 
    .optArg = 42 
end 

Une autre permet à une syntaxe constructeur pratique:

with Schema.define("Foo") 
    .attr "name", String 

    with .attr "key", String 
     .lengthEquals(10) 
    end 
end 

Dans cet exemple, définir et retour attr objets qui finalisent les définitions de schéma et d'attribut dans le destructeur. J'ai appelé l'objet temporaire un éphémère, mais je me demandais s'il existait un terme préexistant pour de telles constructions. Quelqu'un a vu ça ailleurs?

Répondre

1

Selon Builder pattern in wikipedia c'est le constructeur ou plus spécifiquement le constructeur de béton. En pratique, ces objets sont généralement de courte durée. Le modèle de constructeur a quelques composants comprenant le réalisateur, etc. Mais cet objet de courte durée que vous appelez un éphémère semble être précisément l'objet de constructeur.

0

Vous utilisez certainement un modèle de générateur. L'abus de GC est nouveau, cependant. Le nom plus général pour le type de syntaxe que vous construisez est un fluent interface.

Vous pouvez obtenir quelque chose de similaire en C# avec la syntaxe "using", mais en pratique les gens utilisent des expressions lambda pour cela, qui sont plus claires.

Questions connexes