There are also a lot of small things that I appreciated more about Eclipse. Eclipse is usually pretty good with Intellisense and seems to be better at presenting it than Visual Studio. For example, at least in C#, the only option that I can find is to present the last used item. In Eclipse, it will present a group of items that match the data type. In other words, if I'm assigning something to a string, Eclipse will present items that are either of a string type or return a string type.
Although, Visual Studio's ability to present items via typing is better than Eclipse. In my experience, Eclipse only searches from the beginning of the word, but Visual Studio will search the entire word for an instance of what you're typing. I've had that come in handy for finding a commonly implemented method without knowing what they called it in C#.
However, Eclipse is much, much more handy when it comes to activating Intellisense. My biggest qualm is with methods in Visual Studio. Why does Ctrl+Spacebar
never work with a method signature? I have to delete the open parenthesis and re-enter it to get Intellisense to pop up. I can't remember if Eclipse just pops it up by default or if the usual Ctrl+Spacebar does it. Also, in Eclipse, if I have my cursor
anywhere in a method name, and hit Ctrl+Spacebar, it will bring up Intellisense for possible substitutions. In Visual Studio, you have to put the cursor by the period for it to work.
In other words, Intellisense is a hell of a lot better in Eclipse.
I also miss the bar in Eclipse that put little dots where the errors are.
I also miss the panel that contains all of my members of my currently open class. Sure, Visual Studio has the Namespace + Members combo boxes at the top, but it's just not the same. :\ The pane is much faster, and I haven't found a comparable thing in VS (other than the combo boxes).
In fifteen years with Visual Studio I have managed to avoid the designers, and plan to continue doing so.
I hand-code all of my GUIs in Java, but since the .NET languages don't use relational placement (there are ways to sort of do it), I don't see why not.
However, one of my latest "babies" uses a lot of dynamic placement, which means I am definitely not doing most of it via the designer.
The undo... yeah, but I rarely use undo anyway. If I'm on a TFS project as I am now I just Undo Changes. If it's a local project I usually don't need to undo more than one or two small changes.
Well, the problem usually comes if I'm tinkering with adjusting a line of code, and I break my typing a lot. Sometimes when I'm tinkering, I just end up changing everything back, which was quick and painless in Eclipse.
EDIT:
Although, my complaints are probably understandable. I was using Eclipse for a few years, and got used to its features. It would be akin to someone telling me that I had to use an Android phone after using an iPhone for so long. I would want things to remain close to the same (unless it was a good enough of an advantage).