Порождающие шаблоны / Фабричный метод / Кросс-платформенные компоненты интерфейса
Вы создаете кросс-платформенное приложение, которое может работать и в вебе, и на Windows.
Вашему приложению нужен компонент Диалога для взаимодействия с пользователем. Но реализация такого функционала отличается на разных платформах.
Вынесите создание компонента Диалог в отдельный метод (Фабричный метод). Тогда каждая конкретная реализация приложения (для разных платформ) сможет создавать собственный диалог.