Closed jed15 closed 7 years ago
The purpose of the command pattern is to encapsulate a single action, hiding the parameters from the caller. I think including different methods for get, set, create, etc. is working against the pattern, and could make it more difficult to add new commands in the future (what if we add an explosion() action, do we have to update all the commands now?). I think the best candidate for further refactoring is to move creation of commands into a factory; if we have a factory then the number of classes shouldn't be a big problem.
I am blocking this pull request due to the testing code. Please review my notes. The other changes I have requested about refactors can wait until after this PR.