The general architecture of your program

The general architecture of your program
when I have a bigger program, I take time to write it in a way that is easy to read (and to maintain)
 * one point is to use functions (and don't have all code in draw)
 * one point is to use tabs (and don't have everything in one tab)
 * one point is to have states : With a state I exactly know in a game e.g. where I am: Do I show the start screen, do I play, do I show the high score?


 * one point is to use classes (OOP)