I do not know if it's a must in your case but achieving MUIness is natural when dealing in object-oriented programming paradigms. Your code gains a structure and you arrange the data close to where it belongs to with access restrictions etc.
But in GUI your possibilities are quite limited. Actually you should always try to narrow things down the furthest like a variable is visible where it is used, yet in GUI there are only global variables and like no scoping options. I guess that makes it harder to think in objects.
Of course I would also consider local variable + wait as MUI but that's quite rubbish.