Патерни проєктування · Middle · Запитання 15 з 75
Який патерн використовує Babel чи ESLint-плагін, що обходить AST із методами Identifier(), CallExpression()?
- ✓Правильна відповідь: Відвідувач: операції над вузлами дерева винесено в окремий об'єкт
- 2Будівельник: плагін покроково створює нове дерево з вихідного
- 3Адаптер: плагін зводить AST до формату іншого компілятора
Пояснення
Visitor дає змогу додавати нові операції над структурою (перевірку, трансформацію), не змінюючи класів вузлів. Обхідник викликає метод відвідувача для кожного типу вузла.