Slashdot Mirror


Visual Studio vs. Eclipse: a Programmer's Comparison

Nerval's Lobster writes "Developer and editor Jeff Cogswell is back with a comparison of Eclipse and Visual Studio, picking through some common complaints about both platforms and comparing their respective features. 'First, let's talk about usability,' he writes, 'and let's be frank: Neither Eclipse nor Visual Studio is a model for sound usability.' That being said, as an open-source project, Eclipse wins some points for its customizability and compatibility with languages; it's more difficult to modify Visual Studio to meet some programmer needs, which has led to any number of abandoned projects over the years. Microsoft choosing to eliminate macros in recent versions of Visual Studio has also led to some programmer frustrations (and a need for external tools)."

19 of 543 comments (clear)

  1. Re:Studio v. Eclipse by binarylarry · · Score: 5, Informative

    Eclipse struggled a bit with the Eclipse 4 release but the new version Kepler is fantastic.

    Visual Studio is great if you're developing for Microsoft platforms.

    Fortunately, Microsoft platforms are growing less relevant by the day.

    --
    Mod me down, my New Earth Global Warmingist friends!
  2. Out of the box by Anonymous Coward · · Score: 4, Insightful

    Out of the box, VS wins hands-down.

    1. Re:Out of the box by dkf · · Score: 4, Informative

      And VS has TFS, which integrates with Sharepoint

      You mean the collaborative web system that barely manages to do basic things like integrate its calendar with Outlook, let alone Exchange or the other plethora of calendaring systems out there?

      My friend, you're exhibiting a lot of Stockholm syndrome there; do you work for Microsoft perchance? (If you do, when will Sharepoint support CalDAV? Even read-only would be genuinely useful, because that will let me pull the calendar events into my dev team's main shared calendaring system from some of our external partners rather than leaving their meeting requests orphaned.)

      But to a business that wants to automate almost everything in the PM toolchain, Eclipse isn't even on the radar.

      The biggest issue with that approach is that VS is tied to a single platform. If you're not working somewhere that buys into the whole of that stack, you're utterly uninterested in any of it. That's a lot of pro development shops, whatever you think.

      --
      "Little does he know, but there is no 'I' in 'Idiot'!"
  3. Um excuse me ... by Anonymous Coward · · Score: 5, Insightful

    A developer with sufficient skills can be productive in ....

    A developer with sufficient skills can be productive in anything.

    vi.

    gedit.

    emacs/xemacs

    Pencil and paper.

    And on very VERY rare occasions, I've seen developers who did everything their head and just typed in any old text editor.

    1. Re:Um excuse me ... by kthreadd · · Score: 4, Funny

      Forget text editors. Real developers adjust bits directly in memory using the switches on the operator panel.

    2. Re:Um excuse me ... by binarylarry · · Score: 5, Funny

      Fuck that shit bitch, butterflies for life.

      --
      Mod me down, my New Earth Global Warmingist friends!
    3. Re:Um excuse me ... by bertok · · Score: 5, Insightful

      Well, I'd never hire you in the first place, because modern IDEs are the automation of the software development world and demonstrably improve productivity while lowering error rates.

      You're basically saying that we should let the guys in the warehouse manhandle 500kg loads by hand because they "prefer" not to use the forklifts. We should just let them do whatever they please, because that's what makes for good management, right?

      I've been in mixed work environments before where everyone just used whatever tools they wanted: Linux, Windows, Mac, Vi, Emacs, etc... I personally used IntelliJ IDEA on Windows because it had code analysis and safe refactoring. My productivity was at least 50x higher than other developers. I was told not to submit changes too fast because the code reviewers couldn't keep up. Note that I didn't say I was 50x better than anyone else -- there were smarter and more experienced developers there -- but I was running circles around them because of the tools that I was using. A woodcarver, no matter how skilled in his art, simply cannot keep up with a CNC milling machine. A blacksmith cannot possibly outproduce a ten ton press that can stamp out a part every five seconds.

      Inefficiencies were everywhere: they took 30 seconds to check out a file from source control using a command-line tool, whereas I could just start typing with a barely noticeable pause on the first character as the IDE does it for me. They used "diff", I used a GUI 3-way merge tool that syntax highlighted and could ignore whitespaces in a semantically aware way. There was one particularly funny moment when some guy walked up to me to ask me to look into a bug in a specific method. He starts off with the usual "now go to the xyz folder, abc subfolder, now somewhere in here there's a..." meanwhile I'm staring at him patiently because I had opened the file before he'd even finished giving me the full method name at the start of his spiel. Global, indexed, semantic-aware, prefix search with jump to file is a feature of IntelliJ IDEA, not Emacs or Vi. He's never even heard of such a thing! Thought it was magic. Grep couldn't have found the method anywhere near as fast, not through 30 million lines of code anyway, and then it would have returned every reference to the method name as well, not just the method definition itself. Then I'd have to find the damned file in a haystack of thousands and open it manually anyway.

      Minutes of work in a seconds, hours in minutes.

      It's not about typing, or shortcuts, or block select, or the specific dialect of regular expressions in your favorite text editor. It's about indexing, refactoring, code analysis, live error highlights, popup-help, tab-complete, source control integration, boilerplate generation, integrated debuggers, and a thousand other things that most programming oriented text editors simply do not have. It's about letting the CPU in your computer do what it is there for, instead of just waiting patiently for the next keyboard interrupt so that it can use all 3 gigahertz of power to put a byte into a buffer and then go back to sleep.

      It's not even a good idea to let developers pick their favorite IDE either, because there are productivity gains to be had from consistency. Training is cheaper, licenses can be purchased in bulk, plugins will work for everyone, custom extensions may be cost-effective to develop for one IDE but not many, etc...

  4. Ec*freeze*lip*freeze*se works by Anonymous Coward · · Score: 5, Funny

    And I *freeze*refu*freeze*se to h*freeze*ave anyo*freeze*ne tell me di*freeze*fferently. *freeze*.

    1. Re:Ec*freeze*lip*freeze*se works by binarylarry · · Score: 5, Informative

      Check out the new Kepler release. Kepler was an iteration with a focus on improving the performance issues Juno had.

      http://eclipse.org/kepler/

      Kepler is pretty nice UX wise.

      --
      Mod me down, my New Earth Global Warmingist friends!
    2. Re:Ec*freeze*lip*freeze*se works by Githaron · · Score: 4, Informative

      I think I will stick with Intellij. It and its family are easily the best IDEs I have ever used.

  5. WTF? by TheDarkMaster · · Score: 4, Informative

    Eclipse IS slow, period. I work with him for over six years and has ALWAYS been slow compared with a similar IDE that is not based on Java. And not only slow, but terribly buggy. TFA sounds more like an article made by an eclipse fanboy than a developer trying to make a truly honest comparison.

    --
    Religion: The greatest weapon of mass destruction of all time
    1. Re: WTF? by thewils · · Score: 4, Funny

      Actually, Microsoft have been working on this aspect to try to slow down VS to compete with Eclipse. VS2012 for instance now has a pause built in where you can't do anything for about 10 seconds when you open up an aspx page, presumably while it parses the file for you...even when you don't want intellisense and just want to copy some code out. It gets really annoying after a while.

      Vanilla VS2012 won't let you build an installer for a Windows service either, which you could do with VS2010, so I have to maintain both of them on my dev box, unfortunately.

      --
      Once I was a four stone apology. Now I am two separate gorillas.
  6. Netbeans! by bigsexyjoe · · Score: 5, Informative

    It isn't nearly as popular (and I don't know why), but Netbeans kicks Eclipses ass. True, they are both memory hogs. But Netbeans doesn't drag and freeze as much. Its commands and interface are a lot more intuitive. Netbeans is also a much better IDE for the web. It handles JavaScript way better than Eclipse and even allows you to debug your JavaScript through a Chrome extension.

  7. Qt Creator!! by goruka · · Score: 5, Informative

    For all of those that love Visual Studio for C++ programming, and having used eclipse for some time, I believe Qt Creator is by far a much better alternative, as it has around the same level of functionality of VS+expensive commercial plugins.

    Even letting the Qt integration out, It has excellent code completion, shows warnings and errors as you type, provides great refactoring tools, It's extremely lightweight, works with any compiler and any build system, in any platform, integrates with a wide array of debuggers and profilers, has a high degree of customization, and some unique features like the best search/replace I've ever used and the locator (ctrl-k).

    The only reason it's not more popular is that most people believes it's only useful for writing Qt applications, which couldn't be further away from the truth. It's simply awesome. If I worked for Digia, I'd try to change the name and promote it to something unrelated to Qt, that way it would be really easy to bring new developers to their platform.

  8. Conclusion: meh by Aviancer · · Score: 5, Insightful

    So the conclusion is "both work; each has some flakiness".

    That's a long-winded way of saying "meh".

    vi or emacs debates anyone?

  9. Left out MyEclipse and IntelliJ by Kagato · · Score: 4, Insightful

    You're comparing an expensive IDE to a free one. I'd be more interested how it compares to a curated Eclipse experience like MyEclipse or a closed source IDE like IntelliJ. All that being said, Eclipse is mostly used by folks using Java or languages that run in the JVM. Visual Studio is going to be used by those on a Microsoft stack.

  10. Re:Getters and setters by AdamHaun · · Score: 4, Interesting

    Tangential question: What's the advantage of having getters and setters vs. just accessing the variable directly? If automatically generating getters and setters is just an easy/common thing, what function do they really serve?

    I've only done OO programming in college (I do embedded C now), so I'm assuming there's some real-world advantage that I'm not aware of.

    --
    Visit the
  11. Re:Getters and setters by HaZardman27 · · Score: 5, Informative

    One advantage is that it makes it easier on you if in the future you realize that you need to do any sort of validation or other logic that's not directly related to the accessing or mutating of a property's value, but needs to happen every time that property is accessed or mutated. If you were already calling 'getValue()' whenever you wanted 'value', all you have to do is add the new logic to the 'getValue()' method. It also allows you to have a private scoped object property while still making the property accessible to outside classes. Once again, you might want to do this so that you can always ensure that a value being set as the value of the property is valid and sanitized (if the property were public, any other class could directly change its value without the guarantee of the new value being valid).

    --
    Apparently wizard is not a legitimate career path, so I chose programmer instead.
  12. Re:Studio v. Eclipse by lgw · · Score: 4, Insightful

    VS was the best debugger in the business, and if you're stuck with a legacy code base that's arguably the most important part of an IDE. And back when MSDN was installed with VS (instead of being a web site) it was amazing for its time, because you could select any library function name and with a keystroke get really well written docs for that library function fast. I used to have half my screen for code and half for the doc pane. Once it became wait-a-few-seconds-for-the web-page, that advantage was lost.

    --
    Socialism: a lie told by totalitarians and believed by fools.