Чем можно заменить публичные Actionы?
Добавлено: 17 ноя 2022, 16:11
День добрый.
У меня организовано взаимодействие между интерфейсами через public Action. Но мне периодически говорят что это плохая практика, а как сделать лучше не говорят) Я понимаю что у такой архитектуры может быть проблема с тем что этот Action может вызвать посторонний класс(хотя на мой взгляд очевидно что так делать не нужно).
Тогда я стал писать такую конструкцию, в самом методе и в интерфейсе указывал эти методы.
private Action restartGameAction;
public void RestartGameActionSubscribe(Action function)
{
restartGameAction += function;
}
public void RestartGameActionUnsubscribe(Action function)
{
restartGameAction -= function;
}
Но мне кажется такая конструкция избыточной, но другого метода решения проблемы не придумал и не нагуглил.
Подскажите пожалуйста какие ещё есть методы для решения этой проблемы?
У меня организовано взаимодействие между интерфейсами через public Action. Но мне периодически говорят что это плохая практика, а как сделать лучше не говорят) Я понимаю что у такой архитектуры может быть проблема с тем что этот Action может вызвать посторонний класс(хотя на мой взгляд очевидно что так делать не нужно).
Тогда я стал писать такую конструкцию, в самом методе и в интерфейсе указывал эти методы.
private Action restartGameAction;
public void RestartGameActionSubscribe(Action function)
{
restartGameAction += function;
}
public void RestartGameActionUnsubscribe(Action function)
{
restartGameAction -= function;
}
Но мне кажется такая конструкция избыточной, но другого метода решения проблемы не придумал и не нагуглил.
Подскажите пожалуйста какие ещё есть методы для решения этой проблемы?