Global (shared) variables in Matlab GUI code behind. Is there better way to do it then using handles structure?
===

I have spent some time lately creating complex Matlab GUI tool. I'm using GUIDE GUI builder. 

I  dislike the way Matlab manages global variables in code behind (the .m file with functions). If I want to share data between function calls I have to store them in `handles` structure that is parameter of every function call. I consider it to be bug prone as I have to mind storing and updating `handles` all the time. It is rather unnatural for me to handle global variables this way. Using *appdata* is even worse.

Is it possible to use class as a code behind for GUI? All the callbacks would be methods so they would receive `obj` as a parameter and I could store global variables in class properties. This seems to me to to be much clearer.

It is just an idea and it may be  not possible at all... But if there is better practise how to deal with global variables in Matlab GUI then please suggest it.