Каких-то специальных рекомендаций для Qt лично я не видел. Есть общие концепции вроде MVC, MVP и проч.
Прочитайте, например, про
model-view в документации того же Qt. Разделите по тому же принципу движок (model) и интерфейс (view). Добавьте во View ссылку на модель и ловите сигналы.