Use Factory pattern to decouple transcoder from UI
Brought to you by:
sinewalker
The GUI/CLI are fairly tightly coupled to the Dvorcode encoder. This is fine because the program is only supposed to handle one type of encoding. However it would probably make a better design to use a trans-coder interface and a factory pattern to decouple the user-interface classes from the Dvorcode class. That way, the UI stuff could be re-used for different trans-coder projects (just slot in a replacement class that implements the trans-coder interface).
This should be a low-priority code-improvement exercise, as it will add zero features to the program as well as introduce some complexity.