Which environment?

S

steve_marjoribanks

I am just starting to learn java and my supervisor has told me to go
away and decide which environment to use to program in java. What
exactly is an environment and what does it matter which one I choose?
He seemed to suggest that some had big advantages over others etc. I am
going to be writing a couple of applets and hopefully a java
application as well.
Thanks
 
M

Monique Y. Mudama

I am just starting to learn java and my supervisor has told me to go
away and decide which environment to use to program in java. What
exactly is an environment and what does it matter which one I
choose? He seemed to suggest that some had big advantages over
others etc. I am going to be writing a couple of applets and
hopefully a java application as well. Thanks

He probably means that you need to choose your IDE (or editor and
compiler), but he could also mean that you need to choose your OS.
 
M

Malte

I am just starting to learn java and my supervisor has told me to go
away and decide which environment to use to program in java. What
exactly is an environment and what does it matter which one I choose?
He seemed to suggest that some had big advantages over others etc. I am
going to be writing a couple of applets and hopefully a java
application as well.
Thanks
I think that most peope will want to recommend you download eclipse.
 
T

Timbo

I am just starting to learn java and my supervisor has told me to go
away and decide which environment to use to program in java. What
exactly is an environment and what does it matter which one I choose?
I think these are questions you should have asked your supervisor.
'Environment' can mean a lot of different things.
 
Z

zero

I am just starting to learn java and my supervisor has told me to go
away and decide which environment to use to program in java. What
exactly is an environment and what does it matter which one I choose?
He seemed to suggest that some had big advantages over others etc. I am
going to be writing a couple of applets and hopefully a java
application as well.
Thanks

He probably means an IDE - Integrated Development Environment. Typically
this is an editor (a place to type your code), a debugger (to get logic
errors out of your code), and a compiler (I hope you already know what that
is). And most IDEs offer a lot of extras like JUnit integration (to create
tests on parts of your code), refactoring (improving the design and
readability of your code after it's written), code completion (the IDE
helps you by giving lists of possibilities), etc.

It may sound like all these things are a great help - and in fact they are,
for experienced programmers. For beginners, I (and many others) suggest
you use only a good text editor, no IDE. You can justify this to your
supervisor with 2 main arguments: 1. learning an IDE is non-trivial, and
should not be combined with learning a language; 2. when learning it's
better to find things out for yourself, and not have the IDE point out what
you did wrong. For more arguments, have a look at this group's archives,
this question comes up a lot.

For a good text editor, I suggest textpad:
http://www.textpad.com/

If you still want an IDE, have a look at these:
http://www.eclipse.org/
http://java.sun.com/j2se/1.5.0/download.jsp (netBeans)
http://www.bluej.org/
 
S

steve_marjoribanks

Ok, thanks people. I think he was, as suggested, enquiring as to how I
was going to write, compile and debug my code. Currently, I am working
through a tutorial which has suggested that I use the JDK and JEdit as
the text editor. What are the advantages of using this as opposed to an
IDE? I guess you get a better knowledge of the actual code processes
but will it take much longer?
 
D

Daniel Dyer

I am just starting to learn java and my supervisor has told me to go
away and decide which environment to use to program in java. What
exactly is an environment and what does it matter which one I choose?
He seemed to suggest that some had big advantages over others etc. I am
going to be writing a couple of applets and hopefully a java
application as well.
Thanks

As others said he is probably talking about your choice of editor or IDE.
We have already had this discussion here at least three times just in the
last week. You might want to look at these threads:

http://groups.google.com/group/comp...read/thread/cba4375d9b14c277/933ae6050b7813e8
http://groups.google.com/group/comp...read/thread/2eeb9a296b777cb9/24cc4f1677b9b907
http://groups.google.com/group/comp...read/thread/4111467faa0469ad/e70e83affd5df1fd

He may mean which platform (hardware/OS) do you want to use. You can
pretty much use any of the mainstream ones (Windows, Linux, BSD, Solaris,
OS X) equally productively.

Dan.
 
Z

zero

Ok, thanks people. I think he was, as suggested, enquiring as to how I
was going to write, compile and debug my code. Currently, I am working
through a tutorial which has suggested that I use the JDK and JEdit as
the text editor. What are the advantages of using this as opposed to an
IDE? I guess you get a better knowledge of the actual code processes
but will it take much longer?

I believe learning java will go much faster without IDE. And, at the
beginning, even coding may be faster, because you just type what you see in
the textbook, and you won't be tempted to go through the long lists of
methods and properties to find what you want.

When you're more experienced, using an IDE can speed up your work tempo,
but not at the beginning.

Search this group for "IDE" "text editor" "beginner tools" and similar,
there are a lot of lengthy discussions about exactly this topic.
 
T

Timbo

Ok, thanks people. I think he was, as suggested, enquiring as to how I
was going to write, compile and debug my code. Currently, I am working
through a tutorial which has suggested that I use the JDK and JEdit as
the text editor. What are the advantages of using this as opposed to an
IDE? I guess you get a better knowledge of the actual code processes
but will it take much longer?
IDE's generally have a much steeper learning curve, whereas some
like jEdit is good for a beginner because it's just 'type and
compile' programming.
 
D

David Segall

Ok, thanks people. I think he was, as suggested, enquiring as to how I
was going to write, compile and debug my code. Currently, I am working
through a tutorial which has suggested that I use the JDK and JEdit as
the text editor. What are the advantages of using this as opposed to an
IDE? I guess you get a better knowledge of the actual code processes
but will it take much longer?
As a general rule programmers will advise you to suffer the same
primitive environment that they suffered ten years ago. It was
difficult so, like bad tasting medicine, it must have been good for
them.

A modern IDE will write large portions of the program for you but it's
main advantage for beginners is in debugging. First, it will compile
your program as you write it so you can correct a line of code before
you start the next one. It will show you the appropriate part of the
programming manual as you are entering your text so that you do not
have to search for the alternatives you don't (yet) know. It will let
you run a single method rather than the whole program so you can check
that it works before you incorporate it into your program. If
something goes wrong it will take you to the error line with a click
of the mouse. If there is an error in your logic you can step through
the program one line at a time and examine the variables as you go.

It is possibly instructive to write a trivial "Hello World" program
with a text editor and the command line compiler. After that, choose
an IDE. There is some extra work learning it but it is well worth it.
If you already know one IDE learning the next one is easy.

My thoughts on what I consider to be a complete list of "real" Java
IDEs is here <http://profectus.com.au/ee_JavaIDE.html>.
 
F

Francesco Devittori

David said:
[...]
It is possibly instructive to write a trivial "Hello World" program
with a text editor and the command line compiler. After that, choose
an IDE. There is some extra work learning it but it is well worth it.
If you already know one IDE learning the next one is easy.

My thoughts on what I consider to be a complete list of "real" Java
IDEs is here <http://profectus.com.au/ee_JavaIDE.html>.

I do all my development with emacs, a makefile (or ant) and bash. It's
super-fast, without distracting features. I can't imagine working
without grep & co.
However I admit that designing a GUI is easier with an IDE.

Francesco
 
D

David Segall

Francesco Devittori said:
David said:
[...]
It is possibly instructive to write a trivial "Hello World" program
with a text editor and the command line compiler. After that, choose
an IDE. There is some extra work learning it but it is well worth it.
If you already know one IDE learning the next one is easy.

My thoughts on what I consider to be a complete list of "real" Java
IDEs is here <http://profectus.com.au/ee_JavaIDE.html>.

I do all my development with emacs, a makefile (or ant) and bash. It's
super-fast, without distracting features. I can't imagine working
without grep & co.
grep is included in all the IDE's. I admit that you would have to do
without doctor. :) If you already know the programs you list I can
believe that you are super-fast but for someone who does not, a Java
IDE has far fewer "distracting features" than Emacs, ant and bash and
most IDE's will look the same using any operating system.
However I admit that designing a GUI is easier with an IDE.
Indeed. And NetBeans has made it even easier with Matisse
<http://www.netbeans.org/kb/articles/matisse.html>. I'm hoping that
GroupLayout will be the only layout manager I need to understand.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
474,432
Messages
2,571,680
Members
48,796
Latest member
Greg L.

Latest Threads

Top