Building program hierarchy in Java
<p>My question here is of general matter and it may apply to most object-oriented languages.</p>

<p>How do you actually write a program (with GUI)?
It's easy for some smaller projects, but what about large ones?</p>

<p>How do you divide your program into packages?
Do you do some kind of GUI/calculations division?</p>

<p>What about classes?
Where do you put all the methods unassociated with any class in particular?</p>

<p>How do you decide which part of code should be a class/method of it's own, and which parts should be a single class/method?</p>

<p>Are there any common ways or guidelines to building/segmentate your Java project?</p>

<p>the thing is, I've been working on my project for a while now, and it's getting messy. I noticed I don't really have any structured way I segmentate my program, I've been doing it differently throughout the program. I wanted to know if there were any guidlines before fixing it up, so I can do it the (most) proper way.</p>
