Нужно написать небольшую программу.
Хочется написать ее, используя принципы слабого связывания.
Проблема в том, что это нужно сделать на процедурном языке программирования: классов нету, интерфейсов нету, указателей на функции нету, внедрения зависимостей нету.
Как в этом случае можно хоть в каком-то виде реализовать слабое связывание?
Простой пример.
Пользователь нажимает на кнопку и запускает какую-то длительную бизнес-операцию. При этом происходит изменение бизнес-данных.
Модуль, реализующий эту бизнес-операцию, по мере изменения данных должен оповещать другие модули об этих изменениях.
Модуль, реализующий интерфейс (форму, с которой работает пользователь), должен в ответ на это оповещение понять какие данные изменились и отобразить эти изменения.