Comparing Visual Studio and Eclipse 294
An anonymous reader writes "Getting started with Eclipse can be confusing. New concepts, such as plug-in architecture, workspace-centric project structure, and automatic build can seem counterintuitive at first. Without waxing too philosophical about IDE design, this article presents the main differences between Visual Studio and the Eclipse IDE."
Eclipse vs Visual (Score:5, Funny)
Now, to get the folks that can add studio into the equation....
Re:Eclipse vs Visual (Score:4, Funny)
That's not a comparation !! (Score:5, Informative)
Re: (Score:3, Insightful)
Eclipse *is* a C/C++ IDE (Score:3, Interesting)
Re: (Score:3, Funny)
I haven't used it, but it should be pointed out that Eclipse is now so big that it's also used for a lot of stupid reasons -- that it's used for $foo doesn't prove that it's a good fit for $foo, or for anything else.
I used to be in a project where we used Visual Studio 6. In reality, it sucked, so I wrote all my code in Emacs.
Re:That's not a comparation !! (Score:5, Funny)
It's more like Introduction to Eclipse for Visual Studio developers.
Re:That's not a comparation !! (Score:4, Funny)
Well, it's only the Slashdot summary that's misleading, then.
Re: (Score:2, Informative)
Re: (Score:2)
Oh, wait, that includes me...
Not Apples to Apples (Score:2)
The compare and contrast was superfluous at best. This was merely a "my dad's better than your dad" analysis.
Re:Not Apples to Apples (Score:4, Informative)
Plugins make Eclipse what it is (Score:5, Informative)
The most important thing to me in moving to Eclipse was that it would fully support the Vi command set. There were several different Vi-type plugin options available, but after trying them all I ended up using the only commercial download of the bunch, which was availble for $20 here:
http://satokar.com/viplugin/ [satokar.com]
The only other IDE I've ever found that was acceptable before Eclipse was Visual SlickEdit, which had most of the same features as Eclipse but was very expensive and didn't have the F&OSS plugin community of Eclipse.
Now that I'm into Eclipse, I don't think I'll ever look back!
-Will the Chill
*please insert 10 cents for one additional sig*
Re:Plugins make Eclipse what it is (Score:5, Funny)
Why does your boss hate you?
Re: (Score:3, Funny)
Re: (Score:3, Funny)
Re: (Score:2)
Re: (Score:2, Insightful)
Thats not an argument, thats a statement. So far you've presented nothing to back it up.
hmm (Score:4, Insightful)
Eclipse would be awesome if.. (Score:5, Insightful)
The only problem is it's so damned bloated. It wasn't until I used it on a powerful server-turned-into-a-workstation box that I found eclipse usable. On a standard system, it's just too laggy.
Even disabling some of the heavier features, I find it hard to get any work done when not using it on a system with 4 GB of ram and two processors.
Visual studio on the other hand I think is the perfect IDE for
Re: (Score:3, Informative)
Re:Eclipse would be awesome if...it was compiled? (Score:2, Informative)
http://sourceware.org/eclipse/ [sourceware.org]
However I do find the autocomplete features quickly grind to a halt whilst using APIs with large numbers of methods such as jogl.
I hope Ecipse gets better and better because it really is an excellent IDE, and at the moment the only thing holding it back is the performance issue.
Re:Eclipse would be awesome if...it was compiled? (Score:5, Informative)
Re: (Score:2, Informative)
On a 4 GB RAM server, we can smoothly run 8 instances of eclipse + 8 instances of Xvnc that the developers access remotely to work in their development environment, this is on linux. Are you on windows ? Could there be issues with your environment that impact performances when running eclipse ?
I also run 1 eclipse instance quite smoothly on my IBM thinkpad 1GB RAM and windows XP.
Re: (Score:3, Informative)
The version of java you use to run it seems to make big different btw -- I used Sun's java 6/1.6/whatever, but earlier I accidentally tried to r
Re: (Score:3, Informative)
That's odd... it works fine for me on a 1GB system with a single celeron processor. Yes, it eats a lot of memory (I tend to find about 300MB, compared with about 100MB for VS), but if it's all you're doing with a box I don't see any reason you'd need more than 1GB for it.
This is why i use notepad++ (Score:2, Interesting)
http://notepad-plus.sourceforge.net/uk/site.htm [sourceforge.net]
Re: (Score:3, Informative)
Say what? Examining an average project in my workspace, I have 4.2K of eclipse settings files, 55K of source files and 72K of compiled binaries. This doesn't seem unreasonable to me, and if 4.2K of extra data is taking "minutes" to copy to your flash drive, you probably need a better flash drive.
Re: (Score:3, Informative)
Eclipse rules, but the summary != the link. (Score:2, Informative)
Intellisense (Score:5, Insightful)
I've been using Eclipse professionally for some time and the only recent Visual Studio experience I've had has been working on some sparetime C++ project with a buddy. But from that I seemed to notice that the intellisense kind of feature and other assisting tools seem far more evolved in Eclipse. For instance, Visual Studio will sometimes fail to find the members in an object when I type <object><dot> and this rarely fails in Eclipse (unless there's a syntax error).
Eclipse also assists in further ways I'm missing from Visual Studio. It highlights syntax/parser errors, a feature which might seem annoying until you realise that Eclipse will help you solve it. This will save you from a lot of typing effort if you use it to your advantage. If you assign a value to an undeclared variable and press Ctrl+1 on the error Eclipse will offer to declare the variable either locally or as a field. If you instantiate a class, or access a method/field that doesn't exist Eclipse will offer to make a stub for you.
It's features like this that has turned Java from a hideously verbose language into something that's almost easier to develop in than Ruby (imho), and Visual Studio seems almost antiquated on this subject (there's no excuse for not implementing these features for statically typed languages such as C/C++)
Re: (Score:2)
Re: (Score:2, Informative)
Visual Studio has a Refactor menu and can do the following types of things for you:
- offer to fill in signatures of members of interfaces that you have implemented
- offer to provide signatures of methods you wish to override from a base class
- reorder method parameters
- promote local variables to method parameters
- remove method parameters
- rename members
- encapsulat
Re:Intellisense (Score:5, Informative)
It also seems much more of a pain to open an eclipse project on a different machine (at least with the Perforce plugin) than with Visual Studio (I just recently had to have someone else set up one of my Eclipse projects on their new machine, and we got into some sort of recursive look where Eclipse ended up creating subdirectories until it hit an NTFS limit for directory depth (which was a royal pain to clean up -- XP's fault, but still).
I think that much of it is preference, but each can (and should) learn from the other.
I'm anxious to see how X-Code (current and "leopard" release) compare... I've just started using a Mac as my primary development machine (and thanks to Parallels, I can run VS for existing dotnet and C++ development) as well as Eclipse on the Mac. I have not yet figured out how to begin integrating our existing Unix build scripts into X-Code to use it...
Re: (Score:2, Interesting)
I haven't used Eclipse much, and only with Python, but from memory I thought that it did remember the last variable used, but that might have been some other IDE I was experimenting with.
Re: (Score:2)
As for a comparison to eclipse? I don't think they target the same market honestly. Eclipse really seems like the IDE of choice for open source langu
Re: (Score:2)
Re: (Score:2)
Re:Intellisense (Score:5, Informative)
What version of Visual Studio are you comparing against? Visual Studio 2005 (which is the basis for the free Express [microsoft.com] versions, so you can try it out without risking any cash) has all of the features you claim are lacking. It's maybe not as automatic (VS2k5 won't automatically stub a method for you unless you tell it to do so), but IMHO that's a good thing -- I don't want the IDE second-guessing what I'm doing.
Perhaps you were using Visual Studio for C++ code? It's been a while since I've done any C++, having focused almost exclusively on C# for the last 5 years, but with C# the IDE will catch syntax errors, auto-complete for you if you wish (use ctrl+space to bring up intellisense), stub out methods and interface implementations (ctrl+F10 to open the SmartTag-like dropdown), allow you to easily refactor code into methods or wrap variables into Properties, declare "using" tags if you reference something from an assembly in the project references without declaring its namespace (you can alternatively tell it to use the fully-qualifed namespace if you don't want to add it to your "using" list), etc. I would assume that most of the functionality also exists for C++ projects, but I haven't verified that. The functionality is all there (at least for .NET languages), in the box, without any extra plugins needed, and Visual Studio is lightweight enough that I can run 4-5 instances on a 2 year old laptop with 2GB RAM without any issues at all. VS is also pluggable like Eclipse, so feel free to extend it as you wish.
It's been a while since I tried using Eclipse, mostly because I haven't done any Java work since graduating from college back in 2000. When I did last check it out (probably 2-3 years ago) it was horribly obtuse and bloated. I'm sure things have gotten better over the years, and if I had to start working with Java Eclipse would be my first choice of IDE, but in a Windows C++/C# world I'll choose Visual Studio 2005 every single time. (I'd choose Visual Studio 2008, but I was burned by the VS2k5/.NET 2.0 beta and am now wary of beta versions of Visual Studio -- I'll switch when it ships.)
Visual Studio - Dead for C++ (KDevelop!) (Score:2, Interesting)
Autocomplete in C++ sucks, and a lot of that has to do with the language itself, but, in terms of the compiler telling you exactly what is wr
Refactoring (Score:3, Informative)
Re: (Score:2, Informative)
Call graphs and type hierarchies (Score:3, Interesting)
Oh and automatic insertion of import statements and import re-organisation is pretty useful.
Also Eclipse's incremental compilation generally seems to be of a higher quality than VS, e.g. it shows you errors as you type whereas VS does so only after an explicit compilation. VS's incremental compilation appears to be limited to driving syntax coloring of class names and code completion (AKA Intellisense(TM) I believe).
Eclipse's local history of file changes has saved my arse on one occasion (no equivalent in VS) and the file comparer when checking into CVS is pretty cool, far ahead of the (admittedly dated) Visual Source Safe V6 we still use at my workplace (Team Studio was too expensive apparently).
Speaking as a mainly VS user I find that setting up projects in Eclipse can be pretty bewildering at times, but that could just be lack of experience.
Eclipse has *never* crashed on me. VS crashes very occasionally now, but it does still happen.
On balance I would say Eclipse is a far higher quality product than VS, and considering it's free it's a pretty amazing IDE. You can of course get VS Express editions for free now with some functions disabled, multithreaded debugging and compilation for 64bit environments being the missing bits that I have come across.
Re: (Score:2)
Also, Source Safe really, really blows. Team foundation is actually great though.
Its true that for the price, Eclipse can't be beat though
Who would want to compare different religions? (Score:2)
There is so much religion involved on this topic that this discussion is likely to evolve into a big flame war. Some people really like Microsoft products, while other people hate them.
You may call me religious, as I have never really liked products from Microsoft, and my knowledge of Visual Studio is limited.
I use Eclipse on a daily basis and I'm quite happy with the IDE unlike other IDEs I've got to know, like NetBeans.
Having said that, the article from IBM looks fine to me. If we ever get a new em
total eclipse of the heart (Score:2, Interesting)
as tfa, once you get over the initial hassle of setting the thing up, its a joy to use. also, its dammed stable.
the svn, the code completion, error checking, and the countless lovely little features (i love you all) work a treat, and make it a winner every t
Re: (Score:2)
i don't know a single developer thats used both who doesn't recognise visual studio to be a vastly inferior product.
Hi. I'm a developer, I've used both, and I don't recognise Visual Studio to be a vastly inferior product. There, now you know one. :-)
A few things (Score:2)
Secondly, people keep talking about how Eclipse is used via plugins, mostly, and with plugins, it's better than Visual Studio. Well, if you're going to have plugins/add-ons for Eclipse, let's make it fair and do the same for Visual Studio. Let's toss in Visual AssistX and Incredibuild.
I'm not saying one is superior to the other, since I've never used Eclipse, but I am saying that if you're going to compare them, be fair about it.
Re: (Score:2)
For someone doing personal projects for fun, thats simply not possible. Just as an example, I recently switched workpla
What about NetBeans? (Score:5, Interesting)
Re: (Score:2)
Re: (Score:2)
I keep trying to like eclipse (Score:3, Interesting)
Am I right to assume eclipse is kind of like the linux kernel, and you need to pick a "eclipse distribution" to get any kind of coherent package?
Re:I keep trying to like eclipse (Score:5, Informative)
Its a 'click here and install' sort of thing. Both for windows and OSX.
Re: (Score:2)
I'm trying to do perl right now. I've been spoiled rotten with Visual Studio (C# / C++ work) and want the same kinds of goodies for my perl stuff
Hot Swapping Code (Score:3, Interesting)
Mix up this recipe:
Eclipse starts Tomcat in debug mode by default. Automatically compiled classes in Eclipse are piped over the debug socket to the container. The class is swapped out in real time, and you've got a brand new piece of code to run without having an entire build/deploy cycle. Better than that, you can be stepping through your code debugging a method, see your mistake, fix it, hit ctrl-S to save, and the debugger backs up to the top of the method and evaluates your new code!!!
VS.NET (v1.1 when I used it) simply could not do that. IIS was not as cleanly integrated with VS.NET (as far as I am aware, maybe I'm wrong)
Eclipse plug-ins exist for all major containers. MyEclipseIDE makes a killing marketing a bunch of them. Even IntelliJ (my preference for Java development) cannot match it, because you have to explicitly build (which can hot swap) but it'll take seconds, as opposed to milliseconds in Eclipse. big big fan of the hot swapping ability.
Re: (Score:2)
Aside for posts like this, I refuse to acknowledge that
My switch from VC++ to Eclipse (Score:5, Informative)
- There is SVN integration, task integration with Mylyn which can help you focus on only one task at a time, etc. - stuff you simply can't do in VC++ or, if you can, not without paying a lot of money
- The ability to compile one file on each CPU is, laughably, apparently worth $5,000 to Microsoft. Even then, I've heard it doesn't work properly
- I can easily make automated compile/test scripts thanks to switching to MinGW from VC++, and run them automatically on a Linux server which will notify me if a build goes awry
- EASILY extensible. I can compile every bit of the C++ toolset in about 30 seconds, since it is written in Java. If your machine can't run it, you deserve a better machine anyway to soothe compile times...
- The intellisense in both are pretty much comparable with the Europa release.
- If I decide to switch to Linux, all my hotkeys, knowledge, and features are still available.
I could go on and on, but those are the main reasons.
Lack of GUI tools (Score:2)
I've enjoyed both (Score:4, Interesting)
Personally now I use VS.net more often. From where I work I have an MSDN account and get free downloads of all their developer tools to play around with. So I've spent a lot of time playing with things.
I like the integration of everything. From the SQL browser to Team Foundation Server, it's really streamlined to have access to have everything all at once. Honestly, I've been pretty impressed with most of
Obviously the biggest problem with it all is that it costs money. A lot of money if you want the IDE with all the architecture tools, design tools, testing tools, compilers, SQL server, TFS for source control and deployment, etc. You're locked into a MS environment essentially. And sometimes this isn't a problem at all. Maybe you're developing an ASP.net site or something. But you're spent a lot of money on tools and when multiplied by 50 developers, this can add up to a lot. However, you get MS support and for a lot of business companies with developers that aren't the greatest thing around, this is very valuable.
Eclipse has limitless plug-ins and can do everything VS.net can in terms of hooking into things. I don't find it as seamless and the whole package isn't there for everything from sharing documentation to deployment, etc. And there isn't support either. So a company is essentially on their own. But it's empowering to be able to ala cart the components you want.
I like both but have been really impressed with Visual Studio and all the related tools.
Re: (Score:2, Informative)
Re: (Score:2)
I do use SQL Express at home when I'm messing around. I thought it was free with a Visual Studio install.
How well would that database hold up in a real world context? That is, how much abuse can it take? I want to deploy a little site that won't ever get a lot of traffic (few thousand a day at most) and don't want to pay for a SQL Server license. The isn't too
Re: (Score:2)
Looks like express should be plenty powerful. Thanks.
Building projects automatically (Score:2)
Re: (Score:2)
Eclipse for C/C++ (Score:2)
Apples and aeroplanes (Score:4, Interesting)
Maybe if an 'Eclipse for VS users' tutorial was available back then I would have given Eclipse more of a chance, but for something that works straight out of the box, VS had Eclipse beat hands down.
(Disclaimer: I'd spent the previous 2.5 years working with VS)
Eclipse Memory Tip (Score:2)
I don't know why this isn't brought to the user's attention (via a startup tool tip or something). "You currently have 60 projects. You should close projects you're no
One Big Difference: Cross-Platform (Score:5, Insightful)
Here is the list of operating systems that will run Microsoft Visual Studio 2005:
In addition to the list of operating systems above, here is the list of operating systems that will also run Eclipse:
Re: (Score:3, Informative)
Not wanting to rain on your parade or anything but just because a platform has Java on it doesn't mean that it will run Eclipse. Eclipse uses SWT which uses JNI calls to the underlying window manager - this JNI code needs to be ported to the OS before you can run Eclipse.
You can still run Eclipse on far more platforms than VS...
Someone say "release"? (Score:3, Insightful)
I've spent some time building an application in SWT, which is reasonably sweet and sophisticated -- however, now that I'm looking to release my application, I'm having to experiment with applications to bundling third-party products, experiment with batch launchers, learning how to manipulate jar files, etc.
I wrote a C# program in VS a few months back, and on top of the immediately present and obvious GUI manipulation tools, the ability to just take my exe and run it on another machine without doing further research was a nice benefit.
Re: (Score:3, Funny)
Re: (Score:3, Insightful)
Eclipse>Visual Studio
Which would be funny, except that for the languages supported by Visual Studio, the correct version is Visual Studio >> Eclipse.
Eclipse does fine on its home territory as a Java IDE, but the plug-in system is way too disorganised and underpowered for serious development in, say, C++ or C#. Even if you use CDT for C++ work, it's basically hopeless unless you're combining it with GNU tools, and things like the debugging tools aren't even close to the power of VS.
Re:I beleive the technical term is (Score:5, Insightful)
If you're doing MFC, or
It's also encouraging that enhancements can be written for Eclipse easily without IBM worrying that your enhancement will stop people upgrading to the Pro edition.
I think that because IDEs for any language all share so many requirements, and because they're used by developers who will want to improve it, it makes a natural open source project, and I expect as time goes on it'll get better and better.
Re:I beleive the technical term is (Score:5, Funny)
Re:I beleive the technical term is (Score:4, Insightful)
Real programmers do not need debuggers ;-)
Seriously, I have been using eclipse for years and I don't even know how to invoke the debugger. Nothing I hate more than an IDE falling into debugging mode when an error is encountered. A stack trace is fine with me. When really stuck, I insert debugging statement in the code in the relevant places.
Of course, I realize that this is my old way to view things. I also know that modern development teams would go on strike if I tried to impose them an IDE without a debugger ;-)
So, view this as my 2 cents, nothing more ;-)
Re:I beleive the technical term is (Score:4, Insightful)
A good debugger can be a time saver, but one should really only need it if the program is large enough that it isn't clear as to where a variable changes to something naughty. Yes of course, one could do that by hand, but that isn't necessarily the same, every once and a while there is a genuine bug in the compiler or something isn't being done the way that it should be, and paper tracing isn't going to find that.
I would be curious as to how you handle code which is separated into many files to keep things small and comprehensible. Of course each file is easier to fix, but I am somewhat curious as to how you deal with the interactions between multiple source files. And more specifically all of the flipping between source files that can happen with a more complex program.
Re: (Score:3, Interesting)
With debugging statement:
FileThatObject.thatMethod(): x=1, y=2
Of course, you have to be in pretty good control of your code, plan and visualize in advance, before you actually start to write the code so the few times where you will need to write debugging statements is when you made some typing mistake (or almost).
It is a different approach to coding, but it leads to more robust code in my humble opinion. The down side of a debugger is that sometimes, it happens that some developers do not know what
Re: (Score:2)
I'm a bit confused....this 'planning' thing you talk about...what is this?
Is this concept similar to another strange one I heard about the other day.....'documentation'??
Re: (Score:3, Interesting)
NetBeans (Score:5, Interesting)
I find it is rapidly over taking VS.Net and Eclipse with things like its improved intelli-sense, built in profiler, tools for building handheld apps and many more improvements.
Re:NetBeans (Score:5, Funny)
Visual Studio vs Eclipse, the winner is....jEdit (Score:2)
Re:I beleive the technical term is (Score:5, Informative)
(Oops -- you mean VS supports extensions? But TFA says that's unique to Eclipse!)
Re: (Score:2)
Fun fact, though I dont have the MSDN link, from what I understand Visual Studio provides all kinds of hooks to get it to "understand" your language of choice. Besides the python thing, aint there a PHP one?
Re: (Score:2)
Re: (Score:2)
You should tell your marketing dudes they need to make this website more prominent on the MSDN site. I had no idea this site even existed!
Re: (Score:3, Informative)
Re: (Score:2)
class foo:
blah
blah
def outsideFoo(gnoo):
return gnoo
foo.noo = outsideFoo
print foo.noo(7)
is valid Python.
Re:I beleive the technical term is (Score:5, Informative)
Re: (Score:2)
I believe the technical term is 'obsolete' (Score:3, Informative)
Oh yeah fun hint: Jythons XML-RPC server + Your Java monstrosity of choice = xml-rpc API for your app in under a page of code
Hope it did that last year, because that's about the last time anybody developed anything using XML-RPC in Java. Wake me when they support basic WS-I functionality. Oh, and adding a WS API to your app in Java only requires you to write this:
@WebService()
public class WebServiceAPI {
@WebMethod
public String callSomeAppFunction(@WebParam(name='param1') final String param1,
Re: (Score:3, Insightful)
Re: (Score:2, Funny)
The latest 2005 editions even come with a set of custom options for configuring your resource hogging.
The flashing file save icon has been redesigned and now displays as an alpha blended bead of annoyance.
Re: (Score:3, Interesting)
How much of this is due to JRE implementation? I know Sun's JRE likes to load a lot of class code; at one point with 1.5.x I had to manually bump the memory reserved for class code above the default of 64MB while running Eclipse. What fraction of that is wasted on infrequently used code? I also recall not being able to allocate >1.6GB of RAM on 32 bit W2K3 because, according to Sun, their JRE's heap requires contiguous RAM, and 32 bit W2K3 can't p
Re:How is IBM an unbiased source? (Score:4, Informative)
Re: (Score:2, Interesting)
...I picked up a cheap copy of Visual Studio 2005 at a computer flee market.
This is the point where I imagine pandemonium as folks run in terror from the local bingo hall on computer sale weekend. As they should. Those places are out to get you.
tongue->cheek
So what you mean is that you picked up a Chinese copy of MSVS 2005? If you're going to aid and abet piracy, you might as well not give the other pirates encouragement in the form of hard currency.
tongue->back-in-normal-place
Recognizing that MSVS was facing real competition in the IDE arena, MS got smart
Re: (Score:2)
They were running a promo a few months ago where you watched a couple of short films on the web, filled out the form, and paid shipping costs. I just let the films run in the background and a week later, I got a nice bubble mailer from the local Microsoft office with my copy.
Re:Eclipse isn't really an IDE anymore (Score:4, Funny)
Re: (Score:2, Informative)
Ummm, are you on crack? Sorry, but why on earth would you NOT want an IDE? It saves tons of time, prevents easy mistak