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