I discuss Xcode and several other development tools in this book. Most of the applications reviewed are free (as in food). Some are open source. In this book, I definitely shy away from commercial development tools.
Some commercial tools for Java development are worth a special mention. I have chosen the following tools for mention because of their utility and popularity.
Oh, and they work great on OS X, too!
Two types of people create computer programs: programmers and developers.
Programmers sit down at a computer and pound out code until something is finished. Programs written this way usually work but are filled with spaghetti code and poor or no modularity. Often, adding desired features to the resulting programs gets harder and harder until finally the code base is thrown away and the process starts over from scratch.
Developers design first and then write clean modular code. It takes longer at the beginning to design and write good code. The plus side is that with proper planning and refactoring, the code base lasts without complete rewrites. Also, adding features to well-designed programs is much easier. In the long run, developers cost less than programmers.
Many developers use the Unified Modeling Language (UML) for designing applications. UML is a design language that expresses itself as diagrams. Diagram types include class ...