Здравствуйте, zelenprog, Вы писали:
Z>Значит, дожен быть еще какой-то код, который: Z>1) при появлении новой информации о ходе выполнения отслеживает "разницу" по сравнению с прошлым состоянием, и делает список выполненных действий. Z>2) каким-то образом оповещает UI и передает в UI этот список.
Список или не список, эти данные ничем не отличаются от других данных, которыми обмениваются слои программы.
На стороне бизнес логики данные формируются в некотором абстрактном виде, не заточенные под отображение в UI (т.е. без цветов, шрифтов и т.п.).
Далее данные передаются в слой UI через callback или отдельным вызовом со стороны UI.
Логика UI уже решает, где и как эти данные отобразить, в т.ч. каким цветом и т.д.