Я переопределяю .Net API в Java, и API определяет целую кучу событий, что неявно не поддерживает Java.
Я собираюсь использовать шаблон наблюдателя, но из-за количества событий я действительно не хочу загромождать интерфейс.
Мне было интересно, было ли хорошей идеей объявить класс "Event", у которого есть метод подписки, который принимает "интерфейс EventHandler" и метод throw.
таким образом, я не захламляю свой родительский класс многочисленными списками подписчиков, потому что отдельные события обрабатывают их.
Единственная проблема, которую я вижу, - это аргументы команды throw, поскольку разные события могут иметь разные аргументы.
Решения, которые я придумала, - позволить методу throw принимать массив объектов или создать интерфейс, такой как IEventArguemnts, который можно передать команде throw и обработать кодом, подписавшимся на событие. чтобы иметь больше смысла для меня.
Буду признателен за любые предложения по улучшению этого. Или любые уточнения.