Before you get right into your project, machine gunning away at the keyboard as ideas pop into your head, draw up a plan.
Think about the requirements of your software project: Who it’s being built for, What needs to be solved, How to create that solution and the components that solve each part of that problem, Where is input coming from, Where does the user see output. Then be careful to protect your classes from each other. You don’t want Class A’s code touching Class B’s if it doesn’t have to OR you don’t want to have a massive Class A that does every job in the project; Delegate work to the appropriate class.