Событийная архитектура кода
Так как мы применяем SRP, то хорошо бы было, если бы наши классы были еще и малосвязаны между собой, или связаны не явно, чтобы можно было в случае чего перекомпоновать код как захочется, ну и чтобы просто не было кучи вызовов разных методов. Для решение этого можно использовать события (по дефолту Action в C#). То есть, если нам надо передать информацию из одного нашего модуля другому, или множеству других объектов, то лучше это делать через создания переменной Action в первом модуле, и подписи на это событие во всех остальных. Все глобальные события можно выносить в класс EventManager в стартерпаке, однако это следует делать только для глобальных событий. На данный момент времени мы рекомендуем использовать дефолтные Action’ы.
При использовании статических ивентов не забываем отписываться от них, особенно перед уничтожение подписанного объекта.
Last updated