Even though this forum has some questions related to Mathematica programming tips I think that we still don't have specific help for those who want to learn to efficiently create GUIs in Mathematica. Indeed, I think that the capabilities of the Wolfram Language for building applications are often underestimated because many good developers have not yet developed the best skills to create GUIs in Mathematica. The argument "Mathamatica is not for that" is often offered as an answer that misleads those who are trying to create applications in Mathematica. Mastering Dynamic
or adding the option Method->"Queued"
to buttons are part of the story but there are many other issues that need to be understood. Example questions are:
- When to use DynamicModule instead of Manipulate?
- How to create an efficient DynamicModule?
- When to avoid using DynamicModule or Manipulate?
- How to effectively use functions instead of variables to create GUIs?
- Where to place Dynamic?
- When should TrackedSymbols be used and which symbols should be tracked?
- When and how to use SynchronousUpdating?
- How to avoid the message Formatting notebook contents?
It has taken me a lot of time and energies to learn the answer to most of these questions (examples in my profile) but I would like to help others by posting the following question. Can this forum provide a list of practical tips, suggestions or examples to learn creating efficient GUIs in Mathematica?