Можешь объяснить паттерн архитектуры event-driven, включая то, как компоненты системы взаимодействуют через события, и описать основные преимущества и типичные варианты использования в современных программных системах? — ДейлиПреп