Eclipse 2.1 Released
insomnia writes "Eclipse 2.1 has been unleashed to the world today. Eclipse is an open-source Java IDE environnement and I highly recommend it; developing under your favorite text editor feels like comparing Eclipse to the dinosaur age - I can't live without refactoring now. You can see what's new in this release here."
Is the name "eclipse" a not so subtle reference to overtaking the Sun?
That's all I can say... they've certainly packed an awful lot into this release. The JDT team, in particular, seems to be consistent about picking up some of the best features of other IDEs and editors and incorporating them into Eclipse.
If you do Java development, I'd recommend giving Eclipse a try. I've been using it for about a year now, to do plugin developent for Eclipse itself, and I'm still finding out new tricks and shortcuts to make my life easier.
If you do C/C++ development, check out the CDT project. While the current incarnation (1.0.1) of CDT is definitely usable, there's a lot of work going on to expand the capabilities of the C/C++ support and bring it up to par with the Java development tools - adding in things like incremental compilation, source navigation/browsing, refactoring, and all the other IDE goodies that Java devlopers already enjoy.
Plus - there's over 250 plugins available for Eclipse, including things like an RSS channel monitor for slashdot in your IDE.
"Great men are not always wise: neither do the aged understand judgement." Job 32:9
My company's entire business model is centered around making enterprise applicatons in Java. It's extremely efficent and performant for server-side apps and web services. We also have Java client side apps that are as fast and memory efficent as any of our competitor's products (that are not written in Java).
Java will run as fast or as slow as you make it. We've re-written C applicatons in Java and actually made them run faster by improving the architecture. If you try to write a Java app using C/C++ programming techniques, it will suck. If you take the time to learn how Java is supposed to work, you'll be 10 times more productive and create a product of equal (or better) quality.
Is java really worth developing for? I think it is great for its ease of programming and library support, but it's requirement of running on virtual machines leads to huge memory requirements for the simplest programs, and GC while nice, can lead to slow apps.
I would not recommend Java for small programs. But my company sells a scientific application that is written in Java. It handles large amounts of data and applies clustering algorithms that are computationally intensive. Compared with the sheer amounts of work that our own code is doing, the VM overhead is hardly noticeable. Our customer base is evenly split between academia and the pharmaceutical industry. Almost a third of our installs are on the Mac, and there's a few percent who are using Linux. The rest are running Windows.
Our leading competitor sells a Windows-only product. We have three times as much market share.
Why would anyone want to write a serious "enterprise" application in Java vs. say C++??
Because C++ sucks.
Having worked on WSAD at IBM using Eclipse 2.0.1 for development, I have been waiting for this release for quite some time! The main improvement I noticed in RC1/2 was significant speed improvement, especially upon loading.
People may think Java is dead, but it is far from it, and Eclipse will keep those who must (or want to) code in it very very happy. If you know the features, it makes life so much easier. You can have your VI if you want, but when developing REAL applications you need more than a text editor if you want the software released before it's obsolete. I strongly urge you to just test it out and give it a chance - it is by far the best IDE I have ever used.
But seriously, it looks good, and their replacement for Java's bloated and slow Swing GUI toolkit should be adopted by Sun yesterday.
I'm no programmer... I can hack out ugly code in PHP, Perl, and JavaScript, and that's about it. And I can't answer your question w/ regards to developing in Java...
But... I do know that Eclipse is a general-purpose IDE which happens to be written in Java... You can use Eclipse to develop in other languages by installing the appropriate language plug-in.
I just installed Eclipse last week & I'm going to use it for PHP development...
--
Think Green... Burn only 100% recycled dinosaurs in you car.
Downloading...
political_news.c: warning: comparison is always true due to limited range of data type
its not a question of whether people would like to write enterprise applications in java. most of the consulation industry atleast is already doing that.
I am sure language per se can not be such a deciding factor when designing enterprise applications and the fact that it runs on VM or the fact that users of app would have to purchase Big IRON machines to run it. No, there are never the deciding factors!
Java is certainly not suitable for certain kind of applications but so is any other language. and this false 'macho' sense that i am doing it on metal in 'C/C++' is well false, thats all. [ there would be thousands of instances of brain-damaged C++ code written by brain-damaged programmers!]
Its not that just writing it in C/C++ makes you a more capable programmer! Java is much more cleaner. Things that suck most are primarily in libraries.
And, anyway, extending the logic, why not write everything in assembly ? or make your own ADDER from NAND gates ? or do you know how the electrons tunnel through to make a transistor work ?
No
I have gone backwards in terms of developing software when it comes to using an IDE. Although I don't develop using Java I do work with C++ on a variety of platforms with several IDEs and text editor. When I began I used bloodshed's dev-cpp then moving onto M$'s VC++ as my projects required a better compiler and ide to handle all the files. Now, have gone back to using text editors, notepad and emacs, because I am using the compiler tools, flex and bison, in some of my work. In some ways a basic text editor is easier to work with, of course the nice color coding makes reading your code easier but really your code, when properly formatted(indenting and so forth), should be easy to read in a text editor. In addition, MDI text editors make it a breeze to program because you can have many windows open at once and still have your screen organized. Next to my text editor I have my console in which I type make and my app gets compiled as easy as 1,2,3. GCC is great to work with because it works exactly the same on windows as it does on linux. In addition, if you work on both linux and windows making the transition is easier when you don't have to deal with the clutter of all the features of an IDE no matter how well laid out they are. One of the things that attracts most people to IDEs is that a lot of them come with code wizards and so forth that help with the basic layout of applications. I have never found these to be of much use because I end up scrapping much of the code because it usually isn't as concise as I like it. So for now I will stick with my text editors.
Checking out my form of escapism.
The bank where I work (30000 employees) uses only mainframe (PL/1) and Java. Gradually mainframe functions are moved to very large (partitioned) Sun servers running solely Java software and Oracle databases.
All business logic for this large enterprise is being developed (or redeveloped) into Java. This has been going on for 3-4 years, and has already proven itself very much.
For "enterprises" the fact that you need 50% more RAM and 20% more CPU compared to C++ is insignificant. UNIX hardware is very cheap compared to mainframes, and especially compared to people. If you get better code that is easier to develop and maintain, it is by far worth it. Also Java offers lots of rich standard API's (in J2EE) that "everyone" uses, avoiding difficult choices and gambles if you base your software on the 'correct' standards.
Since banks often rely on 3rd party software/components (e.g. that implement some reporting according to international banking standards) and all vendors offer components that fit into the std. Java frameworks, there is hardly another option.
> You can have a better IDE [gnu.org.] doing refactoring [xref-tech.com.] as well.
You cant really compare that - Xrefactory isn't even free-as-in-beer.
XEmacs sure is nice, but neither its code completion support (filling in whole method names while you type) nor its support for refactoring come anywhere near Eclipse. And don't let me get started about "Quick Fix".
Actually i would be delighted if anyone could show i'm wrong and tell me how to do it - XEmacs really has a steep learning curve (imho).
-- Having problems sending big files over the net? Try out Efisto (http://efisto.org)
I've been using eclipse since 2.0, and have been closely following its development - at first out of curiosity (when I discovered Erich Gamma of the Design Patterns fame was on the project), but have over time learnt a great deal from their articles and best practices...
Anyway, one of my favourite features is its scrapbook that lets you execute Java statements on the fly like an interpreted language.
Worth a try if you haven't experienced it. I should know... there's an unused paid JBuilder license still sitting in my drawer.
I know that that is a common possibility in all Open Source projects, but Eclipse makes it really practical, using their plug-in system. I mean that you don't have to learn the whole damn bloat of code to start adding some menu point to it. I'm developing a plug-in, and while not trivial, it's affordable.I've been developing for more years than I care. And never sensed the same kind of power as now, when I can modify my IDE to suit my preferences. Efficiency is starting to climb, even considering the time developing the plug-in. And it'b bound to skyrocket as it gets perferctioned. I mean, most of my development has a high percentage of repetitive work, that is probably different for other developers. I'm now putting all that repetitive work in automated code generation routines. It will save me ages. And Eclipse offers a lot of built-in functionality that allows you to concentrate on the real issues.
Plus, the documentation is good. I would almost call it first-class.
I've been waiting for something like Eclipse since I did my first C code to generate COBOL list programs. So it's a while. Well, I must leave you, gentelmen, I think my download of the 2.1 is finished
Rome taught me patience and assiduous application to detail. Virtues which temper the boldness of great, general views.
" Is java really worth developing for? I think it is great for its ease of programming and library support, but it's requirement of running on virtual machines leads to huge memory requirements for the simplest programs, and GC while nice, can lead to slow apps."
A quick check of pricewatch shows that a 512MB stick of DDR2700 is $49. So for less than $100, you can have a gig. Ram isn't an issue any more. 2GHz+ CPUs are floating in the low hundred dollar range, so CPU power won't be an issue by the time any program started now is released.
A quick look at what java is used for shows it isn't made for prepackaged, store bought programs like Photoshop (Sklyarov), Warcraft (BNetD) or Word (to many to mention, the messages probably cap at a gig in length). These are the domain for C. Java is used for business logic, multi-tiered client/server programming, and interfaces for knowledge workers. That is where it rules. It has connectivity, net-awareness, security and a general lack of bugged code built into it's genes in a way that other languages simply never will.
When you write in java, most of the crap simply isn't there. You can write components easily, and deploy them across a corporation with a large, hetrogenous computing infrastructure with little if any porting. This is what gives CIOs wet dreams, and saves cubic dollars for companies. Add that to the fact that you can run it on damn near everything from a cell phone to a sun 15K, and you have a good deal of flexibility.
You are looking at this from a perspective of someone writing an app for a user to run on a PC. This is a very valid programming model, but not the one that java is aimed at. While it will work, you are missing out on what makes java shine.
-Charlie
You're missing the point. So Eclipse doesn't provide a Tomcat plugin; big deal. A number of other developers provide plugins to do almost anything you might want, most of them open source (though there are some commercial plugins.) Have a look at the SysDeo Tomcat Plugin before you pass judgement on Eclipse.
My only gripe with Eclipse plugins is that Eclipse doesn't have a central repository that uses their automatic install/update mechanism for plugins to save people from having to hunt for the plugins. Instead they've let the community pick up the slack -- so you sometimes have to hunt around looking for just the right plugin.
We call it art because we have names for the things we understand.
Another advantage is when your company gets bought out and the hardware politics change. The company I work for develops large scale server solutions for transactions (I won't mention the industry). Up to now we have been running on Sun machines. The new parent companies now insists that all servers be Intel based. They originally mandated the OS should be MS-Windows, but they ended up accepting Linux. Having already had to bang my head in the past porting C/C++ code from one Unix to another, moving the Java code was a godsend in ease.
As I once said to someone else, porting code is hard work and expensive. In relative terms upgrading the hardware to the best out there without caring for your porting issues is very cheap. Not only that but you also minimize downtime.
Use what you want and understand everyone else's reason for using what they want.
Jumpstart the tartan drive.
Frankly, I dont give a damn what toolkits the eclipse developers have used. It is a great, free, open source product. I'll worry about the SWT when I develop for eclipse and not with eclipse.
I think this is an important point, so if someone with a little more knowledge of the subject can confirm this, please do so. Or please educate me if I am wrong.
Move on. There's nothing to see here.
If I want "a sea in which a gnat may drink and an elephant may bathe," I'll play chess. And a monolithic tool that needs a 2,560-page manual and a 17-week qualification period is no fun. Give me robust but lithe and agile tools that I can string together with a minimum of grunting and get out of my way!.
Years (decades?) ago, I was one of the fringe-warriors in the various editor holy wars, but as I grew older and wiser I realized it had less to do with the tool and more to do with the craftsman. Now, I prefer to craft my code myself, not let an IDE do too much for me. (How much is too much? "I can't define it but I know it when I see it" [Quoting Supreme Court Justice Potter Stewart's comment on obscenity.] As soon as the tool spends less time helping me and more time being in my way, it's out of here.
Welcome to the Panopticon. Used to be a prison, now it's your home.