I’ve recently committed to writing my whole game on terminal. This had two great advantages:
1. Worry about graphics later I am 100% focused on the technicality of the game, and low level experience. I don’t have to worry about graphic details just yet.
2. Maintainability Using this approach separates the concerns pretty well. This helps us achieve maximum maintainability and testability. UI testing is a pain since the middle ages, and what better way to solve the problem than remove the UI altogether?
I don’t really have the time nor motivation to write down all the details, but I made a quick video tutorial about the subject. You can see the project structure, and terminal client, and how awesome it is to develop with this approach:
The main thing to keep in mind here, do whatever works for you. I am a real freak when it comes to details, and I want to perfect the app and experience in every way possible, especially technically. That is simply not possible without a solid code design, so having that is extremely important for me.