Xcode has command line tools. You don't have to use the GUI exclusively. Also I know at least one developer that uses vim for editing but uses Xcode for building. It's probably in your best interest to use some combination (e.g. Xcode for configuring your build settings)