0

Je lisais le implementing_the_visitor_pattern_without_recursion de Cookbook Python, Troisième éditionDifférence entre ces choix d'implémentation de modèles de conception de visiteurs python?

The implementation with additional Visit Class réparer le défaut dans the one without it comme elle le prétend.

"Un danger potentiel de cette recette concerne la distinction entre donnant des valeurs de nœuds et de non-nœuds. Dans l'implémentation, toutes les instances du noeud sont automatiquement traversées. Cela signifie que vous ne pouvez pas utiliser un nœud comme valeur de retour à propager. En pratique, cela peut ne pas avoir d'importance. Cependant, si c'est le cas, vous devrez peut-être adapter légèrement l'algorithme . Par exemple, éventuellement en introduisant une autre classe dans le mélange , comme ceci: "

Extrait de: David Beazley. "Livre de recettes Python." IBooks.

Voici les questions:
1: Dans quelles circonstances le fait danger potentiel se passerait-il
2: Comment vient la classe Visit supplémentaire pour y remédier?

(Je ne comprends pas et pour autant que je peux voir la classe Visit est simplement un emballage inutile sur le node)
(peut être parce que je suis stupide, quelqu'un pourrait-il me l'expliquer plus en détail et avec un code probablement? Thanx pour la lecture)

Répondre

0

J'ai finalement obtenu mon sens, enveloppant une classe Visit,
aide que le visiteur pourrait effectivement retourner le résultat final comme un nœud toute
au lieu de son (le nœud) qui se déroule résultat, nous donnant une option pour annuler le processus de visite si vous le demandez.