unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
* Can Emacs beat NetBeans or Eclipse?
@ 2007-12-12 14:00 John Wells
  2007-12-24 18:14 ` Tom Tromey
       [not found] ` <mailman.5362.1198522014.18990.help-gnu-emacs@gnu.org>
  0 siblings, 2 replies; 10+ messages in thread
From: John Wells @ 2007-12-12 14:00 UTC (permalink / raw)
  To: help-gnu-emacs

Guys,

I'm an emacs newb. I've been using vi for text editing for years and
Eclipse or Netbeans for Java development, but have finally promised
myself to learn emacs. The motivator for this is really to not die
without knowing it, and to learn what's on the other side of the fence
(and to perhaps find a new, warm, welcoming home for my editing
needs).

What I'd like to understand is where emacs hits the "text editor" wall
when it comes to Java development. I've already looked at it's Ruby
support (my other current language) and it looks very strong, but in
terms of Java development I'm betting that there is a point you reach
with emacs where you can go no further. For example, debugging Java,
refactoring Java, and deep insight into Java data structures for
navigation, refactoring, etc.

NetBeans, Eclipse, and other Java-based Java IDEs have an easier time
with understanding the semantics of Java, I'd wager, simply because
they *are* Java.

I guess what I'm looking for is to understand: what can you do, as a
java developer, in NetBeans or Eclipse that you can't do (reasonably)
in emacs?

Thanks guys! I appreciate the guidance!

John

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Can Emacs beat NetBeans or Eclipse?
       [not found] <mailman.4919.1197468067.18990.help-gnu-emacs@gnu.org>
@ 2007-12-17 21:03 ` Malte Spiess
  2007-12-19  2:03 ` Galen Boyer
  1 sibling, 0 replies; 10+ messages in thread
From: Malte Spiess @ 2007-12-17 21:03 UTC (permalink / raw)
  To: help-gnu-emacs

"John Wells" <lists@sourceillustrated.com> writes:

> What I'd like to understand is where emacs hits the "text editor" wall
> when it comes to Java development. I've already looked at it's Ruby
> support (my other current language) and it looks very strong, but in
> terms of Java development I'm betting that there is a point you reach
> with emacs where you can go no further. For example, debugging Java,
> refactoring Java, and deep insight into Java data structures for
> navigation, refactoring, etc.

Well, since you can use lisp-functions in Emacs, there are basically no
limits.

Especially for JDEE there are lots of really nice features that you can
use or adjust to your needs. A good idea would be to join the JDEE
mailinglists to share your ideas with other developers.

> NetBeans, Eclipse, and other Java-based Java IDEs have an easier time
> with understanding the semantics of Java, I'd wager, simply because
> they *are* Java.
>
> I guess what I'm looking for is to understand: what can you do, as a
> java developer, in NetBeans or Eclipse that you can't do (reasonably)
> in emacs?

Since I don't use these tools I can't really tell, but many things that
work with a standard Eclipse installation will not with JDEE. You can
add most things by hand though with a little lisp/Emacs knowledge.

For me the biggest fortune of Emacs is rather that you can use one tool
for everything and don't have to learn new script languages all the
time. It's not so much that it's the best Java IDE around...

> Thanks guys! I appreciate the guidance!
>
> John

Greetings
Malte

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Can Emacs beat NetBeans or Eclipse?
       [not found] <mailman.4919.1197468067.18990.help-gnu-emacs@gnu.org>
  2007-12-17 21:03 ` Malte Spiess
@ 2007-12-19  2:03 ` Galen Boyer
  1 sibling, 0 replies; 10+ messages in thread
From: Galen Boyer @ 2007-12-19  2:03 UTC (permalink / raw)
  To: help-gnu-emacs

On Wed, 12 Dec 2007, lists@sourceillustrated.com wrote:
> Guys,
> 
> I'm an emacs newb. I've been using vi for text editing for years and
> Eclipse or Netbeans for Java development, but have finally promised
> myself to learn emacs. The motivator for this is really to not die
> without knowing it, and to learn what's on the other side of the fence
> (and to perhaps find a new, warm, welcoming home for my editing
> needs).
> 
> What I'd like to understand is where emacs hits the "text editor" wall
> when it comes to Java development. I've already looked at it's Ruby
> support (my other current language) and it looks very strong, but in
> terms of Java development I'm betting that there is a point you reach
> with emacs where you can go no further. For example, debugging Java,

Right now, Eclipse wins this battle, hands-down.

> refactoring Java, and deep insight into Java data structures for
> navigation, refactoring, etc.

Its not that you can't go any further, its just that somebody has to
take it further.  Join up on the JDEE list.  It looks like new
development will be picking up quite soon.  Paul Kunnican brought the
JDEE to where it is today.  He deserves tons of kudos from all users and
gets plenty as well, but, alas, Paul has encountered other committments
so is starting to hand off the torch to others.

I can tell you when I was coding java, I used Emacs/JDEE and Eclipse
closely together.  I would code up the file real fast in Emacs and then
load it into Eclipse to use the up-to-the-minute error notification to
fix any left-over issues.

> NetBeans, Eclipse, and other Java-based Java IDEs have an easier time
> with understanding the semantics of Java, I'd wager, simply because
> they *are* Java.

Its more related to the fact that those guys are running in a JVM and
therefore can use java's reflective capabilities directly.  The JDEE
creates a beanshell JVM as a process and sends executable java through
its shell interface executing compiled java which returns elisp
structures that are then evaluated back into the JVM.  When its humming
along, its pretty slick.  Context sensitive dropdowns, compilation
buffers with enter taking you to the line of error, all sorts of
built-in coding macros and support for alot of off-the shelf java
goodies.  

> I guess what I'm looking for is to understand: what can you do, as a
> java developer, in NetBeans or Eclipse that you can't do (reasonably)
> in emacs?

More than anything, I could work with other developers seemlessly
because they all used Eclipse.  I was at a disadvantage because java was
not my profession, so I had to use Eclipse just to be able to enlist
help from others when needed.  IMO, if the entire team were good at
Emacs and we all used it, the team would have been much more productive.
I've yet to work on a team to test that theory out, but, if all users
were using Emacs, my theory is then everybody would be sharing elisp
code as part of their professional day. Everyday, the team would be
getting more productive.

Eclipse worked great, unless it didn't.  If/When it croaked, nobody
understood the guts.  You can write plug-ins in Eclipse, but that seems
to be as close to the guts of Eclipse as you will get.

A thing that you will notice about Eclipse users is that most of them
are completely lost when Eclipse does not support their needs.  If they
have to look at a text file or execute shell prompts or edit something
not easily editable by Eclipse, they will just end up not doing it.
With Emacs, you just never have that problem.  Emacs is built on being
able to be as close to the operating system as a user can be, and
augmenting that interface with nice usability features, not replacing
those tried and true methods.  Take shell for example.  Emacs doesn't
try to replace the shell prompt with "something easier to use".  Emacs
instead, augments the shell prompt giving the user the ability to
seemlessly operate in a shell buffer.  I find the shell prompt extremely
easy and always available.  I'm in a shell prompt and using it all day.
For most all non-emacs users, a shell prompt is deemed archaic.  Well,
if I have to use cmd.exe or ksh as my interface, then, yes its archaic.
But, I have Emacs augmenting those interfaces and with that
augmentation, I have the power of the shell with the power of Emacs
combined.  The shell is a very powerful tool and Emacs makes it a
pleasure to use.

> Thanks guys! I appreciate the guidance!
> 
> John

-- 
Galen Boyer

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Can Emacs beat NetBeans or Eclipse?
  2007-12-12 14:00 Can Emacs beat NetBeans or Eclipse? John Wells
@ 2007-12-24 18:14 ` Tom Tromey
  2007-12-24 19:06   ` Gian Uberto Lauri
       [not found] ` <mailman.5362.1198522014.18990.help-gnu-emacs@gnu.org>
  1 sibling, 1 reply; 10+ messages in thread
From: Tom Tromey @ 2007-12-24 18:14 UTC (permalink / raw)
  To: help-gnu-emacs

>>>>> "John" == John Wells <lists@sourceillustrated.com> writes:

I'm a little late to this but wanted to weigh in anyhow.

John> What I'd like to understand is where emacs hits the "text editor" wall
John> when it comes to Java development. I've already looked at it's Ruby
John> support (my other current language) and it looks very strong, but in
John> terms of Java development I'm betting that there is a point you reach
John> with emacs where you can go no further. For example, debugging Java,
John> refactoring Java, and deep insight into Java data structures for
John> navigation, refactoring, etc.

The two have different strengths.

Emacs is really great for editing of all kinds.  And, at least the way
I use it, it is integrated into my entire work process, including
email and irc.

Emacs is much, much easier to hack on than Eclipse is; occasionally
I'll write a bit of lisp (or more trivially, a keyboard macro, which
AFAICT Eclipse lacks) to automate some complicated change.  This sort
of thing is hard with Eclipse.

Emacs comes with tons and tons of things that Eclipse does not -- not
just odd things like mailers and news readers and irc clients, but
mundane things like all the editing commands, customizability (e.g.,
in Eclipse you cannot, as a plain user, make a tool bar button that
run "cvs commit"), editing modes for just about every language, etc.

On the other hand, Eclipse is hugely better at Java -- better enough
that I moved all my real Java work into Eclipse, even though that
meant living with sub-standard editing.

Despite what some others have said on this thread, I don't think that
Java reflection plays a big role in Eclipse's superiority in this
area.

Instead, the primary thing that Eclipse has that Emacs does not is an
integrated Java compiler.  Eclipse comes with its own intelligent,
incremental compiler that understands your whole program.  The
compiler is what provides all the nice features: automatic rebuilds
(on my machine it is usually done compiling as soon as I save a
buffer), refactoring, intelligent completion, javadoc hover-help,
class browsing, find callers, error filters, quick fix, etc.

Eclipse also has some nice team features.  You can check in various
project files and anyone who checks out the project will automatically
get the right indentation settings, language compliance settings,
build paths, etc.  Emacs doesn't have anything like this built in; and
generally Emacs doesn't really have a "project" concept the way
Eclipse does (this is both a strength and a weakness of Eclipse).

Eclipse's cvs and svn support is somewhat better than Emacs', at least
as of Emacs 22.  Emacs VC still commits things a file at a time
(changed in cvs, I think).  pcl-cvs is great but (IME) does not scale
well to big projects.

There's also some Eclipse features I haven't explored as much -- mylyn
is the one I'm most curious about.  I don't think Emacs has anything
like this.

Now, in theory none of this is impossible to do in Emacs.  Someone
could, for instance, make the Eclipse compiler talk to Emacs over a
socket and expose all its features in Emacs.  I keep hoping somebody
will do this :-).  I think there's something kinda like this for
vim...

I can't compare the Eclipse java debugger with the Emacs one as,
weirdly, I haven't used either.  I also have never used JDEE in Emacs
(a big oversight).

Tom

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Can Emacs beat NetBeans or Eclipse?
  2007-12-24 19:06   ` Gian Uberto Lauri
@ 2007-12-24 18:53     ` Tom Tromey
  2007-12-25 10:15       ` Gian Uberto Lauri
  2007-12-24 19:17     ` Gian Uberto Lauri
  1 sibling, 1 reply; 10+ messages in thread
From: Tom Tromey @ 2007-12-24 18:53 UTC (permalink / raw)
  To: help-gnu-emacs

>>>>> "Gian" == Gian Uberto Lauri <saint@eng.it> writes:

>> Eclipse also has some nice team features.  You can check in various
>> project files and anyone who checks out the project will automatically
>> get the right indentation settings, language compliance settings,
>> build paths, etc.

Gian> Build paths? Unless all of the team mates have the same file system
Gian> layout forget of them moving seamlessly from one user PC to another.

Gian> Even worse if they DO NOT use the same O.S.

I glossed over a detail.  Eclipse generally does the right thing here
-- when you set up your project you have it use "containers" and not
full paths.  Then entries like the JDK classes or Eclipse platform
classes are resolved on the end user's machine.  Real paths are not
generally checked in, since as you point out, that would be bad.

The auto-build stuff is not ideal in all environments.  We had mixed
results with using it for GNU Classpath, for instance, since Classpath
has a very "non-Java-like" build.

For pure Java projects, though, it is delightful.  There really isn't
a "build", in that you never have to run "make" or "ant", and the
error/warning view is more or less always up-to-date.  Once I tried
this I was hooked -- no more mucking about with build.xml or similar
trivia.

Maybe you could achieve this with flymake.  I haven't tried.

Gian> Usually, or I use ant or use Eclipse as project handler, debugger (I
Gian> don't know of something as well integrated in Emacs like gdb),
Gian> compiler -uses JDK one, AFAIK- and editor for the very little things.

Tried M-x jdb?  I haven't but I'm curious how it compares.

Gian> I would like to write an eclipse editor to reokace JDT one that uses
Gian> emacsclient like code to trigger Emacs Lisp...

Yeah.  Well, I'd really prefer the reverse -- include the nice bits of
Eclipse in Emacs.  But either way is just a dream until someone writes
it :-)


I've been meaning to give JDEE a try... while we're talking about
wishes, maybe someone could package it for ELPA ;)

Tom

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Can Emacs beat NetBeans or Eclipse?
  2007-12-24 18:14 ` Tom Tromey
@ 2007-12-24 19:06   ` Gian Uberto Lauri
  2007-12-24 18:53     ` Tom Tromey
  2007-12-24 19:17     ` Gian Uberto Lauri
  0 siblings, 2 replies; 10+ messages in thread
From: Gian Uberto Lauri @ 2007-12-24 19:06 UTC (permalink / raw)
  To: help-gnu-emacs

Quoting Tom Tromey <tromey@redhat.com>:


> On the other hand, Eclipse is hugely better at Java -- better enough
> that I moved all my real Java work into Eclipse, even though that
> meant living with sub-standard editing.
>
> Despite what some others have said on this thread, I don't think that
> Java reflection plays a big role in Eclipse's superiority in this
> area.

You can use both as I do. With the current JDEE correctly configured
it's even faster than Eclipse with the import and method completion.

> Instead, the primary thing that Eclipse has that Emacs does not is an
> integrated Java compiler.  Eclipse comes with its own intelligent,
> incremental compiler that understands your whole program.  The
> compiler is what provides all the nice features: automatic rebuilds
> (on my machine it is usually done compiling as soon as I save a
> buffer), refactoring, intelligent completion, javadoc hover-help,
> class browsing, find callers, error filters, quick fix, etc.

The refactoring is *really* useful. The other ones... See above for
the completion.

> Eclipse also has some nice team features.  You can check in various
> project files and anyone who checks out the project will automatically
> get the right indentation settings, language compliance settings,
> build paths, etc.

Build paths? Unless all of the team mates have the same file system  
layout forget of them moving seamlessly from one user PC to another.

Even worse if they DO NOT use the same O.S.

>  Emacs doesn't have anything like this built in; and
> generally Emacs doesn't really have a "project" concept the way
> Eclipse does (this is both a strength and a weakness of Eclipse).

JDEE has. And with a good ant file...

> I can't compare the Eclipse java debugger with the Emacs one as,
> weirdly, I haven't used either.  I also have never used JDEE in Emacs
> (a big oversight).

I use JDEE since ... I forgot when I started using it.

Usually, or I use ant or use Eclipse as project handler, debugger (I  
don't know of something as well integrated in Emacs like gdb),  
compiler -uses JDK one, AFAIK- and editor for the very little things.

I would like to write an eclipse editor to reokace JDT one that uses
emacsclient like code to trigger Emacs Lisp...

But for now Emacs does the big coding and the most I have to do is  
telling Eclipse "refresh" (Emacs is smarter in this).

--
  /\           ___
/___/\_|_|\_|__|___Gian Uberto Lauri_____
   //--\| | \|  |   Integralista GNUslamico
\/                 e coltivatore diretto di Software

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Can Emacs beat NetBeans or Eclipse?
  2007-12-24 19:06   ` Gian Uberto Lauri
  2007-12-24 18:53     ` Tom Tromey
@ 2007-12-24 19:17     ` Gian Uberto Lauri
  1 sibling, 0 replies; 10+ messages in thread
From: Gian Uberto Lauri @ 2007-12-24 19:17 UTC (permalink / raw)
  To: help-gnu-emacs

Quoting Gian Uberto Lauri <saint@eng.it>:


> I would like to write an eclipse editor to reokace

I would like to write an eclipse editor to replace


--
  /\           ___
/___/\_|_|\_|__|___Gian Uberto Lauri_____
   //--\| | \|  |   Integralista GNUslamico
\/                 e coltivatore diretto di Software

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Can Emacs beat NetBeans or Eclipse?
       [not found] ` <mailman.5362.1198522014.18990.help-gnu-emacs@gnu.org>
@ 2007-12-24 21:02   ` Mark Elston
  2007-12-24 21:29     ` Tom Tromey
  0 siblings, 1 reply; 10+ messages in thread
From: Mark Elston @ 2007-12-24 21:02 UTC (permalink / raw)
  To: help-gnu-emacs

* Tom Tromey wrote (on 12/24/2007 10:14 AM):
> 
> Eclipse also has some nice team features.  You can check in various
> project files and anyone who checks out the project will automatically
> get the right indentation settings, language compliance settings,
> build paths, etc.  Emacs doesn't have anything like this built in; and
> generally Emacs doesn't really have a "project" concept the way
> Eclipse does (this is both a strength and a weakness of Eclipse).

While I don't remember all the variables off the top of my head
here is what I would do for 'team' editing in Emacs:

%%% Local Variables:
%%% mode: java
%%% c-basic-offset: 4
%%% c-comment-only-line-offset: 0
%%% etc...
%%% End:

Mark

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Can Emacs beat NetBeans or Eclipse?
  2007-12-24 21:02   ` Mark Elston
@ 2007-12-24 21:29     ` Tom Tromey
  0 siblings, 0 replies; 10+ messages in thread
From: Tom Tromey @ 2007-12-24 21:29 UTC (permalink / raw)
  To: help-gnu-emacs

>>>>> "Mark" == Mark Elston <m.elston@advantest-ard.com> writes:

>> Eclipse also has some nice team features.  You can check in various
>> project files and anyone who checks out the project will automatically
>> get the right indentation settings, language compliance settings,
>> build paths, etc.  Emacs doesn't have anything like this built in; and
>> generally Emacs doesn't really have a "project" concept the way
>> Eclipse does (this is both a strength and a weakness of Eclipse).

Mark> While I don't remember all the variables off the top of my head
Mark> here is what I would do for 'team' editing in Emacs:

Mark> %%% Local Variables:
[..]

Yeah... except you have to do this for every file.  And, you can't
make a "new file skeleton" this way -- in Classpath we used this to
insert GPL headers and the like automatically.  This problem applies
to any setting which is attached to the "project" and not necessarily
to a particular file.  Also, if you decide to change a setting... ugh,
you have to edit every file.

So, it really isn't the same.

FWIW I have a patch to Emacs that adds this sort of functionality.  I
need to address the last round of critique before it can go in,
though... I've been slacking on that.


Don't get me wrong here -- I love Emacs and I want it to excel.  As
part of this I think it is important to recognize what is good about
other environments and try to adopt the things that make sense.
That's why I wrote the project-settings code :-).  I suppose if I had
a lot of time and was still doing a lot of Java work, I'd look at
bringing the Eclipse compiler technology over as well.

Tom

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Can Emacs beat NetBeans or Eclipse?
  2007-12-24 18:53     ` Tom Tromey
@ 2007-12-25 10:15       ` Gian Uberto Lauri
  0 siblings, 0 replies; 10+ messages in thread
From: Gian Uberto Lauri @ 2007-12-25 10:15 UTC (permalink / raw)
  To: help-gnu-emacs

Quoting Tom Tromey <tromey@redhat.com>:


> Gian> Usually, or I use ant or use Eclipse as project handler, debugger (I
> Gian> don't know of something as well integrated in Emacs like gdb),
> Gian> compiler -uses JDK one, AFAIK- and editor for the very little things.
>
> Tried M-x jdb?  I haven't but I'm curious how it compares.

Once, and did the job. But the Sun JDK debugger is what linmits all...

> Gian> I would like to write an eclipse editor to reokace JDT one that uses
> Gian> emacsclient like code to trigger Emacs Lisp...
>
> Yeah.  Well, I'd really prefer the reverse -- include the nice bits of
> Eclipse in Emacs.  But either way is just a dream until someone writes
> it :-)

I handle Java better than LISP :). Even if writing a Plugin involves a bit
of wizardry...


--
  /\           ___
/___/\_|_|\_|__|___Gian Uberto Lauri_____
   //--\| | \|  |   Integralista GNUslamico
\/                 e coltivatore diretto di Software

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2007-12-25 10:15 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-12-12 14:00 Can Emacs beat NetBeans or Eclipse? John Wells
2007-12-24 18:14 ` Tom Tromey
2007-12-24 19:06   ` Gian Uberto Lauri
2007-12-24 18:53     ` Tom Tromey
2007-12-25 10:15       ` Gian Uberto Lauri
2007-12-24 19:17     ` Gian Uberto Lauri
     [not found] ` <mailman.5362.1198522014.18990.help-gnu-emacs@gnu.org>
2007-12-24 21:02   ` Mark Elston
2007-12-24 21:29     ` Tom Tromey
     [not found] <mailman.4919.1197468067.18990.help-gnu-emacs@gnu.org>
2007-12-17 21:03 ` Malte Spiess
2007-12-19  2:03 ` Galen Boyer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).