How much do you already know?
Do you know the basics: MVC, etc...?
I've never heard of it called "MVC" but I looked it up and I pretty much already knew that. I always separate input, logic, and rendering from one another as much as possible and then I separate different parts of the logic into independent classes whenever the opportunity arises. That last part is what I usually end up doing long after I started coding - I'd like to be able to plan for it in advance. Here's a recent example:
During design I planned it like this:
- class World keeps track of tile coordinates, time, and weather
- class Person walks on the world
- class Animal walks on the world
- class Vehicle walks on the world
But then I ended up doing it like this:
- class Entity stands on the world
- class MobileEntity inherits Entity and adds facilities for moving from tile to tile
- class BattleEntity inherits nothing and adds facilities for taking and dealing damage
- Person, Animal, and Vehicle all inherit MobileEntity and BattleEntity
Turns out I underestimated the complexity of what ended up having to be the classes Entity and MobileEntity.
Always prefer books to tutorials. Tutorials are woefully insufficient for learning anything in depth.
So take a look at the top of this list.
Hey, that looks neat! Thanks a lot! I'll be reading those now.