Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [cdt-dev] Programmer productivity when using JDT

Well, I need to start with some disclaimers.  First, I'm not an official
CDT contributor.  However, my job involves extending CDT (and Eclipse)
to support my employer's embedded multicore architecture, so IMHO I
qualify, at least in terms of your question.  Second, if I wasn't using
Eclipse, I'd be using some other IDE instead of emacs/vi and command
line tools.  I used the latter in college in the early 80's (yikes...),
so take my opinions with a grain of salt: emacs-et-al may very well be
much spiffier than when I was a young-un...  Still, here are my two

I switched to Eclipse from JBuilder about 8 months ago, mostly because
of a job change, but also because Borland's seen the light anyway: I
believe JBuilder is migrating to being Eclipse-based  :-)  (...and that
is in itself a testament to Eclipse...)  Compared to JBuilder, I'd say
I'm 40% more efficient, primarily because of Eclipse/JDT's superior
refactoring operations and code assists.  I don't know if emacs could
support such excellent, intelligent refactoring, but - if so - I imagine
there would be overhead in setting that up (maybe not?), whereas it's
there, ready-to-use, in off-the-shelf Eclipse/JDT.  And when I say
refactoring, I mean sophistication like:  you ask to rename a class and
the source's text is fixed, AND the filename is renamed, AND comments
can be changed, AND similarly named variables can be changed, AND
references are fixed - INCLUDING references in things like the
"plugin.xml" file...  I'd be surprised if emacs could do all that in one
fell swoop.

Also: Eclipse's wealth of plugins is a major factor.  For instance, I
recently installed the Perforce plugin, and I now no longer have to
leave Eclipse to check-out a file.  I don't need to do much at all
because simply typing into an editor that has a read-only file means the
Perforce plugin will detect the read-only attribute and automatically
check-out the file for me!

But also - specific to CDT development - the fact that you can select
(say) the name of a CDT class or method and hit F3 to see the
implementation is ENORMOUSLY useful.  Likewise for stepping into CDT
code in the debugger.  And that involves Eclipse/JDT finding the
appropriate source in the right ZIP file, in the right CDT plugin
directory.  I *could* probably setup such 1-key source lookup in
JBuilder, and I guess in emacs/vi, but that setup time would suck up
time, and detract from JBuilder/emacs/vi.

And speaking of the debugger:  I can't even estimate how much time I've
saved in learning about CDT by using the JDT debugger, to try things out
in a running "test" Eclipse, which was launched from the debugger in a
development Eclipse.  This method lets me try something in the "test"
Eclipse and - after hitting a key breakpoint - then just step through
execution to watch what the CDT and Eclipse code is doing.  I can't even
estimate how much more time it'd take for me to try the same thing from
(say) "emacs" and some command-line-based debugger.  Maybe it's easier
than I know.  All I can say with assuredness is:  Eclipse/JDT's debugger
let me get up to speed on the (voluminous) CDT code base pretty darn
quickly.  Although I've only been at my new employer's for about 8
months, I've been productive and contributed quite a bit, and Eclipse
deserves a good share of the credit for that.

-- Rich

> -----Original Message-----
> From: cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx]
> Behalf Of Craig Rasmussen
> Sent: Monday, July 23, 2007 1:26 PM
> To: CDT General developers list.
> Subject: [cdt-dev] Programmer productivity when using JDT
> I'm heading to Washington next week to discuss Eclipse with our
> program managers at a tools workshop.  I could use your help in
> making the case that funding Eclipse would end up saving $$$ in the
> long run.
> Question:  How much more (or less) time would it have taken you to
> implement your work on the CDT had you only used emacs/vi and command
> line tools?  Please answer in fractional units of 1/10, as in "I am
> 1.1 times more efficient when using the JDT.
> I know this is unscientific, but I'm just interested in an estimate.
> Thanks,
> Craig
> _______________________________________________
> cdt-dev mailing list
> cdt-dev@xxxxxxxxxxx

Back to the top