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.
It would be great if it were included as a default plugin.
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
As it stands, Eclipse has more features than Idea, plus a whole bunch of plugins. Eclipse has tools for working on big, complex projects. Idea shines as a more basic editor, where it leaves everything else behind. It's just much more nicely done, with a much cleaner interface. I especially like how it automatically adds import statements, AFAIK the only IDE that does that.
The best way to find out which is better for you is to download both and try them.
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.
I tried Eclipse a month ago, and was severly disappointed. First off, I had to read the tutorial to figure out how to build HelloWorld with their system. Not intuitive. Also, the SWT library is a complete joke -- it doesn't look like the host OS, and requires native code. No java program using SWT is cross-platform, so what's the point?
Are we using two different Eclipses? From unzipping the binary distribution to setting a couple preferences to a System.out.println("Hello world"): 2 min.
Also, how can SWT not look like the native OS when it's a JNI wrapper around native widgets? Furthermore, to write SWT apps no native code has to be written by the developer, you simply need to include the SWT native library in your java.library.path. SWT is cross platform! The widget classes are nicely abstracted so that each implementation of the JNI library for each platform requires no code changes on your part. Please learn more [SWT FAQ] before dismissing it wholesale based on incomplete information!
It is unbelievable how rude some people are. I read this guy MillionthMonkey (240664)'s fscking page thinking I might get a well-reasoned report on why, exactly, C++ sucks, possibly similar to the XML sucks article
It is simply un-fricking-believable that this goddamned script-kiddie can have such disregard for nearly 20 years of computer science, and a language that is virtually ubiquitous. Hey Monkey, if you can't learn C++ (I learned it on my own no teacher required, it's not all THAT hard) I suggest you give up the profession for something a little less stressful. Shoveling shit is nice and doesn't make you do that really hard thing... you know, using that brain.
I cry for the future of my profession
std::disclaimer<std::legalese> sig=new std::disclaimer; sig->dump(); delete sig;
grammar nazi hat on
Am I the only one who reads IDE environment and cringes at the redundancy? It's the same as people saying they need a NIC card for their computer.
Eclipse is an open-source Java IDE. My computer can talk to other computers because it has a NIC.
grammar nazi hat off
Sorry, but that's just one my my pet peeves.
You can have a better IDE doing refactoring as well.
Leandro Guimarães Faria Corcete DUTRA
DA, DBA, SysAdmin, Data Modeller
GNU Project, Debian GNU/Lin
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
With the release of Eclipse 2.1 Xored has released version 0.3.4 of the WebStudio plugin that is compatable (Finally we can stop using 2.1 M5...)
:-) )
Excellent Cross platform PHP/HTML IDE
Now all I need is a -good- XML/XSLT editing plugin and I can have all of my dev work in one integrated tool.
(Guess I'll have to pick up some esoteric language so I can have a reason to keep vim open, wouldn't feel right to be so efficient
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.
Being an American, I am protesting all things French, including mangling their language.
Speaking of redunancy, how many of those letters in 'aux jus' are silent?
If Mr. Edison had thought smarter he wouldn't sweat as much. --Nikola Tesla
Anyone have a miror?
I've tried both the FTP and HTTP links. I'm currently getting 2.58kb/sec on my fancy broadband connection.
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.
I know we're meant to be talking about Eclipse but if you're in the market for an IDE and you don't look at IntelliJ IDEA you're missing out. At work we have saved the purchase price ($700, far less than so called "Enterprise" tools) many times over. The whole tool works so cleanly and unobtrusively it doesn't get between you and your code. The only downside is it tends to turn its users into partisans in the same way that emacs does. If you're worried that you'll end up posting to Slashdot praising a commercial product then stay away.
development.lombardi.com
Then you don't understand the power of flexible deliverables. The .class file strategy along with the .jar concept basically blows lisp and smalltalk out of the water when it comes to product delivery time.
:)
Admittedly, there may be a way to rethink lisp and smalltalk such that compiled code can be easily separated and independently manipulated, but enterprise Java applications are just so much easier to manage largely because of the strategy chosen for breaking up deliverable units.
As for syntax, I tend agree with you, both lisp and smalltalk have more powerful language metaphors than Java (and other C derivatives). Though, that can be a two-edged sword (have you ever tried to read newbie lisp?
Regards,
Ross
One aspect of development tools in general that hasn't been discussed as much is the education value. In teaching programming, I don't want to become too bogged down in the tools and the equipment I use. Every class period I spend fixing Windows problems or getting the environment to work is a wasted period, because it is one less period I spend teaching the language.
.
Don't get me wrong, dealing with your "tools" is a part of programming and programmers need to learn these things. However, for an entry level C++ or Java programming course, I would rather spend a week at the end of the semester teaching some interesting language concept than spend a week at the beginning of the semester teaching the environment (which will inevitably change).
Beyond that, I want students to be able to use these tools at home. The automatically makes me prefer an IDE over a string of tools, because that everything I have to do to get the environment to work is what I have to write in a descriptive help file. Beyond that, students (of varying levels of maturity and motivation) have to follow this help file.
The things that I really like about Eclipse (as a teacher) are:
1) The simple setup/install -- Install the JRE and expand the eclipse.zip file and you're basically good to go. When I send burned CDs home, this minimizes the number of students who mess up the install because they missed an instruction. Students who do have problems end up having significant ones that I have to fix via VNC.
2) Focus on the language -- Eclipse does so many things for you that it really allows you to focus on your programming, rather than the host of tangential things related to programming. Granted, sometimes I think Eclipse does a little too much for you....for instance, creating class and method headers in new files prevent students from knowing how to write it
3) Projects and CVS -- Oh God do I love how Eclipse does projects and CVS. The projects FORCE students to be organized, rather than throwing all of their files into one file. CVS' is so well integrated that students get all of the benefits of using CVS without having to jump through 15 hoops. Once again, there is an educationl benefit to learning how to jump through hoops, but that I have 67 hours a semester with these kids and I would rather focus on the language than the environment.
-Troy