As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I'm a student, want to star some small Java projects, for fun and learning. I think GUI designer would be important, so guess NetBeans would be my choice. However, the company I'm working in and many many other people I know are using Eclipse. So...
Am I making the right decision (choosing NetBeans)?
Which one of these two do you prefer, and why?
just curios: Is there any other Java SDK out there?
Both Netbeans and Eclipse are good choices when it comes to java IDE, they both offer beginners a host of features and plugins that will make learning Java a lot easier. If you MUST HAVE a GUI designer then I would recommend netbeans (as its the only GUI designer I've actually tried) but for a beginner I recommend not using a designer all together. Especially just starting out learning how to design a GUI via code is useful. Java's windowing APIs are pretty simple to learn and shouldn't present too much of a challenge. My recommendation would be to just pick an IDE (either netbeans or eclipse) and start learning to code (don't worry about the GUI at first). Once you feel comfortable coding you can worry about GUI designers or not -- they're useful tools for rapid design but can also complicate the learning process.
IDEs and SDKs are not the same thing. Netbeans and Eclipse are IDEs (Integrated Development Environment). SDK is "Software development kit", basically, java, the compiler, and a whole bunch of other tools that you shouldn't worry about for now.
With the JDK alone, you can write java in a text editor and compile on the command line. IDEs are intended to simplify this process. Both Netbeans and Eclipse are powerful tools, but you're likely to be better off using what people around you are using so that you can learn from them.
I personally use Eclipse, but Netbeans is also very good. If you want to use the GUI designer, I would go with Netbeans because their GUI designer is much better. It is all preference. There is also products like JBuilder, Check out this page for a whole bunch of IDE's. http://www.webdeveloper.com/java/java_ides.html
Looking at other products is always a good decision.
Eclipse is a very strong machine when used with plugins.
SDK ? Means IDE ? Intellij Idea is the next IDE I am going to test. Just for curiosity.
I don't use GUI designers so won't comment on that aspect. Both are free so try each of them out. A lot of IDE choice boils down to personal preference, I'm a fan of text editors and command lines. No one can give you the "right" answer since no one is you and this is a fairly subjective area.
I'd say look for features that you are interested in and give all suitable IDEs a try. I'd been using eclipse for 5 years mostly because it was free and I liked in more than NetBeans. I just recently started using IntelliJ and like it a lot more but am paying the price for not having switched earlier.
Yes, if you like Netbeans, you should choose it over Eclipse. Choosing the IDE in which you more comfortable will help you learn Java and the tools much quicker. At a later date, it will probably be worthwhile to try Eclipse or IntelliJ. Each IDE has its strengths. I started with Netbeans and found it a much more initiative IDE than Eclipse. However, Eclipse is also an excellent IDE. Now I frequently use IntelliJ and Netbeans, and I kick around in Eclipse from time to time.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I already know Java, C# and C++. Now I want to start with web development and I saw that some really big sites are built with Python/C++. I like the coding style of Python, it looks really clean, but some other things like no errors before runtime is really strange.
However, I don't know what I should learn now. I started with Python but then I saw that Google App Engine also supports Java and the PlayFramework looks amazing too.
Now I am really confused. Should I go with Python or Java? I found the IDE for Python "PyCharm" really amazing for web development. Does Java have something similar, eclipse maybe?
I know that this question isn't constructive, but it will help me with my decision. What are pro and cons of both languages?
I just want to add, that if it is a requirement for you that it is compatible with GAE, then I think Django is the best choise. Playframework is of version 2.0 no longer compatible with GAE.
PyCharm is an IDE created by JetBrains. Originally, JetBrains only had one product, IntelliJ IDE (a Java IDE), and PyCharm and all the other products were spawned from that one highly successful product.
As for which language, I would suggest trying to do something small (but feature rich enough to be a holistic test) with all 3 and see which one works best for you. Language choice is a massive question, and depends on personal factors, project factors and many other besides. Therefore I won't even begin to tell you which one is best (because it would be what is best for me, in my situation).
It depends on you. What do you want more: learn new programming language or learn how to make web apps?
I just started few PLay tutorials and it's really great. PLay 2 is even more amazing than previous one. I'd like to learn Scala, so it's perfect for me, but also because of that it's not GAE compatible anymore, but come on, there are other ways to deploy apps, I'd like to try OpenShift (dunno if it's possible, I'll try it soon).
I'm also a big fan of Python, so it's naturally that I'm also looking for frameworks to build apps in that. I would say, that Django isn't the only choice. I had few tries with Django, right now I'm trying web2py. As many stated, Django has quite hard learning curve. Web2py should be better, but I don't like the 'wizzard' way of scaffolding apps.
I've used Bottle (Flask is similar) and it's great for small apps. RESTful apps are super-easy with them, so maybe it should be your starting point.
From what I've read about Python's frameworks:
Django is quite good for typical websites/CMS-like, hard to learn
web2py very interesting --- I'm in the middle of testing that, Reddit's using it?
web.py -- minimalistic, lightweight framework, you have to build webapp almost from scratch
Tornado/Twisted --- fast, async frameworks
Flask/Bottle --- very nice microframeworks. Great for REST services
I've not tried them all, but it's what I've found out during reading the web/blogs etc.
I'm looking for something like Play Framework 2.x but in Python(ideally 3) :)
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
Any good recent (Java 6+) Swing GUI builders the SO community would like to recommend? Some features I'm interested in:
Open source - great if its open but not hard requirement
Null layout managers - allow me to drag-n-drop controls where I want them
Custom controls
Design/Code split view or the ability to toggle back and forth
Thanks for any suggestions!
Netbeans is the best there is for Swing and will cover everything you need:
free,
open source,
null layout available, if you must use it... :-) ,
drag-n-drop,
custom controls you can drag-n-drop too,
great flexibility with files and projects and
refactoring.
They offer the best integration of Matisse Swing builder.
It is absolutely stable, expandable and fast.
There is a large number of plugins.
Hibernate reverse engineering is well implemented and there is a vast number of step-by-step tutorials that will help you start.
I personally use WindowBuilder Pro by Google. It is a plugin for Eclipse and it is free.
The next release of Eclipse - Indigo - will be on the 2nd of July and it will include WindowBuilder by default.
WindowBuilder is a powerful and easy
to use bi-directional Java GUI
designer that makes it very easy to
create Java GUI applications without
spending a lot of time writing code to
display simple forms. With
WindowBuilder you can create
complicated windows in minutes. Use
the visual designer and Java code will
be generated for you. You can easily
add controls using drag-and-drop, add
event handlers to your controls,
change various properties of controls
using a property editor,
internationalize your app and much
more.
Reference link: WindowBuilder Pro
I personally prefer to do everything by hand, it's more precise and avoid to get some generated code that is often ugly and dependant on a specific IDE.
NetBeans GUI builder is fine. You just need to save generated XML documents with GUI data, because it's not easy to edit the generated source code manually.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
Both of them have a lot of features and are very popular, but which is better?
To reduce subjective answers, please answer this points:
Code Refactoring.
Unit testing, debugging.
Git support.
Vim support.(available plugins and their quality, eclim, jVi).
Easy of use(theme support, formatting, configuration, other plugins).
Maven and Ant support.
Web development(glassfish, groove, grails, spring).
Desktop app development.(swing, gwt, swt).
Mobile development(Android support and other platforms)
Game development(which engines have better support, for example Jmonkey uses Netbeans).
Bonus question: Support of other languages Python, PHP, C++ and.
For every point that IDE does well, you can give it +1, so in the end:
Netbeans 8
Eclipse 7
Conclusion: Which one is better overall and which you would choose for:
Desktop development.
Web development.
Additional question:
Which IDE is being used in major companies?(Google uses eclipse, Oracle use Netbeans)
Note, these are largely my personal opinions; don't take everything too literally.
Eclipse, NetBeans and also IntelliJ IDEA are all very good and capable IDEs. In the end, it doesn't really matter which one you choose; they are all more than good enough for serious professional software development for Java SE and Java EE. I've used all three.
IDEA was tradionally known as the IDE with the best refactoring tools, but the current versions of Eclipse and NetBeans also have very good refactoring tools.
IDEA has built-in Git support. Don't know about Eclipse and NetBeans.
NetBeans and IDEA have very good built-in Maven support. For Eclipse, you need a plug-in (for example m2eclipse) and in my experience it's not as well integrated as in NetBeans and IDEA.
When you get the Java EE package of NetBeans, you get a bundled Glassfish server with it, which is very easy to use. I'm sure that with Eclipse and IDEA you can configure them to use Glassfish too, but it's undoubtedly going to be a little more work to setup than with NetBeans.
NetBeans has a great Swing GUI builder. Eclipse doesn't have a built-in GUI builder, but you can get Google WindowBuilder Pro which supports Swing, SWT and GWT.
The official Android SDK etc. comes with a set of Eclipse tools. IDEA also has support for Android development, but I don't know how good it is.
Last time I tried, the support for other languages than Java (for example, JavaScript) was better in NetBeans than in Eclipse.
As far as I know, Eclipse is still the number one most used Java IDE, but NetBeans and IDEA are also very popular.
For Scala development, IDEA has the best support at the moment in my opinion. The Scala team is working on an Eclipse-based IDE for Scala, but in my experience it is less stable than IDEA's Scala support. For NetBeans, there is a Scala plug-in but only one person seems to be working on it; last time I used it, it was buggy, slow and had memory leaks.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm pretty new to Java, and I need to build up programming environments for it (editing, compiling, testing, debugging, and deploying/making jar files).
And, even though I'm not a super expert of emacs, I'm a big fan of this wonderful tool.
Here comes my question.
Is it wise to use emacs for Java development? Is Eclipse better for Java development?
And, what people normally use for Java development environment? I mean, using what tool may result in getting more help than otherwise?
As a die-hard Emacs user and professional Java developer, I can say that I choose Eclipse hands-down for Java, and Emacs for everything else. Every tool has its advantages, and I try lots of tools. But the ecosystem surrounding Eclipse is unparalleled (even by EmacsWiki!) and Eclipse has the best Emacs emulation of any editor I've ever found if you install the Emacs+ plugin (by MulgaSoft).
Depending on the type of Java programming you're doing, Eclipse has no competition, i.e. if you're working with anything related to Google technologies (GWT, App Engine, Android). The Mylyn component to Eclipse interfaces with just about every task management tool out there, which is fabulous if your work in a corporate environment that uses JIRA, Mingle, VersionOne, Bugzilla, etc.
My experiences with JDEE, while favorable and interesting, put in a distant 3rd place to Eclipse and Netbeans, respectively. I haven't really worked with IntelliJ, so I can't comment on that front.
I think it's pretty critical to understand that there is a hard, non-subjective line between "AST editors" (Eclipse/NetBeans/IntelliJ) and text editors like emacs, vi, slickedit, etc. etc.
In Eclipse/NetBeans/IntelliJ they compile all the code and read that byte code back into a large, fully connected and cached internal AST. So for example when you rename a method, they follow the AST to all code in the project that uses said method and update all usages.
This is significantly different than a text find/replace which is what you get from a text editor.
Java is a strongly typed language which is an incredible advantage when using an editor that knows how to follow and manipulate that type structure.
malabar-mode is the best existing solution for Java development in Emacs. It has nice maven integration, groovy shell, semantic support, etc...
Java IDE certainly outgun anything Emacs has to offer in terms of features related to refactoring and code analysis, but other than that the Emacs experience is way better - much more powerful editor, simpler and vast ecosystem of extensions and an overall aura of greatness ;-)
It's all a matter of taste in end - whether you prefer click-based programming, when everything happens in menu and popups or prefer to go down to the bare metal, write the code more carefully(because there won't be a tool to analyze it for you) and create...
If you go for IDEs do yourself a favor, ignore all the Eclipse propaganda and have a look at the competing projects - I personally recommend you IntelliJ IDEA. In the end one decides for himself, but the decision should be made objectively and not based on statements like "everyone is using Eclipse"...
Most of the Java developers I know use Eclipse. I prefer Emacs, and at times, NetBeans. Mostly I prefer to do all my editing in Emacs and use NetBeans only to generate the build file. I recommend NetBeans over Eclipse because it has a better Emacs mode and is lighter on resources (relatively!). If you are looking for a full Java IDE for Emacs, try JDEE.
Emacs is a fantastic editor which is very useful - when you take the time to learn it well.
Eclipse/NetBeans/IntelliJ are each a fantastic Java IDE which is very useful - when you take the time to learn it well.
The amount of additional functionality that is available in Eclipse because it knows by heart that you are working with Java code and understands that code, is so large that it is difficult to tell in a few sentences. Let me give a few examples:
Hovering the mouse over any identifier shows its javadoc in a popup.
A single keypress can let you choose any implementation of the interface at the cursor location, including sub-classes.
You can easily refactor things, i.e. change orders of parameters in a method call or rename it and Eclipse will change it in all files where it is used.
The builtin Eclipse compiler is very robust so even with errors elsewhere in your source, you can still refactor code giving you more freedom to work.
The list goes on and on. There are, however, plenty things that Eclipse is not very good at, and in those cases it can be beneficial to open the files in other editors, like Emacs or vim.
So, learn your tools well, and have more tools than just a hammer.
Ultimately, this comes down to what works best for you. Try emacs, IDE's, and other tools as you see fit and then use what you like and find easiest.
I have a co-worker who says he often has emacs and NetBeans up at the same time. He uses emacs for editing and NetBeans for investigating errors, building, testing, etc.
While I've dabbled off and on with Java for years, I'm just starting to get into it seriously due to a new job where it is the main development language. Previously, I've used emacs for most of my development; it's editing power is quite nice to have. However, for larger projects I find that for many things an IDE is nice also. So, I may adapt my co-worker's strategy of running both emacs and NetBeans simultaneously.
Prior to working on this job I'd worked a little with Eclipse, which I liked. However, NetBeans is the defacto standard where I'm now working, and has some good points, so I'm working on learning that.
Recently I learned of CEDET, which looks to be a way of wrapping an IDE around emacs. Unfortunately, I've not had time to investigate it yet, but you may find it worth a look.
I am using Netbeans but there are some limitations to it, like absence of a back-forward navigation in the tool-bar (am used to it), variable renaming in a class, not changing the caller methods etc. Eclipse seemed better to me.
Best would be to try using the community edition of Idea IntelliJ . I have used their premium edition, and must say the developer experience in terms of usability friendliness and refactoring help is much better in IntelliJ. Also, there are some really neat short cuts for example to show you all the child class of a particular class in one view (And then letting you choose which to open), refactoring help and lots more.
The community edition would also have most of the features.
I'm looking for the following:
A nice debugger that allows me to easily view variable values if I use breakpoints.
Works very nicely in Windows 7.
Has something similar to the Toolbox pane in Visual Studio.
Built in intellisense, and code completion with the TAB key.
Long term support. I mean something that will last and stay in active development for years. I don't want a pet project IDE that will stop developing in a year. I'm just learning so it'll be very dificult at first to switch IDE's.
I'm new so I don't really know which IDE provides what I need between the two. Any help?
Well, I switched from Eclipse to Visual Studio, and I use both just about every day.
I found it hard to get used to the little differences at first, but now I am proficient in both IDEs.
I can't speak to whether or not Netbeans would be easier to learn, but Eclipse shouldn't be hard at all.
Both IDEs will provide all of the features that you have listed, and you should be able to customize both of them to get them to work almost exactly like Visual Studio.
So you want to learn Java and your first question is about which IDE to learn ? I suggest you look at BlueJ which is an IDE designed for people who want to learn Java. From my, I admit limited, experience with the IDEs you mention, BlueJ is the one which gets least in one's way when trying to learn Java as opposed to learning the IDE. Once you've exhausted BlueJ's capabilities there is an easy progression to NetBeans through a plug-in but you would probably not find it too difficult to step up to Eclipse instead.
Yes, I know you want to choose between Eclipse and NetBeans but BlueJ might be of interest.
This is a common debate, and there are obviously merits on both sides (this might be better served as a community wiki page). I prefer Eclipse, but to answer your questions as well as I can briefly:
Works very nicely in Windows 7.
Both are fine.
Has something similar to the Toolbox pane in Visual Studio.
Sorry, not familiar. Neither are short on panes, though Eclipse has a richer cache of third party plugins that might give you the experience you want.
Built in intellisense, and code completion with the TAB key.
I believe both are Ctrl-Space by default. If you're working in Java in Eclipse, there's an automated pop-up after a half second delay each time you type a separator (.) character.
Long term support. I mean something that will last and stay in active development for >years. I don't want a pet project IDE that will stop developing in a year. I'm just >learning so it'll be very dificult at first to switch IDE's.
Both are very mature products. I'd imagine Eclipse's fortunes are a little more secure simply because NetBeans might experience some turbulence during the Oracle acquisition of Sun.
My only other comment is that it's always seemed to me that Netbeans had far nicer "click-and-go" project templates out of the box, while Eclipse offered richer third party library integrations and a better debugger.
Probably both will do. Personally, I'd rather use Netbeans, because it's easier to get started right-out-of-the box. Eclipse depends more on plugins.
Why not try both and see which one suits your individual tastes more?
Both are find but if you want to build GUI's, Netbeans has the edge as it has a built in GUI builder, including a toolbox of controls to use with it.
Eclipse does not have a GUI builder. The commercial Eclipse distribution, MyEclipse does have a GUI builder - it's actually the one from Netbeans.
Neither Intellij IDEA is the Cadillac of Java IDEs
Netbeans = Great out of box experiance
Eclipse = Highly customizable with plugins and (so I've heard) slightly better intellisence-like capabilities.
If possible, I'd say try both (despite the bandwidth problem). If you get basic Java Development versions, the sizes aren't that big (48 MB for NetBeans and 92 MB for Eclipse)
I personally prefer NetBean's in-built capabilities since I don't like having to install plugins to make my experience the way I want it (and not all Eclipse plugins are free) but most of my fellow java devs prefer Eclipse's simplicity and ease of use.
I think you should try Intellij Idea, it the most powerful-intuitive java IDE I've never seen (http://www.jetbrains.com/idea/index.html). The new Community Edition is free and more than enough for java developpement. As it is highly configurable you can choose 'TAB' for auto completion, but I think you can learn from existing combinations that are well design.
Regards.
Java has some really nice IDEs available and many will do what you require.
I dont know you, but I use VS with Resharper so I m very used to those shortcuts, if you do too then have a look at IntelliJ ( they have a comunity edition)
Otherwise you can get eclipse and get the IntelliJ keymap ( or try to get the default VS keymap)
Netbeans is nice too, but I had some problems with it ( ie didnt build, rancomly crashing, etc)
Also most offer Source Control integration ( in Eclipse you have many flavours of subversion for example)
I guess you ll have to play around and find what suits you
Cheers