Mathematica has an editor that's great for working on ... Math. Mathematica automatically saves Notebooks as "Packages". I don't think switching to a "free editor" to gain line numbers is what most people would consider "an advantage" but rather a loss of being limited to a line editor front end.
I disagree "eclipse' shows "line numbers". Eclipse doesn't know how Mathematica Kernel labels lines and former Input[] numbers.
"Wolfram Workbench: Eclipse-based IDE for the Wolfram Language", requires one has "wolfram workbench" which includes an "eclipse plugin". But i mentioned wolfram has separate developer front end to find above.
I would also warn that "IDEs" have an issue. You have to specify your project in "it's click language" and if changes are made you must "import" or loose your whole effort. Old project files often cannot be shared with others - who have a different version of the IDE.
I wouldn't say do not use x-code for developing iPhone apps I'd say it's the only good choice.
But I would say don't use a programming IDE (if you are not building a huge interface) without thinking through if it will really benefit you. For example "workbench" says jlink is included: but web things and jlink can be done with a normal notebook: workbench isn't needed to use jlink. workbench has debugging (but see Trace, mathematica has some debugging): however computer classes teach to avoid lengthy bouts with bug chasing: it's worth the time to insure you have no bugs and work in a way small oversights are easily known and resolved before they become a "problem".