by Chuck » Sat Feb 06, 2010 12:30 am
Cobratastic?
I didn't have time to scrutinize it line by line, but skimming over it, it seemed to be just fine.
One thought that crossed my mind is that the functionality and the UI seemed to all be mixed together. Another way to structure a program is to write library-style code that performs the functions (matching, file I/O, etc.) and then UI code that uses that. The first kind of code is often called "domain code" or referred to as "domain objects".
In such a structure, it's often easier to bring contracts and unit tests to bear on the domain objects as well as use them in other contexts (utilities, web service, web site, system service, etc.).
But maybe this was outside the scope of what you wanted to do.