Slashdot Mirror


Eclipse in Action

Simon P. Chappell writes "The Eclipse IDE has thundered into the collective consciousness of Java developers since its release by IBM as Open Source Software. Up until this time, the majority of available documentation at the Eclipse website has been for plug-in developers, with scant attention given to the rest of us that actually want to use the tool for anything else. This book restores the balance and brings much needed help to those interested in this IDE." Read on for the rest of Simon's review, about which he says "Full Disclosure: I received a free, review copy of this book, so feel free to assume that I've been bought off and have traded my technical integrity to put about an inch of dead tree on my shelf." Eclipse in Action author Gallardo, Burnette and McGovern pages 383 (15 page index) publisher Manning rating 8 reviewer Simon P. Chappell ISBN 1930110960 summary A good book that lives up to its name.

Overview With a book like this it's difficult to know where to pitch the level. Do you aim for the lowest common denominator or do you assume some experience on the part of your reader? This book seems to have pitched itself well, not pandering to the absolute Java newbie, not afraid to get down into the code and yet gentle enough that newer Java developers can follow easily. The heavyweight chapter on writing plug-ins is at the back where it shouldn't frighten those of a sensitive nature.

The book is divided into two sections. The first and largest section concerns actual use of Eclipse during Java application development. The second section is for those who wish to write plug-ins for Eclipse.

The book takes a very 'Test Driven Development' approach to Java development and this shows in the manner that Eclipse is presented and taught. Emphasis is given to the tools that come with Eclipse, especially Ant, Junit and the CVS client. For those already skilled in these tools, this might seem like filler, but remember that there are still pitifully few Java developers using even these simple and free tools. My hat is off to the authors for their TDD evangelism, skillfully disguised as Eclipse usage instruction.

What's To Like I liked the progression followed in the book, first teaching the basic operation of Eclipse and then moving on to the tools that come with the base install. What's To Consider Some may consider that the material on Ant, Junit and CVS is filler. The 'Test Driven Development' theme may be a little too much evangelism for some.

I use Eclipse on a Mac OS X box and I felt that there was very little discussion concerning the cross-platform attributes of the tool. All of the screenshots were from a Microsoft Windows build of the software; a Linux or OS X screenshot would have been helpful.

One more niggle and then I'm done. There is no information on using Eclipse with other programming languages (a couple of paragraphs in the introduction chapter doesn't really count). I've recently started tinkering with Ruby and have used a Ruby plug-in to allow me to work within Eclipse as I learn the language. This is a wonderful testament to the power and extensibility of Eclipse.

Summary This is a good book. You know it's a good book when you already use the tool (both pure Eclipse and IBM's WSAD) regularly and you find yourself learning things that you had not previously been aware of. If you are working with Java and want a good free IDE that's going to grow with you, then Eclipse is a tool you should try -- and consider this book the User's Guide that would have been in the box if Eclipse came shrink-wrapped.

Table Of Contents
  1. Using Eclipse
    1. Overview
    2. Getting started with the Eclipse Workbench
    3. The Java development cycle: test, code, repeat
    4. Working with source code in eclipse
    5. Building with Ant
    6. Source control with CVS
    7. Web development tools
  2. Extending Eclipse
    1. Introduction to Eclipse plug-ins
    2. Working with plug-ins in Eclipse

You can purchase Eclipse in Action from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

19 of 247 comments (clear)

  1. Re:best ide ? by Randolpho · · Score: 4, Interesting

    I agree.... Eclipse is the best IDE, hands down. It lacks a few key features, however:

    1) No drag/drop editing. This really is a must, and I can't think of why they haven't bothered with it.

    2) No visual GUI editor. This is available for a price, though. I just wish it were free. :(

    --
    "Times have not become more violent. They have just become more televised."
    -Marilyn Manson
  2. Re:What's The Point? by easter1916 · · Score: 2, Interesting

    Use Eclipse and I am sure you will understand why.

  3. Re:best ide ? by mark_lybarger · · Score: 3, Interesting

    dnd editing? i find myself finding every way possible to stay away from that mouse. you can copy and paste methods, classes using eclipse, but yes, dnd i haven't really found (or looked for).

    if you need a gui editor, then use netbeans. it has an excellent gui editor and is free. if eclipse is the hammer, then gui editing is not a nail...

  4. Re:best ide ? by profet · · Score: 4, Interesting

    Personally I like IntelliJ IDEA.

    It's not free...but I don't think I could go back to Eclipse.

    IDEA definatlly is the best Java IDE out there.

  5. GUI editor by mughi · · Score: 4, Interesting
    2) No visual GUI editor. This is available for a price, though. I just wish it were free. :(

    It could be that for a general experienced java programmer, GUI editors just don't work as well for Java. What with layouts, different ways to do things, etc., designing powerful UI code for Java is different than say for Win32 (and yes, I've done both). Personally, I'm faster just writing straight code from a logical standpoint instead of dragging in code from a physical one. It's a fairly common sentiment on comp.lang.java.* also.

    1. Re:GUI editor by bay43270 · · Score: 4, Interesting

      GUI editors don't work as well for Java because no one has done it right - yet. There is absolutly no reason Java GUI editing can't be as easy as it is in Visual Basic. Take a look at OS-X interface builder. It allows all the flexability of Java layout managament with a single layout (which is graphical AND easy to use). It also supports MVC by allowing drag and drop binding between components and listeners (very cool). What does Java have that makes it so much more complicated??? Nothing!

      BTW, Idea's next version will feature a GUI editor. It promises to be very clean. I don't know if it will catch on because it uses non-standard ideas such as byte code manipulation to keep the code clean. All layout is in XML (generated by the WYSIWYG editor) and the code only contains listeners and component references (even the references are optional if you don't have listeners on those components)

  6. Re:best ide ? by fruity_pebbles · · Score: 2, Interesting
    The best Java IDE is IntelliJ IDEA, but it's not free.

    Having said that, Eclipse is pretty good, and much more pleasant to use than NetBeans.

  7. Development Use by blackmonday · · Score: 4, Interesting

    Borland should be afraid. I develop java with Eclipse pretty much exclusively now, and if you're doing server-side java you don't really need anything else. Only thing I haven't figured out how to do is deploy EJB's like Jetace (I use Websphere). Anyone know? Can I export the EJB completely from within Eclipse?

    Back on track, check out this plugin: PMD. It scans your classes for unused variables and a few other things. Some code our company paid for had literally hundred of unused strings in a class!

    1. Re:Development Use by hlee · · Score: 2, Interesting

      Borland is certainly concerned.. when they discovered we weren't going to renew our JBuilder licenses with many of us going over to Eclipse, they sent down a product manager to give us a presentation. At the end of the day, it became especially clear to us that we certainly wouldn't fork out US$3000 or even 1000 for JUST an IDE. Instead, we're spending our budget on Together Control Center (which Borland acquired from TogetherSoft) licenses instead, which has superior round trip engineering to Rational Rose. I did try the free UML diagrammer from www.omondo.com - its not bad - but they're light years away from Together/Rose.

      At the end of the day, I wouldn't recommend paying much (or at all) for an IDE - especially with Eclipse around. Instead if you've a dozen or more developers, and have a technically competent manager, products like Together and Rose do add tangible benefits to the development process (esp. use-cases, class diagrams, sequence diagrams).

  8. Re:best ide ? by los+furtive · · Score: 2, Interesting

    Hear! Hear!

    --

    I'm a writer, a poet, a genius, I know it. I don't buy software, I grow it.

  9. How about JFACE? by linuxlover · · Score: 2, Interesting

    Most Eclipse books (there are only 2 I think) & tutorial are concentrated on developing plugins.

    Eclipse plugins are indeed cool. But what is lacking is good docs for developing stand alone JFace (equivalant of javax.swing) applications. SWT is much talked about being an alternative to Swing. but still, I don't see much documentation on developing stand alone applications.

    For example, I have a small Swing GUI program, size of my program jar is ~1M. I'd love to convert it to SWT/JFace. But I don't want to convert it into a plugin. Because then I'd have to distribute Eclipse work bench with it. The 'minimal' eclipse is around ~12M. So my distribution file size increased 10 fold!

    any pointers appreciated.
    thanks ./LL

  10. Re:I'd like to weigh in ... by B3ryllium · · Score: 2, Interesting

    It's mostly just that I prefer the HomeSite method of project management.

    HomeSite creates a project file (projectname.apf) in the top folder of the project. It contains a complete list of all the files in the project, and can organize it either by physical folders, or by having virtual folders (sort of like symbolic links, I suppose). All of these .apf files are stored in the registry (eww, I know), and come up in a drop-down list so that users can instantly switch between projects. You can also define projects which concern a subset of an existing project. For instance, I have a "beryllium.ca" project and a "confuzzled" project, and the beryllium.ca project happens to include the confuzzled project (although aside from including the files, there is no special bond between them - at least, not in the project management software itself).

    That, and the difference in search/replace, and subtle text editing differences (drag and drop editing, for example), is why HomeSite is far more comfortable to me than Eclipse. Although I really do like the PHP function outline feature. :)

  11. Re:cross-platform? by Natty+P · · Score: 2, Interesting

    Wrong... Eclipse uses SWT, which uses native widgets, so the only way that Eclipse looks the same on Windows and Linux to you is if you have some kind of Windows looking skin on your Linux box.

    This article shows a screenshot of Eclipse on generic Windows and on Linux...

    Some Screenshots... I think on (Skinned?) Windows XP.

  12. Re:best ide ? by badmammajamma · · Score: 1, Interesting

    Actually, Idea IntelliJ is the best java IDE but feel free to live in the dark. However, if you want to say it's the best FREE IDE then I won't argue with you.

    --
    Any man who afflicts the human race with ideas must be prepared to see them misunderstood. -- H. L. Mencken
  13. This article tell you how by BreadMan · · Score: 3, Interesting

    Getting your application to work using SWT/JFace without the entire Eclipse framework isn't that difficult. Check out this article for detailed instructions.

    FWIW, I've actually done this and the results are great.

  14. Re:best ide ? by thrice · · Score: 4, Interesting

    I'm definitely on board w/ this. I was an active user of Eclipse for about 8 months, and after trying out IDEA i switched and left Eclipse behind. Soon afterwards, my entire company followed and we all now use IDEA.

    One of my biggest complaints with Eclipse was the inability to open a file or compile to a directory outside of the project workspace. Additionally, i found the refactoring to be slow when compared to IDEA.

  15. Try Eclipse for CVS by Drakonian · · Score: 4, Interesting
    Eclipse is a fantastic IDE, especially if you are a Java developer. There is a very active community as well, check into the Eclipse newsgroups if you have comments/questions.

    Even if you aren't a Java programmer, it may be worth having a look at Eclipse as a CVS client. Most graphical CVS clients rub me the wrong way. WinCVS is difficult to use and not intuitive. Try Eclipse - it actually lets you look at the projects on the repository and lets you view the resource history to compare any two files. The branching and mergeing features are very nice as well.

    --
    Random is the New Order.
  16. Re:best ide ? by SpryGuy · · Score: 2, Interesting

    I completely agree.

    Since I first used IntelliJ IDEA, I cannot go back to any other editor. And with each version, it keeps getting better and better. (I'm on the Early Access Program for the next version... just wait to you see what it has in store! Wow!)

    --

    - Spryguy
    There are three kinds of people in this world: those that can count and those that can't
  17. agree by ragnar · · Score: 2, Interesting

    Netbeans also has support for this and I'm hooked. Another tool I make extensive use of is PMD, which helps to detect various bad habits in coding. I'm not sure about eclipse, but I know there is a netbeans plug-in to show these things in real-time. I've found it handy.

    --
    -- Solaris Central - http://w