Why buck the system? It will take you longer to learn if stray away from the core reasons behind why arduino and the IDE exist.
Ask yourself "Why does the Arduino IDE look and work the way it does?" Then start researching PROCESSING and that will lead you to WIRING. Understanding why these two Arduino predecessors exist and what they were for will certainly help you understand Arduino.
The Arduino IDE is better than XCode.... actually what my dog leaves on the front lawn is better than XCode
There are numerous benefits to Xcode that the Arduino IDE doesn't even come close to. Unless you are working with a very simple "sketch" working in the Arduino IDE becomes increasingly difficult and error prone. There are basic features that a modern IDE provides such as code completion, code-folding, double-clicking tokens to go to their declaration, easily able to split your project into multiple source files, etc.. All of which would help even the beginner which Arduino IDE does not provide.
But XCode? Out of all the IDE's out there, that's bottom of the barrel if you ask me (I spent the last year developing cross platform software on OSX/Windows)