GeeksUtopia said:
Eh, that's not too bad. You don't even need a 2D array to represent it, if I recall correctly, it's just a simple 1D one with some not hard logic operating on it. Haven't looked at it in a few years, but I'm fairly sure that's it.
As for me, I guess it was the Java EE assignment I had last year - it was a web application (deployed in Glassfish) that used Spring for data access/storage and also had to communicate with a .NET application using SOAP. I won't necessarily say it was hard, and yet, I would have struggled on my own, mainly because the assignment wasn't for a single person but a group, also I had not enough familiarity with Java EE at the time. Eh, haven't touched it since, so it's not that great now, but anyway. I guess the most frustratingly hard part was...Netbeans. The damn thing caused us more trouble than the code and the two applications taken together - oh such joys, some of the best examples:
- when you click Build and Deploy, Netbeans starts compiling all .java files. But for some reason decided that it needed to compile one file A (let's call it that) but file A required a bunch of auto-generated files which were not present and wouldn't be until file B was compiled
later. So in order to get it to work, we had to have the auto-generated files there, so it would compile file A using the auto-generates, get to file B and re-generate them.
- also, I recall Netbeans had a very weird quarrel with SVN at one point - if it had the SVN plug-in, but you
didn't use it to do something (say, if I used Tortoise SVN) it would automatically revert any changes done. Also it did that when it was compiling the code, so it failed because it reverted some files as it was compiling for some stupid reason. And yeah, the reason was so stupid that it went out by itself, so we never knew
why
- for an even stupider reason, Netbeans would sometimes read the WSDL, generate the files needed from it and then
use an old version of the compiled files. It randomly did it, too, but at least after few frustrating hours trying to find out why the code failed where there was absolutely no change or reason to fail, we found this out and it didn't catch us as off-guard the next times. We still lost a total of several hours by the end of it, just by this issue alone, though, but could have been worse.
No wander my group collectively agreed that Netbeans is perfect for cross-platform development - it fails as badly on all of them.
But other than Netbeans, the task wasn't that bad. So I don't think I've really had that difficult of an experience with Java. Yet.