Hi there,

I was given a little exercise to complete for a graduate position. I have only done a HDip in Computer Science, so that's only about 8 months of Java stuck in with a whole other pile of stuf.. long story short.. I've only get the basics of coding, and OOD down.

So I am wondering if could someone help me understand what the interviewer means by

"I’m looking for a solution that indicates you know the basic tenants of software object based design, and a little about how developers communicate and work together (you show that by your packaging and communications patterns)"

Think is I haven't worked with programmers yet, so I don't really know much about this.

What exactly are we talking about here?

Another question I have also (which probably pertains to the above enquiry) In the spec doc it mentions include your code together with supporting
material (testing/assumptions/docs).

I haven't done testing yet, but I think I can get my head around it using junit.
But is there a formal way of documenting assumptions, and creating documents?

It asks "Please follow the exercise as accurately as possible, keeping your assumptions to a minimum, but if/when you do make assumptions, please document them clearly"

For instance is a word doc, with bullet points sufficient for this?

Lastly it mentions
"Please provide instructions that would enable an evaluator to run your game"

Would this be as simple as describing in a separate word doc, called 'How To Execute Java File" and in that file just give the instructions of how to run a .jar file from the command prompt?

Many thanks for your help,
complete Java beginner here, hoping, hoping, to get a job programming.. eventually!

Thanks again.

For the communication of code design issues, and the wheres and whyfores of your code, do some research into javadocs. There are patterns of commenting code so that the javadoc application tool can generate documentation of the code, interfaces, class structures, etc.

As for packaging of your code, research the java ant tool. You build xml files that tells ant what to build, what packages to build, and where to build/install them.

basic tenants of software object based design, and a little about how developers communicate and work together

A key idea here is that objects have a public interface and everything else is encapsualted (hidden) inside. So developers need to discuss and agree those public interfaces. In general they don't need to get involved in other people's implementation details (except as a quality control / code review process).

The article starter is a financial contributor. Sponsored articles offer a bounty for quality replies.