Slashdot Mirror


Comparing Visual Studio and Eclipse

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."

73 of 294 comments (clear)

  1. Eclipse vs Visual by Anonymous Coward · · Score: 5, Funny

    Well, by definition, you cannot see the object if it is eclipsed. If something is visual, you can see it. Easy enough comparison.

    Now, to get the folks that can add studio into the equation....

    1. Re:Eclipse vs Visual by ScrewMaster · · Score: 3, Funny

      So, what you're saying is that you're better off with a partial Eclipse rather than the full download.

      --
      The higher the technology, the sharper that two-edged sword.
  2. That's not a comparation !! by Saija · · Score: 5, Informative

    Hey guys before the flame start the article is not a comparation between VS and Eclipse, it's a Intro to eclipse for VS users...

    --
    Slashdot ya no es que lo era! ;)
    1. Re:That's not a comparation !! by CastrTroy · · Score: 2, Insightful

      Mod this guy up. Seriously, I don't even know how you would do a comparison of 2 products that don't compete against eachother. Sure the are both IDEs, but one is mainy for Java Development, while the other is for .Net,C++. Comparing features and how easy to do things would be nice, but the major deciding factor for most people will be which programming language they are using.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    2. Re:That's not a comparation !! by Jugalator · · Score: 4, Funny

      Exactly -- I kept looking for the Visual Studio screens and side-by-side comparisons. Nothing. :-S

      It's more like Introduction to Eclipse for Visual Studio developers.

      --
      Beware: In C++, your friends can see your privates!
    3. Re:That's not a comparation !! by Jugalator · · Score: 3, Funny

      LOL wait a minute, I see now that was exactly the page's title... Haha...

      Well, it's only the Slashdot summary that's misleading, then.

      --
      Beware: In C++, your friends can see your privates!
    4. Re:That's not a comparation !! by QMalcolm · · Score: 2, Informative

      "It's more like Introduction to Eclipse for Visual Studio developers." Funny you should say that. The title, is, in fact: "An introduction to Eclipse for Visual Studio users" Crazy!

    5. Re:That's not a comparation !! by jgrahn · · Score: 2, Funny

      ... and I've heard from many in the embedded world who state that Eclipse CDT has become the standard IDE in that arena.

      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.

  3. Plugins make Eclipse what it is by Will+the+Chill · · Score: 5, Informative

    I've been using Eclipse for quite some time now, and must say that it's by far the best IDE I've ever had the pleasure of operating. Because of superior modularity, I can use different Plugins to simultaneously edit projects in C++, Perl, and Fortran with full syntax highlighting and real-time error checking. This saves alot of time in recompiling your apps!!!

    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/

    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*

    --
    Creator of RPerl, Scouter, Juggler, Mormon, Perl Monger, Serial Entrepreneur, Aspiring Astrophysicist, Community Organiz
    1. Re:Plugins make Eclipse what it is by Just+Some+Guy · · Score: 5, Funny

      I can use different Plugins to simultaneously edit projects in C++, Perl, and Fortran

      Why does your boss hate you?

      --
      Dewey, what part of this looks like authorities should be involved?
    2. Re:Plugins make Eclipse what it is by blackpaw · · Score: 2, Insightful

      My argument is that community-supported Free & Open Source Software solutions a superior IDE make.

      Thats not an argument, thats a statement. So far you've presented nothing to back it up.

    3. Re:Plugins make Eclipse what it is by gbjbaanb · · Score: 2, Funny

      He doesn't, the guy's a masochist who likes hurting himself, hence "The most important thing to me in moving to Eclipse was that it would fully support the Vi command set"

    4. Re:Plugins make Eclipse what it is by Rogerborg · · Score: 2, Funny

      And he likes to take his punishment from a paid professional. Kinky.

      --
      If you were blocking sigs, you wouldn't have to read this.
    5. Re:Plugins make Eclipse what it is by Haeleth · · Score: 2, Insightful

      We'll just ignore the fact that Visual Studio does everything you said straight out of the box.
      Visual Studio comes with Perl and Fortran support and vi emulation, out of the box? That's amazing! I wonder why Microsoft have never bothered to mention any of this?
  4. hmm by El+Lobo · · Score: 4, Insightful

    Well, I've been using both every day for years now. As always there is no black and white but there is a lot of grey there in between. If I need to chose, I would chose Visual Studio any day. That doesn't mean that it's perfect: it's not, but it simply feels better for my needs. My subjective opinion is that VS feels a lot more "solid" to me, faster and "logical" to my Borland eductated tastes. Havig support for C# is also a big plus to me, but that has nothing to do with the point of the article. Being OS is nota plus in my book, because I really don't prefer OS over commercial or the oposite just for the sake of it... I'm not religious in any shape or form. My 2 euro cents.

    --
    It's time to realise that Abble's products are the biggest abomination these days. Just say NO to the dumb iAbble way!!
  5. Eclipse would be awesome if.. by Anrego · · Score: 5, Insightful

    Personally I love Eclipse. Working in an environment where I was required to rapidly switch between Perl, C++, Java, and Oracle, Eclipses perspective system is a godsend.

    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 .NET. I think the main reason for this is that Microsoft holds all the cards. They don`t have to accommodate a million developers tool preferences, because they define the tool set. I`m not saying this is a good thing, just that it makes a perfect foundation for building a powerful IDE.

    1. Re:Eclipse would be awesome if.. by smartr · · Score: 3, Informative

      What possible features could you be using that require 4 gigs of RAM? I'm not going to pretend Eclipse is lightweight, but I find that it's memory footprint has been under 300 megs. I'm using the WTP Eclipse platform, and shifted a few months back from 3.2 to Europa(3.3). I'll probably be shifting entirely to the Red Hat Development Studio, because it's basically everything I'm using with a bit more, in a nice package. Are you perhaps using version 2? I haven't found a descent relational database management tool plugin for eclipse, and I'm curious if that Oracle plugin is the troublemaker. I've been using Squirrel SQL for the database. I admit this would still be saying 512 megs is really stretching your system, and 1 gig is more like a sensible minimum to be developing on.

    2. Re:Eclipse would be awesome if.. by ls671 · · 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.

      --
      Everything I write is lies, read between the lines.
    3. Re:Eclipse would be awesome if.. by macshit · · Score: 2, Informative

      I dunno, Eclipse is certainly bloated, but I run it on a 450MHz PIII system with 512MB of RAM, and it's perfectly usable (debugging fairly hefty programs). The only thing I found I had to disable was the "method completion" (whatever you call it). [This is on a debian system with a 2.6 kernel BTW; less sophisticated systems like windows might need more resources.]

      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 run it using GCJ (the java version of gcc), and that was completely unusable, mostly because my system tried to swap itself to death.

      --
      We live, as we dream -- alone....
    4. Re:Eclipse would be awesome if.. by julesh · · Score: 2, Informative

      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.

      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.

    5. Re:Eclipse would be awesome if.. by julesh · · Score: 2, Informative

      Not the mention the huge size of projects compared to how much actual code is present. When it takes me minutes to transfer a project of only a thousand or two lines onto a flash drive, there's a problem.

      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.

    6. Re:Eclipse would be awesome if.. by MemoryDragon · · Score: 2, Informative

      Eclipse is more of a toolset, often you have to go plugin shopping, bare eclipse does not bring you very far, and Eclipse Europa while being very extensive still feels unfinished, I usually go for MyEclipse for my Eclipse needs, it always is somewhat better than the pure oss collections. Netbeans however is nicely integrated, everything feels like being solid, but the 5.5 version falls flat on some areas, like db integration, I have high hopes for version 6. Anyway if you want to kickstart with JEE coding then Netbeans probably is the better choice if you dont have experience. It is more of a classical ide!

  6. Re:I beleive the technical term is by Anonymous Coward · · Score: 3, Funny

    so you're saying Eclipse eclipses Visual Studio?

  7. Re:I beleive the technical term is by Anonymous+Brave+Guy · · 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.

    --
    If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
  8. Re:Question by LiquidCoooled · · Score: 2, Funny

    Yes, Microsoft worked hard to implement the slowness of Eclipse within Visual Studio.
    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.

    --
    liqbase :: faster than paper
  9. Eclipse rules, but the summary != the link. by Tom9729 · · Score: 2, Informative

    Eclipse rules, I use it for PHP and Java development. The summary != what is linked to though...

  10. Re:I beleive the technical term is by gangien · · Score: 3, Insightful

    and Intellij > Eclipse

  11. Intellisense by plams · · Score: 4, 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++)

    1. Re:Intellisense by Anonymous Coward · · Score: 2, Informative

      Visual Studio 2005 supports the same features. You just have to access them in different ways, using different keystrokes, menus and shortcuts.
      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
      - encapsulate a field to create a property wrapper for it (set, get)
      - extract statements from the body of a method to create another method

      The intellisense capabilities are extensive: auto-complete, shows help excerpt tool tips, shows signatures of members.

      The debugging features are extensive. You can pretty much see and change anything on-the-fly while stepping through your program. List too long to go into ...

      Visual Studio intellisense sometimes fails notation when there is a syntax error above it in the code, not unlike Eclipse does.

    2. Re:Intellisense by dreamt · · Score: 5, Informative

      Funny, because a lot of times, I find it to be the opposite. While I'm no huge MS fan, I think that Intellisense is much more refined in VS2005 -- and its simple things that make it such... ones that nobody else did, but its obvious once you see it. For example, the fact that when you hit DOT in VS, it goes to the last used property/method rather than the first one in an alphabetical list. I think that quite a few times, I want to refer to the last property that I uses, rather than having to scroll to it. Simple things like that.

      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...

    3. Re:Intellisense by Osty · · Score: 5, Informative

      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++)

      What version of Visual Studio are you comparing against? Visual Studio 2005 (which is the basis for the free Express 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.)

    4. Re:Intellisense by maglor_83 · · Score: 2, Interesting
      From my experience, Visual Studio's intellisense is pretty good when programming in .NET. However, its terrible for C++. It frequently decides to lose scope information, which then makes the entire tool completely useless. Even when it does work, it doesn't remember the last used variable like it does in .NET.

      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.

  12. This is why i use notepad++ by Anonymous Coward · · Score: 2, Interesting

    multiple language support, plugin support, open source:

    http://notepad-plus.sourceforge.net/uk/site.htm

  13. Call graphs and type hierarchies by locster · · Score: 3, Interesting

    I use the call graph and type hierarchy views in Eclipse all the time. They're particularly useful for learning the structure of code you haven't written or come into contact with before and they allow you to navigate code almost effortlessly. Visual Studio's equivalents are pretty dire in comparison, the 'Find References' view just gives a flat list and lists methods with the same name but different signatures and as such I often resort to compiling C# and navigating it with the excellent .Net Reflector tool.

    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.

  14. Re:Not Apples to Apples by plams · · Score: 3, Informative

    But the plug-ins are not of the high standard that the Java development environment is, so there's currently little reason to use Eclipse for C++, C# or VB development unless Eclipse happens to be your favorite text editor (I use vim for anything that's not Java).

  15. Re:How is IBM an unbiased source? by Husgaard · · Score: 3, Informative

    It's not a comparison; it's a guide for people migrating from Visual Studio to Eclipse.

  16. Re:I beleive the technical term is by YU+Nicks+NE+Way · · Score: 5, Informative

    Yes, there's an extension which supports Python.

    (Oops -- you mean VS supports extensions? But TFA says that's unique to Eclipse!)

  17. total eclipse of the heart by __aapspi39 · · Score: 2, Interesting

    Eclipse does require a lot of computer resources, but when you consider the job it does, its actually an amazing bit of kit. also there are memory management plugin that can keep it under control if are trying to get it to run on a celeron with 256m ram.

    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 time. i don't know a single developer thats used both who doesn't recognise visual studio to be a vastly inferior product.

  18. Re:Eclipse would be awesome if...it was compiled? by Anonymous Coward · · Score: 2, Informative

    It seems there are compiled versions of Eclipse, maybe that will help with some of the bloat.
    http://sourceware.org/eclipse/

    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.

  19. Re:I beleive the technical term is by kestasjk · · Score: 5, Insightful

    I use Eclipse for PHP development using PDT, and it's great. Zend Studio Pro costs $299, and comes with debugging support, but you can get the same thing with Eclipse for free, and support various other languages as well.

    If you're doing MFC, or .NET development, or developing specifically for the Windows platform using an MS supported language then of course VS.NET is the obvious choice, but Eclipse is good too.
    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.

    --
    // MD_Update(&m,buf,j);
  20. Re:I beleive the technical term is by Ucklak · · Score: 4, Funny

    Last I checked, Visual Studio only runs on Windows.

    --
    if you steal from one source, that is plagiarism, if you steal from many, well, that's just research.
  21. What about NetBeans? by Theovon · · Score: 4, Interesting

    Why do we see do may articles that mention Eclipse as though it's the default IDE for Java development and whatnot, when so many of the professional programmers I know say they prefer NetBeans because it's a more intuitive, less busy interface?

  22. Re:Question by TopSpin · · Score: 2, Interesting

    There is no doubt it takes a lot of RAM to run Eclipse.

    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 provide it in larger pieces, although it would host 2 processes each ~1.5 GB just fine. If the memory must be contiguous, that implies certain inefficiencies such as never releasing unused RAM below the most distant allocation.

    Anyhow, I suspect common JREs are using RAM inefficiently. Flushing unused code, releasing unused heap and sharing common code among processes are all commonplace, well understood techniques. Be nice if Sun and other JRE vendors figured out how to leverage them.

    --
    Lurking at the bottom of the gravity well, getting old
  23. Re:I beleive the technical term is by ls671 · · 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 ;-)

    --
    Everything I write is lies, read between the lines.
  24. Re:I beleive the technical term is by hedwards · · Score: 3, Insightful

    That all depends. The suite we were using in CS had a debugger, but it didn't pop up unless I explicitly added the break points. It was an irritating IDE in many ways, so many times I would on short code be left to boggle as to why it wasn't able to read what was typed. Sometimes it would inexplicably fail to read the closing brace even if it were only two lines down.

    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.

  25. Refactoring by John+Jorsett · · Score: 2, Informative

    The thing I like best about Eclipse vs Visual Studio was refactoring. I tend to, ahem, revise my thinking during programming, and the ability to rename everything from the project itself down to the lowest-level variable was like heaven. Having to go back and use VS where I can't do that (at least, not easily) is torture.

    1. Re:Refactoring by ChadAmberg · · Score: 2, Informative

      Yeah, because it is so damn hard to right click on a variable name, select Rename, and type in the new name. And then it does it all for you.

  26. Re:I have to choose.. by SteevR · · 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 and offered up a relatively non-encumbered free version, Visual Studio Express. For the major differences between Express and the other versions, see this page.

    If all you are interested in is a C++ compiler and IDE, Express works. Its free as in crappy domestic (US) beer. The comparison seems to indicate that you don't get full access to MSDN, but that seems to be a lie. Granted, with Express you don't have it locally, but who wants to install all (eight last time I checked) gigs of the stuff when it is all online anyhow?
    --
    Performing sanity checks on your own beliefs is vital in avoiding poisoned koolaid.
  27. I keep trying to like eclipse by coryking · · Score: 2, Interesting

    But it always feels slightly off. I think half my problem is just their website really stinks. There is no diffinitive "this is eclipse, click here to download". And by download, I mean "setup.exe". Right now it is more like "here is a bunch of random eclipse like stuff with random names and no sense".

    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?

    1. Re:I keep trying to like eclipse by nurb432 · · Score: 4, Informative

      Try easy eclipse.

      Its a 'click here and install' sort of thing. Both for windows and OSX.

      --
      ---- Booth was a patriot ----
  28. Hot Swapping Code by MarkEst1973 · · Score: 2, Interesting
    This is a java-centric feature, but it's something that frustrated the hell out of me when I worked on my first ASP.NET application (v1.1) after coming from a Eclipse/Tomcat environment...

    Mix up this recipe:

    • Eclipse's autobuild-on-save feature
    • JVM's ability to hot swap code (typically accomplished by replacing the classloader at runtime)
    • Eclipse's ability to host the container (Tomcat in my case, but it can be WebLogic or any other)

    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.

  29. My switch from VC++ to Eclipse by AndyCR · · Score: 5, Informative

    I used to use VC++ for all my C++ development work. I have switched to Eclipse/MinGW.

    - 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.

    --
    If there's anyone I hate more than stupid people, it's intellectuals.
  30. I've enjoyed both by nate+nice · · Score: 3, Interesting

    I've used both environments for different tasks and have been happy with both. Essentially, they serve the same function which is to make developing far more enjoyable and error free.

    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 .net and this is shocking since I rarely did MS development before VS 2005.

    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.

    --
    "If you are a dreamer, a wisher, a liar, A hope-er, a pray-er, a magic bean buyer ..."
    1. Re:I've enjoyed both by Osty · · Score: 2, Informative

      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.

      I think the key here is that it depends on what you're doing. If you're doing small-time ASP.NET work, smaller .NET apps, or even writing games, the Express versions of Visual Studio (including XNA Game Studio) are quite nice and free. If you're doing enterprisey work, you'll probably want the full Architect edition and probably get an MSDN subscription as well. If you just want to do an ASP.NET website with a SQL Server backend, spend your money on SQL Server 2005 (or don't spend your money yet and use SQL Server Express to build your proof of concept) and use the free Visual Web Developer Express.

  31. Re:I beleive the technical term is by ls671 · · 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 they are doing, they start writing code without prior planning and they manage to finally get it to work with the debugger. Typical time consumption ratio will be like 20% for writing the code and 80% to debug it and some bugs will go undetected.

    My old way to do things is 50% planning before starting to code, 45% coding, 5% debugging. So the availability of a debugger is less important.

    Note that I DO use debuggers if I need to reverse engineer code.

    Again, I realize and I know that a debugger has become a standard tool in modern development teams. I am just saying I do not use them often so it is possible to get away without them.

    --
    Everything I write is lies, read between the lines.
  32. Re:Eclipse would be awesome if...it was compiled? by smartr · · Score: 5, Informative

    Eclipse 3.3 (Europa) really sped up the autocomplete features... Here's a little review of it. http://rf2-dev.spaces.live.com/blog/cns!33114F6710 97246!136.entry and the europa site: http://www.eclipse.org/europa/

  33. NetBeans by DuncanE · · Score: 4, Interesting

    Have you tried NetBeans?

    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.

    1. Re:NetBeans by SeekerDarksteel · · Score: 4, Funny

      I decided to try NetBeans about a year and a half back. I have a really good feeling about using it, and I'll tell you all about my experiences with it as soon as it finishes loading. XD

      --
      The laws of probability forbid it!
  34. Re:Eclipse isn't really an IDE anymore by Constantine+XVI · · Score: 3, Funny

    So you mean it's turned into Emacs?

    --
    "I think an etch-a-sketch with an ethernet port would beat IE7 in web standards compliance."
  35. Re:Down With IDEs! by Anonymous Coward · · Score: 2, Informative

    Right. Because no one who knows the language makes typos in a method call. No one who knows the language ever forgets to close a parenthesis or drops a semi-colon. Indenting code automatically is stupid pre-optimization--let me hit the space bar myself. Refactoring support? Please! Let me refactor those 4 similar classes by hand--I'm sure I'll get it right. Who needs an IDE anyways?

    Ummm, are you on crack? Sorry, but why on earth would you NOT want an IDE? It saves tons of time, prevents easy mistakes, helps you debug your code, helps you keep things organized and on topic, and can promote good habits (for example, assuming "well, you're making a new class--let me set up a unit test outline for you"). What's not to love?

    Or do you write all your code in "edit" because visual tools like vi or emacs are for babies?

  36. Re:I beleive the technical term is by DuckDodgers · · Score: 2, Interesting

    I'm fond of the log4j library. Set it up, then litter your code with log statements - logger.error for serious events, logger.debug for reporting nearly every step of the code. First, it documents the code right in the code, and it's much easier to keep the log statements updated when you make code modifications. Second, when something breaks you just change your logging configuration file to turn all logging on for the affected code and re-run your tests. Third, in those (hopefully rare) occasions when a bug appears in production that didn't appear in development, you can turn up the logging level on your production software too.

    Of course, unit testing is also good.

  37. Apples and aeroplanes by Rodyland · · Score: 4, Interesting
    My last job I had the option of choosing my own (windows) development environment. After a day trying to get Eclipse to work, I came to the conclusion that, based on the tutorials and documentation easily available on the web, most people use Eclipse for the purpose of writing Eclipse plugins. All very well and good, unless of course you want to write some code that actually _does_something_.

    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)

  38. Re:I beleive the technical term is by YU+Nicks+NE+Way · · Score: 2, Informative

    Yes, Python is dynamically typed, and, yes, intellisense can't work in cases where the signature of a type is changed by the program during execution. That's also true of C#, however; reflection affects all syntactically-driven editors.

  39. Re:I beleive the technical term is by Shados · · Score: 5, Informative

    You should check out VS2008's Javascript intellisense to see what Visual Studio can do with dynamic types. Its not perfect, but its pretty slick overall.Also in .NET 3.5, there's a new dynamic type enhanced runtime, so quite a few dynamically typed languages are popping up for Visual Studio, too.

  40. Visual Studio - Dead for C++ (KDevelop!) by tjstork · · Score: 2, Interesting

    Here's the thing. Visual Studio 2005 for C# is probably the most "cushy" environment out there. But, if you are writing in C++, then, I've found KDevelop to be pretty damn nice. For 64 bit C++, KDevelop and Linux are a long way ahead of Windows. For assembly language, KDevelop does remarkably well. OTH, Visual Studio is a huge pain in the rear and getting more so.

    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 wrong, I think GCC is better than Visual C++. I really think, for a number of reasons, even though I do like Windows, that Linux is the place to be for C/C++ 64 bit development, or for that matter, SSEn development, and I think most developers would prefer it to.

    Visual Studio sucks for C++, what more do you need!

    --
    This is my sig.
  41. One Big Difference: Cross-Platform by BBCWatcher · · Score: 5, Insightful

    Here is the list of operating systems that will run Microsoft Visual Studio 2005:

    • Windows 2000
    • Windows XP
    • Windows Vista
    • Windows Server 2003

    In addition to the list of operating systems above, here is the list of operating systems that will also run Eclipse:

    • Mac OS X
    • Linux
    • Windows NT
    • AIX
    • Solaris
    • HP-UX
    • QNX
    • Any other OS with JRE 1.4.2 or higher.
    1. Re:One Big Difference: Cross-Platform by the-stringbean · · 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...

  42. Visual studio is ok by bh213 · · Score: 2, Informative

    But you have to install resharper v3.0, then you get amazing IDE. As a bonus point, both reshaper and IDEA (by the same company, IntelliJ) use same keyboard shortcuts, so if you do Java and C#, you only have to remember one set of shortcuts.

    btw, once you get used to it, you cannot live without Alt-Ins, (vs.net) ctrl-click and ctrl-shift-alt-n :)

  43. Not a shameless plug by cgrayson · · Score: 2, Insightful

    This looks like a shameless plug, trying to get you to buy this Eclipse Sucks t-shirt, but really it's just anti-Eclipse evangelism (or is it, "Eclipse anti-evangelism"? ;-). It will fall on mostly deaf ears hear in Slashdot-land, where I expect most people who give a crap about Eclipse one way or the other will be of the uber-geek type who LOVE it.

    But, what the hell. Maybe some will get a chuckle out of it. :-)

    Here's a bit of the text from the "back of the box" image:

    "The first version was the worst. And the second version, that was the worst too. The third version I didn't enjoy at all. After that it went into sort of a decline." -- Marvin, the paranoid android

    "Eclipse is the root of all evil (or at least most of it) in programming." -- D. Knuth

    "I'm afraid. I'm afraid, Dave." -- HAL 9000

  44. Eclipse *is* a C/C++ IDE by Lost+my+low+ID+nick · · Score: 3, Interesting

    Insightful? While the great Java Development Plugin made Eclipse famous, the C/C++ Tools are now in a state that make Eclipse one of the best C++ IDEs around. They get released the same time as new versions of eclipse, and together with other plugins (Bugzilla Integration etc.) you get a very very powerful dev tool.

  45. Someone say "release"? by osgeek · · Score: 2, Insightful

    Notice that the comparison didn't talk about actually RELEASING the product.

    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.

    1. Re:Someone say "release"? by WWWWolf · · Score: 2

      I've spent some time building an application in SWT, ...

      Nothing in Eclipse forces you to use SWT, you can just use Swing (and more or less get just as good results in Java 1.6). Eclipse's Visual Editor also supports Swing.

      That said, deploying stuff in Javaland is a bit challenging. In Java, if your libraries don't come with the SDK, your application can be a little bit unfunny to deploy, especially so if it needs native code, like SWT.

  46. I believe the technical term is 'obsolete' by Doctor+Memory · · Score: 2, 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,
                                              @WebParam(name='param2') final String param2) {
                    return someAppFunction(param1, param2);
            }
    }

    Oh, and to make that an XML-RPC API, just add the line:

    @SOAPBinding(style=Style.RPC, use=Use.LITERAL, parameterStyle=ParameterStyle.WRAPPED)

    right after the "@WebService" annotation.
    --
    Just junk food for thought...