Java Forum / General / May 2006
Java IDEs *Le sigh*
Nate the Capricious - 26 Apr 2006 16:15 GMT I do most of my programming in C/C++ using Microsoft IDEs. I'm a student so this is the best avenue to take, my school has some nice deals with them (Free Development Tools, Professional+ versions).
But I've been trying to get into Java, so I'm looking for a nice IDE and I've been having a few problems finding one.
I generally don't like applications that don't *install*, but I downloaded Eclipse anyways. It sounded very nice, especially since it has C/C++ development tools. Too bad they're only for GCC (I use Microsoft AND Borland compilers, but not the GCC). O well.
No visual designer, no support for web development. No built-in support for applciation servers. I spent about 8 hours searching for and downloading plugins to get something that was vaguely comparable to what I am using for ASP/.Net development and ended up deleting it in despair. The refactoring features are nice, but it's alot less intuitive than VS.
Sun Java Studio Enterprise 8/Java Studio Creator. 2 IDEs for the functionality of one? This boggled me, but I was intrigued enuff to waste my time downloading them. JSE's UML support seems broken, JSC looked nice. They ran really nice, for being Java IDEs. But, I have to install two instances of Sun's Application Server to do any type of web development? 1) You have the option to not install the AS with JSE 2) You don't have the option to not install it with JSC 3) JSE refused to use the AS that was installed with JSC 4) waste of time.
NetBeans is slow and clunky. And believe it or not, for a beginner, those refactorings are important (if you actually understand them) because you tend to make more coding mistakes that need to be undone. Well NetBeans sucks in that department compared to Eclipse. Then again Eclipse is more like Emacs on Windows.
I evaluated JBoss AS and found it ran exceptionally well on my "low end development machine" (2.6GHz P4 HT w/ 512 MB RAM), but I couldn't even get the Admin console applets to work correctly, not to mention it seems rather mundane compared to Sun's exceptionally well-designed Admin console for their application server. It used about 50MB less RAM, though, and loaded up in 20-40 seconds (which is very good, on my machine, I think). Seeing they had tools for Eclipse, I gave in and redownloaded and installed them. O well, I'm still stuck working at the code level.
JDeveloper has so much Oracle stuff in it I didn't even bother to mess with it. It's too high maintenance as far as getting it to work with my existing M$ technologies. It looked a bit promissing though.
Now, I know there are alot of veteran Java developers who would say doing it at the code level is great. But I tend to learn alot by working with the visual designers. I understand Eclipse has a visual designer, but most of my interest is in web development; where Eclipse sorely lacks in functionality. I don't feel like having to work with 2 separate IDEs (Sun), and I don't like software that slows my computer down to a halt (Sun's AS, NetBeans). JBoss looks like a nice AS, if I can get the Console to work. It still seems like there are no really complete *non-vendor-specific* free IDEs out there. Maybe I'll just save a few paychecks and purchase JBuilder.
Anyone have any recommendations as to nice alternative IDEs out there other than the above mentioned? (I know of IntelliJ, will download the trial later).
Oliver Wong - 26 Apr 2006 16:24 GMT > I do most of my programming in C/C++ using Microsoft IDEs. [...]
> But I've been trying to get into Java, so I'm looking for a nice IDE > and I've been having a few problems finding one. [quoted text clipped - 10 lines] > despair. The refactoring features are nice, but it's alot less > intuitive than VS. [...]
> I understand Eclipse has a visual > designer, but most of my interest is in web development; where Eclipse > sorely lacks in functionality. [...]
> Anyone have any recommendations as to nice alternative IDEs out there > other than the above mentioned? (I know of IntelliJ, will download the > trial later). It's not clear to me what you want to get out of your IDE. Do you want to do ASP.NET coding? Java coding? C/C++? Eclipse's support for ASP.NET and C/C++ is quite weak as you've noticed, just like Visual Studio's support for Java is quite weak. Once you give a more specific description of exactly what you want to do, we can probably make better recommendations for what tools you should use to accomplish that task.
If you want a do-it-all IDE though, I think Eclipse is the closest match, with its highly extensible plugin system.
- Oliver
Nate the Capricious - 26 Apr 2006 16:52 GMT > It's not clear to me what you want to get out of your IDE. Do you want > to do ASP.NET coding? Java coding? C/C++? Eclipse's support for ASP.NET and [quoted text clipped - 7 lines] > > - Oliver Oliver,
I don't want a do-it-all IDE, and certainly don't want one that does ASP.NET or C/C++. I was just pointing out a nice feature in Eclipse in that it had a ver nice (easy to find) plugin to support C/C++ development. It is a very good thing to be able to work with the language I use for most of my projects as well as Learn to use Java/etc. from the same IDE. I have Visual Studio, I don't want a clone (multi-language IDE blablabla). I just want something somewhat comparable to it for the Java language, and I'm having alot of trouble finding one. With the way Java IDEs hog resources, it would be more "attractive" to be able to use the same IDE to do some C/C++ and Java builds/development; not something I count as a requirement for the IDE, though. Java IDEs generally focus on Java features, not C/C++.
I agree, Eclipse is nice and I'm more than sure it can do it all. But after googling and searching for 8 hours [straight], I wasn't even close to close to doing what I'd like to do with it. In fact, most of what I found was indeed very nice, but not even related to it. Most of the plugins for Eclipse are targeted at enterprise developers who know the ins and outs of Java. It's very difficult to work with if you don't know much about it. These plugins integrate well, but I don't find it attractive having an entire bookmark folder dedicated to Eclipse plugin websites so that I can find info on them when something doesn't work the way I expected it to (and of course, it could be operator error).
Maybe I was too long winded. What I'm lookign for is:
"An IDE that isn't platform/vendor restricted (or offers too many confusing menues/etc for their products that I don't want to install) that has a nice editor, some refactorings, and Visual applications/web designers."
Integration with VSS would also be nice.
Thanks.
Nate.
Oliver Wong - 26 Apr 2006 17:08 GMT > I have Visual Studio, I don't want a > clone (multi-language IDE blablabla). I just want something somewhat > comparable to it for the Java language, and I'm having alot of trouble > finding one. [...]
> Maybe I was too long winded. What I'm lookign for is: > [quoted text clipped - 4 lines] > > Integration with VSS would also be nice. A lot of people recommend sticking with something simpler than Eclipse when first learning the Java language, and only later on moving to Eclipse (or NetBeans or whatever) once you no longer have to juggle learning the IDE along with learning the syntax and the API, for example.
AFAIK, neither Eclipse, NetBeans nor Sun Studio ONE are platform or vendor restricted, except in the sense that if you write Java programs, you're restricted to the Java platform. In fact, most Java IDE are not restricted. The only one I can think of is Visual Studio's J++ and J# support, where J++ and J# are languages that are "kind-of" like Java, but not really. If you consider those languages to be a variant of Java, and you use those tools, then you'll be restricted to that variant of Java.
There's an IDE that was designed specifically for learning Java. It's called BlueJ (http://www.bluej.org/) I'm not sure if it has refactoring and/or visual application/web designers though.
BTW, web application stuff is usually done with J2EE (Java 2 Enterprise Edition), whereas most tutorials on learning Java will focus on J2SE (Java 2 Standard Edition). So if you're new to Java, I recommend you forget about web applications for now, and concentrade mostly on command line programs and desktop applications. Once you've got the hang of that, you can move on to J2EE for web applications, or J2ME (Java 2 Micro Edition) for handheld and cell phone applications.
- Oliver
hilz - 26 Apr 2006 17:18 GMT > I agree, Eclipse is nice and I'm more than sure it can do it all. But > after googling and searching for 8 hours [straight], I wasn't even [quoted text clipped - 7 lines] > doesn't work the way I expected it to (and of course, it could be > operator error). If you don't mind spending $30/year, check out www.myeclipseide.com
You basically install eclipse then you install myeclipseide which is basically a set of plugins that contain probably all what you need in one step.
I am evaluating it at the moment and it is pretty nice.
On the other hand, I've been using NetBeans for all my Java development so far, and it is getting better and better. It is much easier to use than eclipse, in my opinion. Hopefully soon they will integrate Sun Java Stuio Creator 2 with NetBeans and that would be a killer IDE.
good luck
Wes Williams - 26 Apr 2006 19:05 GMT > On the other hand, I've been using NetBeans for all my Java development
> so far, and it is getting better and better. It is much easier to use > than eclipse, in my opinion. Hopefully soon they will integrate Sun Java > Stuio Creator 2 with NetBeans and that would be a killer IDE. > > good luck Indeed, Java Studio Creator2 is supposed to be integrated into NetBeans before too long.
I'd also suggest to the OP that he try Creator2 again as it an easy to use visual Java IDE but still has many of the traits necessary to look at and modify the code - basically a better learning path than starting with Eclipse or NetBeans. Then by the time you Creator2 you could then pickup NetBeans and go from there.
Personally, I'm partial to the Creator2/NetBeans route vs. Eclipse, but this is largely a matter of personal preference that doesn't warrant a flame war.
Srini - 26 Apr 2006 17:14 GMT having gone through similar stages (of becoming Java literate) recently, I recommend JBuilder from Borland highly. There is a "free" version available which can take you very very far.
Disclaimer - I have nothing to do with Borland. Just a user.
Roedy Green - 26 Apr 2006 19:13 GMT On 26 Apr 2006 08:15:00 -0700, "Nate the Capricious" <NatLWalker@gmail.com> wrote, quoted or indirectly quoted someone who said :
>Anyone have any recommendations as to nice alternative IDEs out there >other than the above mentioned? (I know of IntelliJ, will download the >trial later). You have covered them and done the wise thing of taking them for test drive rather than letting others tell you which is best.
One way to tackle your problem is to give up on the idea of a single unified IDE for both your C/C++ and Java work. I just use MS Visual C++ for C/C++ and IntelliJ for Java.
For JNI, I sometimes write test drivers of the core code in C/C++ before doing the JNI glue. That way I don't have too much hopping back and forth between C/C++ and Java. IntelliJ is even more of a RAM hog than Eclipse, so you could not seriously consider running both IDEs at once in an older machine.
 Signature Canadian Mind Products, Roedy Green. http://mindprod.com Java custom programming, consulting and coaching.
Nate the Capricious - 26 Apr 2006 19:58 GMT Yes, I noticed NetBeans had some nice additions, I did some more reading and found out a little more info abotu what they support and whatnot. I did try it in it's 3.6 nad 4.1 facades before, and Matisse is really nice. I read that Eclipse is going to integrate Matisse into their IDE (Correct me if I'm wrong) and that would be great.
Overall I think the Eclipse IDE is the better of the bunch, it runs quite snappy; but the learning curve of it seems to me a bit like Emacs. I cannot get over the "perspective" system they've implemented. I must admit, I'm a bit spoiled by the other "visual" programming environments I use (C++Builder, VS).
I will evaluate JBuilder and IntelliJ IDEA and see which one suites me best. It's never too late to change one's mind.
P.S. I generally avoid ThisIDE vs. ThatIDE websites, they are too violent to get any useful information out of them ;)
Thanks for all responses, everyone.
Nate.
Oliver Wong - 26 Apr 2006 20:28 GMT > I cannot get over > the "perspective" > system they've implemented. Sounds like a haiku, complete with misleading errant pause on the end of the second line.
Those mini-windows called "Views" can be dragged around and arranged to your likings. Perspectives are basically predefined arrangements of views. So the "normally" the "Debug" perspective will give you the view that lists breakpoints, and variables-contents, while the "Java" perspective won't. But if you wanted to, you could add the "Breakpoints" view to your "Java" perspective.
- Oliver
hilz - 26 Apr 2006 21:57 GMT >> I cannot get over >> the "perspective" [quoted text clipped - 11 lines] > > - Oliver I find perspectives annoying as well. NetBeans used to have some sort of the same idea in the past (maybe called "modes" if i recall correctly). They got rid of them long time ago (since NB 3.6 I guess). They must have realized how annoying they were long ago!
Timo Stamm - 27 Apr 2006 01:19 GMT hilz schrieb:
>> Those mini-windows called "Views" can be dragged around and >> arranged to your likings. Perspectives are basically predefined [quoted text clipped - 10 lines] > ago (since NB 3.6 I guess). They must have realized how annoying they > were long ago! Annoying? I find this view managing system very useful for some applications. In Eclipse, you can adjust sizes, or move a view somewhere else, but you never have to position it yourself. You may find it irritating to have less control, but I would find it cumbersome to position all those windows by hand.
Cinema4d uses a similar view manager. I remember version 2 on the Amiga, back in 1994. Raytracers had very awkward UI at that time, and Cinema4d was a fresh breeze. I worked with version 5 for some time, and it already had a view manager similar to Eclipse. Unlike Eclipse, you can "undock" views to self-contained windows - very useful if you have two displays. Eclipse can only open an entire new window with its own editor view.
Cinema creenshot: http://en.wikipedia.org/wiki/Image:Cinema_4D_9.5_English.JPG
Timo
Oliver Wong - 27 Apr 2006 16:48 GMT > hilz schrieb: >> [quoted text clipped - 9 lines] > irritating to have less control, but I would find it cumbersome to > position all those windows by hand. I like the perspectives as well. I find I'm not interested in the same views when debugging as I am when programmer as I am when synchronizing with CVS as I am when editing XML documents as I am when profiling my application. I like how I can arrange the windows the way I like for each task, and then save those arrangements to quickly switch between them.
But to each his/her own, I guess.
- Oliver
Chris Smith - 27 Apr 2006 19:17 GMT > I like the perspectives as well. I find I'm not interested in the same > views when debugging as I am when programmer as I am when synchronizing with [quoted text clipped - 3 lines] > > But to each his/her own, I guess. I agree. However, I don't understand why it is not possible to create one's own perspectives, rename perspectives, etc. without writing a plugin.
 Signature www.designacourse.com The Easiest Way To Train Anyone... Anywhere.
Chris Smith - Lead Software Developer/Technical Trainer MindIQ Corporation
Oliver Wong - 27 Apr 2006 20:08 GMT > I don't understand why it is not possible to create > one's own perspectives, rename perspectives, etc. without writing a > plugin. Window -> Save Perspective As ...
- Oliver
Chris Smith - 28 Apr 2006 00:33 GMT > > I don't understand why it is not possible to create > > one's own perspectives, rename perspectives, etc. without writing a [quoted text clipped - 3 lines] > > - Oliver Hmm... ya learn something new every day. Thanks!
 Signature www.designacourse.com The Easiest Way To Train Anyone... Anywhere.
Chris Smith - Lead Software Developer/Technical Trainer MindIQ Corporation
David Segall - 27 Apr 2006 09:33 GMT >I read that Eclipse is >going to integrate >Matisse into their IDE (Correct me if I'm wrong) and that would be >great. I have only seen this for the subscription based MyEclipse <http://www.myeclipseide.com/>.
olle.sundblad@gmail.com - 27 Apr 2006 13:26 GMT Just try IDEA found at www.jetbrains.com. Test for free for 30 days and then you have to pay, it is worth it (I payed after a week:-).
I tried alot of IDEs before finding it (including Eclipse which I really wanted to use since it is free) but in the end the price for IDEA is cheap for what you get.
Note: If you are new to programming I would recomend BlueJ which was mentioned above, but since you know VS I guess you are not.
Mike Schilling - 26 Apr 2006 22:30 GMT > Anyone have any recommendations as to nice alternative IDEs out there > other than the above mentioned? (I know of IntelliJ, will download the > trial later). Do try IntelliJ. Lots of refactoring, and its code completion abilities make Intellisense look sick.
Monique Y. Mudama - 26 Apr 2006 23:30 GMT > I generally don't like applications that don't *install*, but I > downloaded Eclipse anyways. It sounded very nice, especially since [quoted text clipped - 7 lines] > deleting it in despair. The refactoring features are nice, but it's > alot less intuitive than VS. It's funny; to me, Eclipse is much more intuitive than VS. I wonder if "intuitive" means anything at all in the world of computing, or if it all comes down to "whatever's most similar to what you've been using."
 Signature monique
Help us help you: http://www.catb.org/~esr/faqs/smart-questions.html
Nate the Capricious - 27 Apr 2006 00:53 GMT Intuitive as in easy to pick up.
Intuitive IDEs have features like Dynamic Help, collapsible toolbars/panes, etc. in the likes of VS, Sun's IDE, Netbeans, and JDeveloper. I can see how the Perspective system (or view system as some call it) would be intuitive for some; but I'm not *that* much of a noob that I need everything to be sorted out in such a way. There is always a 2 second pause while the JVM garbage collects and/or Eclipse switches perspectives, it seems. And that's annoying.
Eclipse is kinda a "download and you're on your own" kinda IDE.
I like that the other IDEs have features that are mostly comparable to Eclipse, but get all their updates from a single source.
That being said, I *DID* find the part of the Eclipse website that let you download a bundle of all of the Enterprise Development tools along with the core SDK, so I will play with those. I'm currently evaluating JDeveloper and IntelliJ.
Putting a strain on my poor SourceSafe database. Hope I don't corrupt it :(
Also, for the person who was talking about J2EE features and what- not. My instructors demand that we properly document our projects; design documentation, implementation, code comments, and end- user documentation. That is why I like the UML features. It comes in handy for putting some aspects of an application in a more visual term; and I routinely round-trip code/etc. and use those in my docs.
It may be overkill, but I think following such a practice will teach me more discipline when I graduate and enter the professional world. I don't want to embarrass myself :)
Lata, Nate.
Oliver Wong - 27 Apr 2006 16:59 GMT > Intuitive as in easy to pick up. > > Intuitive IDEs have features like Dynamic Help, collapsible > toolbars/panes, etc. I'm not sure why "collapsible toolbar/panes" would be intuitive, but Eclipse has those (click on the button that looks the "minimize" icon from Windows). Eclipse has dynamic help too, but I've never had to really use it (that's how intuitive Eclipse is! ... for me, anyway).
> in the likes of VS, Sun's IDE, Netbeans, > and JDeveloper. I've only used Eclipse and VS. I don't like how, when I tell VS in debug more to "run to this line", it runs right past it and keeps going. That wasn't very intuitive (as in easy to pick up) behaviour to me. I don't like how when I click on a method call and say "Show me where this method is declared", it tells me that the method isn't declared anywhere (when I know it is).
Maybe my install of VS was buggy or something, but my experience of VS was that it was not very intuitive. I mention this not to say "You're wrong, VS is bad, Eclipse is good", but to point out that people's experiences with IDEs may not be universal. So when you say "Look at VS as an example of intuitive", people might get the wrong idea.
> I can see how the Perspective system (or > view system as some call it) would be intuitive for some; but > I'm not *that* much of a noob that I need everything to be > sorted out in such a way. There is always a 2 second pause > while the JVM garbage collects and/or Eclipse switches > perspectives, it seems. And that's annoying. On my machine (Pentium 4 1.8Ghz, 1 GB RAM), there's a noticeable delay when switching perspectives, but it's less than 1 second. I'm guessing you might get better performance out of Eclipse if you had more RAM.
[...]
> Also, for the person who was talking about J2EE features and what- > not. My instructors demand that we properly document our projects; > design documentation, implementation, code comments, and end- > user documentation. That is why I like the UML features. It comes > in handy for putting some aspects of an application in a more visual > term; and I routinely round-trip code/etc. and use those in my docs. Not sure if that person was me, but I mentioned "forget about J2EE for now" because every tutorial I've seen on J2EE assumes you've already "mastered" J2SE. Note that "writing documentation", "implementation", "code comments" and "end-user documentations" are concepts that exist in J2SE as well. I've never actually touched J2EE, but I write documentation, I implement stuff, I comment my code, and I provide documentation to the end user. I use UML too. That's not what J2EE is about. J2EE, as far as I can tell, is about multi-tiered web services.
- Oliver
Nate the Capricious - 27 Apr 2006 21:22 GMT > I've only used Eclipse and VS. I don't like how, when I tell VS in debug >more to "run to this line", it runs right past it and keeps going. That >wasn't very intuitive (as in easy to pick up) behaviour to me. I don't like >how when I click on a method call and say "Show me where this method is >declared", it tells me that the method isn't declared anywhere (when I know >it is). " I was referring to how you can minimize it and have it pop up when you put the mouse over it.
> I've only used Eclipse and VS. I don't like how, when I tell VS in debug >more to "run to this line", it runs right past it and keeps going. That >wasn't very intuitive (as in easy to pick up) behaviour to me. I don't like >how when I click on a method call and say "Show me where this method is >declared", it tells me that the method isn't declared anywhere (when I know >it is). " I don't like how, when I want to debug an application you have to switch to a different perspective. Or to brose a CVS repository. Or doing other things for which there are dedicated perspectives in Eclipse. No, I don't think I should have to spend over an hour putting windows where I want them and creating custom perspectives; when other IDEs have all these features integrated into the main user interface. Furthermore, these IDEs are written in Java; so when it auto-switches things around... well... Coffee break.
> Maybe my install of VS was buggy or something, but my experience of VS >was that it was not very intuitive. I mention this not to say "You're wrong, >VS is bad, Eclipse is good", but to point out that people's experiences with >IDEs may not be universal. So when you say "Look at VS as an example of >intuitive", people might get the wrong idea." I don't see how people may get the wrong idea. I didn't come here to start any flame war or arguments, and certainly aren't a supporter of those. I'm not the only one who thinks VS is an intuitive development environment. Have you tried Emacs? Or Borland's IDEs (especially when they had CUA shortcuts). I'm sure you've tried Eclipse, as you've stated.
> On my machine (Pentium 4 1.8Ghz, 1 GB RAM), there's a noticeable delay >when switching perspectives, but it's less than 1 second. I'm guessing you >might get better performance out of Eclipse if you had more RAM." Awesome, so I should spend $$ upgrading my RAM to use a free IDE. The same way people recommended I spend $$ on plug-ins to make this free IDE useful?
> Not sure if that person was me, but I mentioned "forget about J2EE for >now" because every tutorial I've seen on J2EE assumes you've already [quoted text clipped - 4 lines] >user. I use UML too. That's not what J2EE is about. J2EE, as far as I can >tell, is about multi-tiered web services." It really doesn't matter, because Eclipse doesn't even have these features. And if it does they are of marginal usefulness. I wasn't arguing what J2EE was, but you'll be hard pressed to find a tool directed at J2SE developers with features like UML diagramming, reverse engineering, et cetera. The J2EE tools are useless, unless you do all of your development at the code level (or almost all of it).
How come all of these features that are developed for Eclipse that are worth a darn are all being sold (MyEclipseIDE, etc.). Seems a bit like a beta-test stepping stone than something meant to be used as is. How many developers do you know that are using Eclipse and only its free plug-ins, as opposed to some payware like MyEclipse IDE or some of the other commercial IDEs based on it?
Don't be so defensive/offensive.
Nate
Oliver Wong - 27 Apr 2006 23:11 GMT >> I've only used Eclipse and VS. I don't like how, when I tell VS in >> debug [quoted text clipped - 18 lines] > in Java; so when it auto-switches things around... well... Coffee > break. Your coffee breaks last 2 seconds? Rough working environment you've got there. =P
>> Maybe my install of VS was buggy or something, but my experience of VS >>was that it was not very intuitive. I mention this not to say "You're [quoted text clipped - 9 lines] > I'm > not the only one who thinks VS is an intuitive development environment. I think you misunderstood the point I was getting at. When you open a C# project in Visual Studio 2006, right click on a method, and choose "Show me where this method is declared", did VS2006 lie to you and tell you "It wasn't declared anywhere?" There are two possible ways you could answer this, and here's my responses to those answers:
(*) Yes, it lied to me.
Then why do you like VS2006?
(*) No, it actually showed me where the method was declared.
Okay, so like I said, your experience is different from mine. Meaning, what you saw when you clicked on certain buttons or menu options differed from what I saw when I clicked on those same buttons and menu options. In other words, given a button or menu option, you do NOT know what someone will experience upon clicking on those widgets.
So when someone asks you "How should I design my IDE to make it as intutive as possible?" the answer "Take a look at Visual Studio 2006" is a bad one, because you are probably assuming that the user's experience with Visual Studio 2006 will be identical to yours. That is, when you asked Visual Studio 2006 to perform action A, it actually DID perform action A. And you're thinking "I wanted to perform action A, I asked it to perform action A, and it did. How could anything be more intuitve than that?" Whereas another user might have gone through the thought process "I wanted to perform action A, I asked it to perform action A, and nothing happened. No error message or anything. What am I supposed to do now? Gee, this isn't very intuitive."
So what should you do instead of giving the answer "Take a look at Visual Studio 2006?" Cite specific experiences you've had with VS2K6 that you found intuitive. E.g. "When I wanted to compile, I felt in my gut that F5 should cause a compile, so I pressed F5, and lo and behold, it did compile! And I didn't have to look that up or anything". Obviously, that's not what I expect you to say, but I have no idea what you would say, since I have no idea what you consider intuitive. I'd like to know what you find intuitive. So I'm asking you now: how should an intuitive IDE behave?
Depending on your answers, this might yield yet other IDE recommendations.
> Have > you tried Emacs? Briefly. It didn't seem as good as jEdit, and I wasn't particularly interested in looking for a replacement for jEdit, so after a brief examination (on the order of seconds or minutes), I switched back.
> Or Borland's IDEs (especially when they had CUA > shortcuts). A long time ago. Borland Turbo Visual C++ 3.5 or something like that. It was okay. Eclipse didn't exist at the time, so it was the best I had seen yet, but definitely not good enough to get me as enthusiastic about it as I am with Eclipse. Of course, back then, I wasn't really aware of the whole Open Source movement, so I had very little reason to get enthusiastic about any piece of software at all. There was no "community" feeling, or a sense of contributing to a worthwhile cause.
> I'm sure you've tried Eclipse, as you've stated. Yup.
>> On my machine (Pentium 4 1.8Ghz, 1 GB RAM), there's a noticeable delay >>when switching perspectives, but it's less than 1 second. I'm guessing you >>might get better performance out of Eclipse if you had more RAM." > > Awesome, so I should spend $$ upgrading my RAM to use a free IDE. If you want to eliminate the delay you're experiencing in Eclipse and you have the spare cash, sure. I don't pretend to know your financial situation better than you, so I will not say you "should" do anything. I was just giving you potentially useful information, to give you more freedom of choice of actions. If you had not known, you might have incorrectly assumed that Eclipse is inherently slow, and that everyone else in the world also experiences the same 2 second delay that you do, and that they merely tolerate it. I'm just letting you know it isn't so. (Recall my comments about the non-universality of experiences that people have with their IDEs above).
> The > same > way people recommended I spend $$ on plug-ins to make this free IDE > useful? I'm not sure if it's the same "way". If you want a general life philosophy, I recommend you consider every possible action that you could undertake, and always choose the optimal one. So if you're in a situation where the optimal action is to spend money on plugins, then do so. If there's a better action, do that better one instead.
>> Not sure if that person was me, but I mentioned "forget about J2EE for >>now" because every tutorial I've seen on J2EE assumes you've already [quoted text clipped - 8 lines] > It really doesn't matter, because Eclipse doesn't even have these > features. I must have misunderstood you. When you wrote:
<quote> Also, for the person who was talking about J2EE features and what- not. My instructors demand that we properly document our projects; design documentation, implementation, code comments, and end- user documentation. That is why I like the UML features. It comes in handy for putting some aspects of an application in a more visual term; and I routinely round-trip code/etc. and use those in my docs. </quote>
I had assumed you were implying "I *WANT* J2EE features, because my instructor demands that we properly document our projects, etc."
I was just letting you know that "J2EE features" and "documenting our projects" are two unrelated concepts. that is, you can document your project without ever using a "J2EE feature".
> And if it does they are of marginal usefulness. I wasn't arguing what > J2EE was, > but you'll be hard pressed to find a tool directed at J2SE developers > with > features like UML diagramming, reverse engineering, et cetera. I'm not sure why you would say this. Personally, I use Visio for my UML diagramming, and I don't see why anyone would consider Visio to be "more directed at" J2EE developers than J2SE developers. For reverse engineer, I use JAD and Eclipse; again, these are just as much "J2SE tools" as they are "J2EE tools".
> The J2EE tools are useless, unless you do all of your development at > the code > level (or almost all of it). I couldn't say from personal experience, but I'd be surprised. You use XSDs in J2EE, right? I saw a coworker use some sort of drag and drop tool for messing around with XSD files.
> How come all of these features that are developed for Eclipse that are > worth [quoted text clipped - 6 lines] > payware like MyEclipse IDE or some of the other commercial IDEs based > on it? All the Eclipse plugins I use at work and at home are free.
> Don't be so defensive/offensive. I didn't intend to be. Sorry if you took it that way.
- Oliver
Monique Y. Mudama - 28 Apr 2006 22:00 GMT > How many developers do you know that are using Eclipse and > only its free plug-ins, as opposed to some payware like MyEclipse > IDE or some of the other commercial IDEs based on it? Me, for one.
 Signature monique
Help us help you: http://www.catb.org/~esr/faqs/smart-questions.html
Chris Uppal - 27 Apr 2006 13:17 GMT > It's funny; to me, Eclipse is much more intuitive than VS. I wonder > if "intuitive" means anything at all in the world of computing, or if > it all comes down to "whatever's most similar to what you've been > using." Almost anything would be more intuitive than VS. However I don't think that Eclipse manages to pull off even that trivial feat.
There's a theme that runs through the whole of the Eclipse design: there's no clear mental model of what you are doing. Often that results in "things" (I can think of no more precise word) which either have no name at all, or which have no very meaningful name. "Perspectives", for me, are one example of this. Another example is the little dance you have to do when you want to debug something -- what the hell are those things you create called ? (The ones in the drop list from the debug icon) My experience of Eclipse is that most of the time I'm working[*] with "concepts" that don't map onto what I want to do, or how I want to work, but which are just bundles of learned "Eclipse does <something> when <something else>" rules -- much the way I'd imagine a 16th Century peasant would feel if faced with learning to use a VCR.
([*] Via a UI which is not exactly well designed at the superficial level either -- I spend far too much time squinting at icons trying to find the right one, or shuffling through menus trying to find stuff.)
The only program I've used recently which matches Eclipse's frustrating and confusing design is Windows Media Player. I'm not sure which one I'd award the crown for shear badness to -- it'd depend on which I'd used most recently.
BTW, I do agree with you that there's an element of what you are used to in this -- for instance Netbeans will be far more familiar to an MS VC6 programmer than Eclipse is, and will be correspondingly easier to get into. But I think there's another aspect of "intuitiveness" which goes beyond that, and that there's some more-or-less objective sense in which a program can have intuitive design. I don't think that a well-designed IDE would have much resemblance to MSVC/Netbeans, it might well be at least as unconventional as Eclipse, but it wouldn't (by definition) share Eclipse's approach to design.
-- chris
Oliver Wong - 27 Apr 2006 20:12 GMT > Another example is the little dance you have to do when you want to debug > something -- what the hell are those things you create called ? (The ones > in > the drop list from the debug icon) Are you thinking of "Run configurations"? You get to specify the command line arguments passed to your program and the JVM in those things, as well as the "working directory", which JRE to use, the classpath, and environment variables. It's a pretty natural and useful concept to me. For example, given the same project, I can define multiple entry points (i.e. run it as an application or an applet? Run the "public static void main(String[] args)" method in class Foo or class Bar?), with different command line arguments, such as paths to resource files, or amount of RAM the JVM should allocate, etc.
Perhaps there are various "ways of thinking", and Eclipse happens to be designed for people who think the same way I do.
- Oliver
Chris Uppal - 02 May 2006 12:11 GMT > Are you thinking of "Run configurations"? You get to specify the > command line arguments passed to your program and the JVM in those > things, as well as the "working directory", which JRE to use, the > classpath, and environment variables. It's a pretty natural and useful > concept to me. Not to me. Consider:
Why should I have to define one of these things at all ? Why can't I just right click on main() and say "run this" or "debug this" ?
Come to that, why am I restricted to running main() ? There's no logical or technical reason I shouldn't be able to start execution at any static method (perhaps restricted to ones with simple argument types -- like String[]).
I'm not saying that the ability to save such a configuration (with "advanced" options about VM configuration, etc) wouldn't be useful. But only /as/ an advanced option.
Why are breakpoints etc, not associated with a "Run configuration" ? If that's a good name for the concept, then I'd definitely expect each configuration to have its own breakpoints (depending on what I'm interested in).
Why do I have to clean the blasted things up ? Shouldn't they be associated with a project or something ? In my current Eclipse session I have 10 run configurations, and only two refer to any currently open project. Indeed most of the zombies refer to code which is no longer in Eclipse at all.
The things don't correspond to anything in my working flow (I just want to execute some /code/, dammit!). And have only a tenuous connection with something that I might be tempted to change my flow to use (i.e. true Run Configurations).
As far as I can see they are just an externalisation of something that undoubtedly makes perfect sense in implementation terms (i.e. starting a debug JVM process), but which doesn't have meaning for me as a user.
If this stuff had been designed around the user, rather than around the implementation, then there would either be no such concept at all, or it would have been engineered around the kind of information that a user would wish to group into a Run Configuration. This kind of inside-out thinking pervades the entire Eclipse experience.
> Perhaps there are various "ways of thinking", True beyond doubt. But...
> and Eclipse happens to > be designed for people who think the same way I do. ...that may be true too, but only if (say) you routinely work on debugger implementations, and so happen to think in those terms. If not (or nothing similar) then I suggest that it is not that Eclipse has been designed for people who think like you, but that you have used Eclipse for long enough to have internalised the impoverished "abstractions" that it offers, and no longer see the deficiencies therein.
-- chris
Oliver Wong - 02 May 2006 19:09 GMT >> Are you thinking of "Run configurations"? You get to specify the >> command line arguments passed to your program and the JVM in those [quoted text clipped - 3 lines] > > Not to me. Consider: What you post next are all very valid complaints and feature ideas. Have you considered submitting these as RFEs to the Eclipse team?
> Why should I have to define one of these things at all ? Why can't I just > right click on main() and say "run this" or "debug this" ? I believe you *can* do that (except you'd click on the file rather than the main method itself). There is a side effect of a run configuration automatically being created for you. I imagine there might be a slight problem if you wish to start execution at a given entry point, and more than one run configuration is defined on that entry point. Eclipse could then prompt you for which one you wanted, or it could by default always run using a "blank" run configuration point when you clicked on a method to execute it, and only use your configurations when you explicitly select them.
> Come to that, why am I restricted to running main() ? There's no logical > or > technical reason I shouldn't be able to start execution at any static > method > (perhaps restricted to ones with simple argument types -- like String[]). Or start execution by invoking some constructor, as I heard BlueJ does. Perhaps the run configuration could even accept arbitrary code to execute within a static context.
> I'm not saying that the ability to save such a configuration (with > "advanced" [quoted text clipped - 6 lines] > to > have its own breakpoints (depending on what I'm interested in). Agreed, and it'd be nice if you could easily share these breakpoints/run configurations, so as to help pinpoint a bug in a colleague's code.
> Why do I have to clean the blasted things up ? Shouldn't they be > associated > with a project or something ? In my current Eclipse session I have 10 run > configurations, and only two refer to any currently open project. Indeed > most > of the zombies refer to code which is no longer in Eclipse at all. Another good idea.
[...]
> I suggest that it is not that Eclipse has been designed for > people who think like you, but that you have used Eclipse for long enough > to > have internalised the impoverished "abstractions" that it offers, and no > longer > see the deficiencies therein. You're probably right.
- Oliver
Monique Y. Mudama - 02 May 2006 19:21 GMT > Why do I have to clean the blasted things up ? Shouldn't they be > associated with a project or something ? In my current Eclipse > session I have 10 run configurations, and only two refer to any > currently open project. Indeed most of the zombies refer to code > which is no longer in Eclipse at all. I'd rather have 10 obsolete run configurations than have it decide I'm not using them and destroy them. This way, if I have to resurrect a project I haven't worked on in a long time, I still have the run parameters. It's not like they're something you stare at on a regular basis.
I suppose it could ask you, when you delete a project, if you want to delete any associated run configurations.
 Signature monique
Help us help you: http://www.catb.org/~esr/faqs/smart-questions.html
Oliver Wong - 03 May 2006 17:42 GMT >> Why do I have to clean the blasted things up ? Shouldn't they be >> associated with a project or something ? In my current Eclipse [quoted text clipped - 10 lines] > I suppose it could ask you, when you delete a project, if you want to > delete any associated run configurations. I just deleted a project today, and Eclipse showed me a list of run configurations, and asked me which ones I wanted to delete along with the project. Version 3.2.0, Build ID 20060419-1640.
- Oliver
Jon Martin Solaas - 27 Apr 2006 15:13 GMT > JDeveloper has so much Oracle stuff in it I didn't even bother to mess > with it. Much the same way VS has MS stuff in it, I suppose. But you don't have to use it, and some of it is redistributable anyway. But there is no prob to make non-Oracle-ish apps. Also it has lots of the stuff you miss in Eclipse.
Both Eclipse and Jdev miss the setup program, though. In my opinion that is the best part. I can use the same installation directory for both linux and windows, and it survives reinstallation of both os'es. Same goes for about any java-app, by the way, and really saves me *a lot* of trouble and work.
> It's too high maintenance as far as getting it to work with > my existing M$ technologies. It looked a bit promissing though. Hardly Oracles fault. Think you'll find the same issues with all Java environments, whatever they are.
> Now, I know there are alot of veteran Java developers who would say > doing it at the code level is great. But I tend to learn alot by > working with the visual designers. Netbeans, Jdev and also Eclipse via plugins *has* that. But I'm also frustrated by all the plugins in Eclipse so I don't use it. Others love it, though.
> I understand Eclipse has a visual > designer, but most of my interest is in web development; where Eclipse [quoted text clipped - 4 lines] > complete *non-vendor-specific* free IDEs out there. Maybe I'll just > save a few paychecks and purchase JBuilder. You'll probably find that JBuilder has as much Borland "stuff" in it as JDeveloper has Oracle "stuff" in it, but if you like Borland "stuff" better than Oracle "stuff" go ahead :-)
> Anyone have any recommendations as to nice alternative IDEs out there > other than the above mentioned? (I know of IntelliJ, will download the > trial later). Try to make a short list of requirements, then it'll be easier for people to suggest.
I'd encourage you to take a look at the latest JDeveloper. It's true it's full of Oracle stuff, 100% in fact, since it is an Oracle product, but it has nice designers for JSP/JSF, Swing, UML, ER, Java classes etc. It generates J2EE applications that doesn't need to depend on Oracle technology unless you want it. Using ADF components really speed up the development process, though, and db integration does work smoothest with Oracle db (including Oracle Express).
Some people prefer eclipse, though, maybe because it is more modular than JDev. But I prefer the monolithic approach so that I don't have to hunt for all the plugins I need.
Jon Martin Solaas - 27 Apr 2006 15:18 GMT > You'll probably find that JBuilder has as much Borland "stuff" in it as > JDeveloper has Oracle "stuff" in it, but if you like Borland "stuff" > better than Oracle "stuff" go ahead :-) Ah, forgot to mention, if you'd like to spend money on other things instead, JDev is free, full version for commercial use. But, enough advertising ... good luck :-)
David Segall - 27 Apr 2006 17:26 GMT >> JDeveloper has so much Oracle stuff in it I didn't even bother to mess >> with it. > >Much the same way VS has MS stuff in it, I suppose. But you don't have >to use it, and some of it is redistributable anyway. But there is no >prob to make non-Oracle-ish apps. Somewhat off-topic for this thread but can you tell me if Oracle SQL Developer <http://www.oracle.com/technology/products/database/sql_developer/index.html> can be used with non-Oracle databases. Although the database tools that come with NetBeans and the superior tools included in Java Studio Creator are good they fall far short of MS Access.
Jon Martin Solaas - 27 Apr 2006 19:40 GMT >>> JDeveloper has so much Oracle stuff in it I didn't even bother to mess >>> with it. [quoted text clipped - 7 lines] > that come with NetBeans and the superior tools included in Java Studio > Creator are good they fall far short of MS Access. Don't think so. You may have some more luck with the sql-stuff in JDeveloper.
I use Aqua Data Studio, it's java and connects to fairly many different databases via jdbc.
Michael Powe - 01 May 2006 21:54 GMT >>>>> "Nate" == Nate the Capricious <NatLWalker@gmail.com> writes: Nate> But I've been trying to get into Java, so I'm looking for a Nate> nice IDE and I've been having a few problems finding one.
Nate> I generally don't like applications that don't *install*, Nate> but I downloaded Eclipse anyways. It sounded very nice, Nate> especially since it has C/C++ development tools. Too bad Nate> they're only for GCC (I use Microsoft AND Borland compilers, Nate> but not the GCC). O well.
Yes, it's not an IDE it's a *platform*. Sheesh.
Nate> NetBeans is slow and clunky. And believe it or not, for a Nate> beginner, those refactorings are important (if you actually Nate> understand them) because you tend to make more coding Nate> mistakes that need to be undone. Well NetBeans sucks in Nate> that department compared to Eclipse. Then again Eclipse is Nate> more like Emacs on Windows.
I don't know where "slow and clunky" comes from. I use it on both windows and linux (1.7Ghz and 950Mhz machines, respectively) with decent amounts of RAM and it works great.
What I like about NB 5.0:
* updates imports when you add new objects or classes to your code * puts try/catch blocks around lines that throw exceptions * generates getters/setters for private/protected variables AND * substitutes the getters/setters for their variables throughout the package AND * will change access from public to private for variables when you create the accessors, if you wish * generates JUnit tests for the package * refactoring, of course, although I don't use this too much except for the above * when you add external libraries to a project, as part of the build process it creates a lib directory in the distribution folder and puts a copy of the libraries there and updates the classpath in the jar manifest * actually has a useful debugger (only one that i've ever used that i actually have been able to track down bugs!) * autocomment -- God's own Gift to those who actually prepare Javadoc, an interface for writing and formatting the documentation -- even has an 'autocomplete' button to create all the parameter, throws and return tags for methods and constructors * Javascript and CSS support for web projects, including code completion for CSS * builtin CVS support that is designed to commit the whole project -- I save on the Windows box and update/co on the linux box and I'm ready to go. * bean tag autocompletion
What I don't like:
* takes a long time to load up. * code completion boxes in JSP sometimes come up inappropriately and don't go away, I have to hit ESC. After doing this all day, it's mighty annoying. * changed the CVS paradigm from 4.1 and some of the features I used to depend on aren't there now. * doesn't autoclose scriptlet tags (but does bean tags -- go figure).
I use Visual Web Developer for ASP.NET projects and I never use the "visual" developer, I always work in the code, so I guess I'm right out of it in that department. At least VWD will try to steer your code toward XHTML standards, VS 2003 just generates nightmare code. Also, I think the "publish" mechanism used by both VS and VWD is dorky. WAR files are where it is at, AFAIC.
Thanks.
mp
PS I do all my 'one-offs' and code tests in emacs with JDE ... heh-heh. I'm using emacs/gnus right now for my news reading. I wouldn't go near Eclipse again, though ... i just didn't get enough return for my time investment.
 Signature Michael Powe michael@trollope.org Naugatuck CT USA
Oil production is in decline in 33 of the 48 largest oil producing countries, ... -- Chevron Oil web site
Steve Sobol - 02 May 2006 04:03 GMT > I don't know where "slow and clunky" comes from. I use it on both > windows and linux (1.7Ghz and 950Mhz machines, respectively) with > decent amounts of RAM and it works great. NetBeans USED TO be a horrendous resource hog compared to Eclipse, in my experience. I attributed Eclipse's smaller profile, in large part, to the Standard Widget Toolkit's usage of native widgets where possible.
However, I've seen big improvements in the performance and native look and feel of Swing in Java 1.5, so I suspect the difference between NetBeans and Eclipse is much less significant when both are running under a 1.5 JVM. I haven't tried the latest NetBeans, though.
 Signature Steve Sobol, Professional Geek ** Java/VB/VC/PHP/Perl ** Linux/*BSD/Windows Apple Valley, CA Resident of Southern California - the home of beautiful people and butt-ugly traffic jams
Chris Uppal - 02 May 2006 13:03 GMT > However, I've seen big improvements in the performance and native look and > feel of Swing in Java 1.5, so I suspect the difference between NetBeans > and Eclipse is much less significant when both are running under a 1.5 > JVM. I haven't tried the latest NetBeans, though. FWIW, some numbers, using JDK 1.5.0_06 on a 1.5 GHz laptop with 512 MBytes RAM:
Runnng Eclipse 3.1, no projects open, no files loaded, only the "Java browsing" persective active, takes 75 M RAM, of which 47 are in the "working set". Startup time from a warm start (i.e. immediately after closing the previous Eclipse sesssion), 11 seconds[*]. Loading one very small test project and opening the one file it contains, takes memory up to 109 M of which all is in working set.
Similar picture for Netbeans 5.0: no projects open, no files open. 92 M RAM, of which 72 in working set. Startup time from warm, 30 seconds. Loading an equivalent test project and opening the same single file, takes memory up to 106 Meg, (96 working set).
(For comparison: the full-featured and comparably recent Dolphin Smalltalk 6 Pro IDE: 27 M, of which all is in working set. Startup time from warm, 3 seconds. Smalltalk doesn't keep source code in files, so there's no equivalent to "opening up a small test project" since all the code is already available.)
Of course, all these numbers should be taken with the customary Large Pinch of Salt...
-- chris
([*] To be honest this surprised me, but then I don't normally start Eclipse from warm.)
Michael Powe - 02 May 2006 15:30 GMT >>>>> "Chris" == Chris Uppal <chris.uppal@metagnostic.REMOVE-THIS.org> writes: Chris> Steve Sobol wrote:
>> However, I've seen big improvements in the performance and >> native look and feel of Swing in Java 1.5, so I suspect the >> difference between NetBeans and Eclipse is much less >> significant when both are running under a 1.5 JVM. I haven't >> tried the latest NetBeans, though.
Chris> FWIW, some numbers, using JDK 1.5.0_06 on a 1.5 GHz laptop Chris> with 512 MBytes RAM:
[ ... ]
Chris> Similar picture for Netbeans 5.0: no projects open, no Chris> files open. 92 M RAM, of which 72 in working set. Startup Chris> time from warm, 30 seconds. Loading an equivalent test Chris> project and opening the same single file, takes memory up Chris> to 106 Meg, (96 working set).
The long load time is a gripe for me, although I'm quite sure it is because of the huge number of modules that are installed by default. One of these days, I'll get around to subtracting all the ones I don't use and then I expect to see improvement.
Still, since I generally have it open for days at a time, it's an intermittent issue.
5.0 is substantially improved over 4.1, which was much better than 3.5 -- the trend line is in the right direction. ;-)
Thanks.
mp
 Signature Michael Powe michael@trollope.org Naugatuck CT USA "The most likely way for the world to be destroyed, most experts agree, is by accident. That's where we come in. We're computer professionals. We cause accidents." -- Nathaniel Borenstein, inventor of MIME
Michael Powe - 02 May 2006 15:42 GMT >>>>> "Steve" == Steve Sobol <sjsobol@JustThe.net> writes: Steve> Michael Powe wrote: >> I don't know where "slow and clunky" comes from. I use it on >> both windows and linux (1.7Ghz and 950Mhz machines, >> respectively) with decent amounts of RAM and it works great.
Steve> NetBeans USED TO be a horrendous resource hog compared to Steve> Eclipse, in my experience. I attributed Eclipse's smaller Steve> profile, in large part, to the Standard Widget Toolkit's Steve> usage of native widgets where possible.
There are few complaints about performance on the nb users list, though there are plenty of other types of complaints. ;-) In part that may simply be a reflection of general hardware improvements. I know that it's just unusable on my old 600Mhz laptop, which has a whopping 192Mb RAM. I just use emacs there.
One thing, I just don't have the Eclipse mentality -- I don't want to spend hours downloading, installing and learning to use "plugins" just so I can develop an application or a web site. Frankly, I think there is something of the "making a virtue of necessity" in the argument that the Eclipse Way is somehow an improvement over being able to download, install, start and USE a fully-configured IDE.
Although, I did once spend an hour "skinning" NB. ;-)
Thanks.
mp
 Signature Michael Powe michael@trollope.org Naugatuck CT USA
ENOSIG: This signature file is empty.
Steve Sobol - 03 May 2006 07:18 GMT > There are few complaints about performance on the nb users list, > though there are plenty of other types of complaints. ;-) In part > that may simply be a reflection of general hardware improvements. I > know that it's just unusable on my old 600Mhz laptop, which has a > whopping 192Mb RAM. I just use emacs there. Right. Well, I had 256MB of RAM on a 2.0G Celeron, last time I used Netbeans. My laptop is still a 2.0G Celeron but I've upped the RAM to 640MB, so I probably ought to try installing the newest version of NetBeans just to see how much faster it actually is.
I appreciate your comments.
Best, SJS
 Signature Steve Sobol, Professional Geek ** Java/VB/VC/PHP/Perl ** Linux/*BSD/Windows Apple Valley, CA Resident of Southern California - the home of beautiful people and butt-ugly traffic jams
Thomas Kellerer - 02 May 2006 17:04 GMT > What I don't like: > > * changed the CVS paradigm from 4.1 and some of the features I used to > depend on aren't there now. You can download the "old" CVS module through the Update Center and get everything back that you are missing ;)
Regards Thomas
 Signature It's not a RootKit - it's a Sony
Free MagazinesGet these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...
|
|
|