How do I manage a big Java project?
100-200 classes in Java isn’t really all that big. For a first project, though, it’s big. Likely way too big, but we all start off with vastly overambitious projects, I guess. So, moving on, OSX is fine. It’s Java. Java doesn’t much care where it’s run. Eclipse is great. Use it. CVS or Subversion aren’t all that important given that your project is just barely entering the planning phase. And, while I’m a huge fan of Ant, I wouldn’t bother with it just yet either. For now running your project via Eclipse will probably be fine, and having Eclipse just export the project to a jar and a shell script to run your project will take you surprisingly far. When you reach the point where Eclipse’s compilation and build tools are too limited, you’ll know it. Then take the time to learn to make ant build files. I’d say just start small and deal with things like code repositories or build systems when the project requires it. The standard Java API is massive, and combined with resources like Apache
I’d recommend eclipse for a first time java coder, simply because of the inline javadoc. I can often guess at the built in library I’m looking for, and use it’s auto-complete and javadoc to figure the exact class/method I mean to call. That saves a bunch of time over firing up the browser and heading over to java.sun.com. As far as ant, if you are using eclipse, don’t worry about it initially. It basically will automate the build process across many complex steps. So you can say “copy files here, edit this file with this value, run the compiler, make a jar file out of it all, then add it to subversion with the specified tag”. You don’t need that yet, although you will at some point. Something else you should look into is JUnit. It’s a unit testing framework, and getting good with it early in your coding career will be very valuable. It just helps write good code, and even if you make light use of it, understanding WHAT to test for will make you less likely to even write that kind of bu