954,554 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

Best Java integrated development environment

Hey guys im getting back into Java after a break from programming.

And i was wondering what is the best integrated development environment for running java.Im sure there is no one Best, but your input would be greatly appreciated.

jaycastr
Light Poster
41 posts since Jul 2010
Reputation Points: 10
Solved Threads: 0
 

NetBeans is really good. It has a ton of features, most of which I haven't even touched yet. For simple programming projects, I like Jcreator. It's very clean and simple, and works very well. Eclipse and Jgrasp are other popular choices that you may want to look into.

JavaDad
Light Poster
27 posts since Nov 2010
Reputation Points: 12
Solved Threads: 5
 

vi and javac is my environment of choice, but I use Eclipse at the day job because they require me to work on their Windows machine. Eclipse is not terribly painful, but I find its attempts to help me quite irritating. I'll write my own code, thanks very much, I don't want some machine throwing suggestions at me.

jon.kiparsky
Posting Virtuoso
1,849 posts since Jun 2010
Reputation Points: 383
Solved Threads: 187
 

I like Netbeans, really user friendly if your just starting out.

neemo6
Newbie Poster
10 posts since Dec 2010
Reputation Points: 10
Solved Threads: 1
 

NetBeans is sponsored by Oracle, so I highly recommend it.

seanbp
Junior Poster
129 posts since Jul 2010
Reputation Points: 20
Solved Threads: 15
 

If you're just starting out, you should certainly not be using an IDE, any more than you should use a calculator in a math class. The conveniences provided by an IDE might be useful for someone who knows what they're doing, but they will prevent you form learning things you need to know if you're just beginning.

IMHO, at any rate.

jon.kiparsky
Posting Virtuoso
1,849 posts since Jun 2010
Reputation Points: 383
Solved Threads: 187
 

thanks for your responses guys!

jaycastr
Light Poster
41 posts since Jul 2010
Reputation Points: 10
Solved Threads: 0
 

If you're just starting out, you should certainly not be using an IDE, any more than you should use a calculator in a math class. The conveniences provided by an IDE might be useful for someone who knows what they're doing, but they will prevent you form learning things you need to know if you're just beginning.

IMHO, at any rate.


This is so true, Most decent colleges teaching JAVA make you start in something like textpad which makes you HAVE to understand all the small things you do.

Akill10
Posting Pro
575 posts since Sep 2010
Reputation Points: 115
Solved Threads: 80
 

Some universities make students code in Notepad/Wordpad. Asking students to use an editor which doesn't go syntax highlighting is a sure shot way of "frustrating" the hell out of students and making them hate the course.

I personally use Eclipse (work) / gvim (home).

BTW, it's not "JAVA" but Java.

~s.o.s~
Failure as a human
Administrator
11,938 posts since Jun 2006
Reputation Points: 3,281
Solved Threads: 734
 
Some universities make students code in Notepad/Wordpad. Asking students to use an editor which doesn't go syntax highlighting is a sure shot way of "frustrating" the hell out of students and making them hate the course.


... or making them learn the language top to bottom and develop an eye for flaws in the code. One or the other.
But I wouldn't ask someone to use wordpad for coding. That's just torture. vi(m) is the way to go - or emacs, if you must, but emacs has the terrible habit of breaking into song or starting your computer up like a motorbike and driving off if you hit the wrong key combination. :)

jon.kiparsky
Posting Virtuoso
1,849 posts since Jun 2010
Reputation Points: 383
Solved Threads: 187
 
... or making them learn the language top to bottom and develop an eye for flaws in the code. One or the other.


True; but language is something students would never have control over, at least those who are interested are bound to download a sane editor and work in it rather than following the footsteps of "notepad lovers".

I'm not sure as to why Smalltalk isn't the language which is used for teaching OO to students. Maybe teaching Java is a way of preparing the students for the enterprise world out there. ;-)

Emacs is on my TODO list but mastering vim comes first. :-)

~s.o.s~
Failure as a human
Administrator
11,938 posts since Jun 2006
Reputation Points: 3,281
Solved Threads: 734
 

I've never played with Smalltalk - is it fun?

I suppose the popularity of java as a first language is not unrelated to the fact that it's widely used in business. After all, if you're doing a masters program for people who are going out to write back-end software for financial services, you might as well give them a language that you know they're going to run into in their careers.
But it seems a sensible choice. It's a powerful language with a lot of support (both in terms of libraries and literature, as well as smart people in forums like this one), and the learning curve is pretty good. Would you be surprised if I told you that I wrote my first line of java about two years ago, and before that my programming was pretty much shell scripts and some perl? Java does let you get places pretty fast. I imagine it's got its limits, but that's why you don't stop there - I'm working on scheme now. Learn a new language every year, that was the advice I got from the guy who started me out in java, and I think that's the best advice I've gotten about programming.

jon.kiparsky
Posting Virtuoso
1,849 posts since Jun 2010
Reputation Points: 383
Solved Threads: 187
 
Would you be surprised if I told you that I wrote my first line of java about two years ago, and before that my programming was pretty much shell scripts and some perl?

No, Java is in my opinion a "gateway" language. I started out with C++ and never really understood it. Just about a year ago I bought "Java for Dummies," "9 in 1". That book, the language, and NetBeans, was a Godsend. Once Java was learned both directions in programming languages were open, high and low. I then learned Python and C++. Finally, I'm still testing a calculator application in Java that's one of my masterpieces so far. I did it with the coding style where every variable is treated as const/final.

Does anybody know what that's called?

Java is mostly objects like Python is all, has only pointers like C#, writes like C++, and is nothing like JavaScript. These days the user never notices the slight performance drop with an interpreted language, anyway. However, C++ is compiled on a per-platform basis, C# is a Windows thing (I'm almost positive), and Python and JavaScript aren't precompiled at all.

PS: Is Objective C is worth learning?

seanbp
Junior Poster
129 posts since Jul 2010
Reputation Points: 20
Solved Threads: 15
 
I started out with C++ and never really understood it.


But you should, really. If not C++ (I admit C++ is a pretty complicated language when it comes to gotchas) then C and the basics of assembly programming to know *how* it works under the hood.Does anybody know what that's called?
Programming with 'final' in Java to avoid destructive updates is kind of inspired by the "pure functional" languages where destructive updates are avoided. Another thing which can be achieved using final is immutability for your classes.C# is a Windows thing (I'm almost positive) No, it isn't.

and Python and JavaScript aren't precompiled at all.


Not entirely true, pyc files are the byte compiled version of your Python source file. Though something like this doesn't exist for Javascript ATM, I'm sure it isn't impossible. You have to understand that there is a difference between the language specification and its implementation though for most of the cases it would be safe to assume that you are talking about the standard implementation.

PS: Is Objective C is worth learning?


Depends on what you want to do with it?

~s.o.s~
Failure as a human
Administrator
11,938 posts since Jun 2006
Reputation Points: 3,281
Solved Threads: 734
 

ya NetBean Is Good Tool For Java If your A Beginner You Just Practice It In notepad In At Lest 6-Month And After That You Can Go For IDEs ok there is Number Of Tool In World
Webspeher,Eclipse,J unit,Web logic This Are The Good Tool i Use ok

GuruMS
Newbie Poster
8 posts since Sep 2010
Reputation Points: 10
Solved Threads: 0
 

Notepad? What is this notepad talk? Have you people not heard of text editors? There are two standard ones, vi and emacs. You really should know both well enough to know which of the two you prefer. Or, hell, you're programmers, right? Write a text editor. Shouldn't take you too long.
Coding in notepad might make sense, if the alternative is having your eyes dug out with a runcible spoon, and fresh lemon juice squeezed lovingly into the bloody sockets. Otherwise, no, not when it's so easy to get a well-made editor. (Or emacs. :) )

jon.kiparsky
Posting Virtuoso
1,849 posts since Jun 2010
Reputation Points: 383
Solved Threads: 187
 
ya NetBean Is Good Tool For Java If your A Beginner You Just Practice It In notepad In At Lest 6-Month And After That You Can Go For IDEs ok there is Number Of Tool In World Webspeher,Eclipse,J unit,Web logic This Are The Good Tool i Use ok

No, NetBeans is NOT a good tool if you are a beginner. As being said earlier in this thread, if you're just learning the language, you should stay away from IDE's, especially those that auto-complete your statements. All you'll learn with that, is how to type and click-click-click, instant code, without actually understanding what you're doing or how it works.

After a few months, when you're a bit familiar with the Java syntaxis and you're switching from a text editor to an IDE, you should still start off with one of the simpler ones, that have just the basic functionalities, without the 'generate my code for me' parts.

Something wrong with your shift key btw? :)

stultuske
Posting Sensei
3,137 posts since Jan 2007
Reputation Points: 1,114
Solved Threads: 433
 
No, NetBeans is NOT a good tool if you are a beginner. As being said earlier in this thread, if you're just learning the language, you should stay away from IDE's, especially those that auto-complete your statements. All you'll learn with that, is how to type and click-click-click, instant code, without actually understanding what you're doing or how it works.

Sorry, but that depends entirely on the person trying to learn it. Of course, there are many people who will do what you just said. But also the same, if not more people who want tolearn the language, will write some code, using the auto complete, and not even move on until they understand every bit of it.

I'm not completely disagreeing with you, I just don't think it's right to definitively say "this is what happens when people do this". Using an IDE to learn, in conjuction with doing assignments etc., is in my opinion, a fine way to learn.

Akill10
Posting Pro
575 posts since Sep 2010
Reputation Points: 115
Solved Threads: 80
 
...that depends entirely on the person trying to learn it.


Quite true. For me not having an IDE to learn new methods is like telling a Python programmer he or she can't usedir(). I think the label of auto-complete is incorrect. Quickly scrolling through a list of available methods, with summaries of what they do, is far quicker than a simple text editor. It's better because skimming through the index of some book that couldn't possibly reference all the classes available to the J.D.K. isn't thorough enough for me. Auto-completing your code does not help you learn, it's a side-effect of what does.

seanbp
Junior Poster
129 posts since Jul 2010
Reputation Points: 20
Solved Threads: 15
 

Anything isn't good or bad in an absolute sense. IDE's are a necessity when it comes to professional development since you get paid for each and every minute. The organization doesn't pay you to *learn* but to *develop*. But, when it comes to beginners, IDE's are notorious for making them lazy and taking things for granted.

You'd be surprised at the number of job applicants I've seen who can't name *five* methods of the class they have used all these years. I call these kids the "CTRL + SPACE" generation. :-)

~s.o.s~
Failure as a human
Administrator
11,938 posts since Jun 2006
Reputation Points: 3,281
Solved Threads: 734
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You
View similar articles that have also been tagged: