Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
I have just learned Java in my college. However, in that I can just write programs that are run in the command line. How can I create GUI softwares using Java, something like Notepad? I'm really sorry for asking such a basic question on this forum, but I am really interested in writing real-world software. Also, I've heard a lot about Python. How can I develop similar software using Python?
Java: Trail: Creating a GUI With JFC/Swing
Python: GUI Programming in Python
And since you mentioned creating a simple text editor, here's an example.
You can use Eclipse to develop Java GUI/desktop applications for Windows.
http://www.eclipse.org/downloads/
NetBeans is also an option.
For Python, check these links:
GUI Programming in Python
Is Python any good for GUI development?
Start by using an integrated development environment such as Eclipse or Netbeans. Both of them are free.
Both have visual editors to graphically design your program and assist you writing the actions performed in the code when you e.g. click a button or so. Personally I prefer Netbeans for this purpose as the gui designer does not need to be added as an optional plugin (maybe this is also not necessary any more for Eclipse).
Of course, to go beyond the first steps, you will need to read some documentation on how to build GUIs as suggested in other answers.
If your goal is to write native windows apps you might also consider switching to .Net (c#) which is not too hard to learn when you know programming basics in java.
.net is much better integrated in the windows environment and I think visual studio has a notepad example lying around somewhere.
Not saying you can't do this in java, sure you can.
Use netbeans, it has a old but good visual development mode. I cannot remember perfectly but it uses swing library i guess. Also it lets you develop not for only windows, but for mobile phones etc if you install the right plugin.
i think for beginners netbean is good because its interface is user friendly.
it manages the code in well define manner and make code easy to understand
You can use IntelliJ:
https://www.jetbrains.com/idea/
This is a very good Java IDE if you want to become,
going to become, or are already a developer.
Related
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 2 years ago.
Improve this question
I am new with Java and unable to execute the simplest code. Do I need an IDE for that or are there alternatives? I am on MacOS.
You don't need an IDE at the beginning at all. Just a text editor and the Java environment with the dev tools it provides. And IDE is just a convenience thing that will make you more productive and organized later on but can be really overwhelming and distracting at the beginning. Distractions eat away from your time to concentrate on learning the actual thing.
The fact that you are unable to run basic code without an IDE tells me you are not suited for an IDE.
Start with the just your command prompt/terminal (depends on your operating system).
javac MyFirstJavaProgram.java
is all you need to build your code and then run it using
java MyFirstJavaProgram
The IDE does the same thing basically but instead you have a button for this and that plus (depending on the project) it uses some arguments for the ´javacandjava` that you don't really need at the beginning.
Some popular IDE's for Java include Eclipse, IntelliJ and VS Code.
I agree with what #rbaleksandar has to say but I think that if you can focus really well on the task at hand (writing code) and IDE is worth it because it will assist you in doing that without having to worry about running code and so and so. Only follow this recommendation if you are SURE you can focus on writing code and ignoring the IDE and stop using it if you get any problems with it as it will just waste your time then. If you decide to use an IDE I recommend IntelliJ IDEA but that is up to you.
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 9 years ago.
Improve this question
I was figuring out on the net, how to create a desktop application with Java. I found I can do it through NetBeans IDE. Is there a better IDE?
Can you suggest me a suitable eBook for learning Java NetBeans?
There are three major IDEs for Java:
NetBeans - https://netbeans.org/
Eclipse - http://www.eclipse.org/
IntelliJ - http://www.jetbrains.com/idea/ (This one is a commercial product.)
Pick your religion.
Actually, you can create desktop application with Java Swing GUI Toolkit, which is a part of the Java JDK, regardless of the IDE. #Lee Meador gives you some to choose from.
Here is a tutorial on making a simple desktop application with NetBeans.
There are also tons of YouTube tutorials for beginners. Search for "Java tutorials" and you'll be all set.
IDE preferences are fairly subjective. Netbeans is not bad. Eclipse is also a good IDE. My favorite one, though, is IntelliJ IDEA. They have a free Community Edition which lets you do a lot of things, but I paid for it to get full functionality.
As far as eBooks for learning about the IDEs, I would suggest just looking on the website of whatever IDE you end up choosing.
Here's how I see things when it comes to IDE's:
NetBeans is fantastic for beginners, but the code it generates for the Swing WYSIWYG editor looks like absolute garbage. If you're okay with keeping the code in NetBeans and not worrying about how the code for you GUI looks, it's an excellent way to go if you don't feel like hard-coding Swing.
Eclipse is a very professional and powerful tool, but it's a bit daunting at times as well, and it's not quite as quick and easy to get things up and running. It has no built-in drag and drop Swing editor (although Google provides an excellent one called the Google Plugin for Eclipse) but it's got far and away the most powerful debugger I've ever used.
I don't know a lot about IntelliJ other than that it's also a good choice for beginners and professionals alike, but I haven't seen as much community support for it. That may just be because I've been an Eclipse die-hard for ages, but that's just how I see it.
What's more important than your IDE choice is that you figure out early on how to use it to its full potential. All three are excellent pieces of software, and all three will help you do whatever it is you want to build. But they can only help you if you learn to use their organizational tools, their editor/template options, their respective debuggers, etc. Honestly, I would say if you have any friends that are Java developers, choose whatever they're using at least for now so you have someone to go to when you don't understand how to use a particular option.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
Not to be open-ended I will list my requirements.
Must have native UI (or at least .net the backend can be Java I don't care)
Must work with Ant (basic functionality is enough, as long as it shows Ant's output and double-clicking on [javac] errors inside ant outputs jumps to the referenced line)
Must have code completion (including my source code and third party .jars, no just JFC classes)
Extras (function which would help a lot):
Showing my classes and methods in a treeview
Alert for undefined symbols before compiling
Unicode support
Some form of integration with javadoc style documentation (reading JFC and other on-line documentation which was made by javadoc)
I think these are pretty down-to earth requirements.
Why don't you just use Eclipse? Then you could've listed about 200 more extras in your requirements...
Eclipse?! http://www.eclipse.org
Eclipse IDE is the best free Java IDE that I have used.
Visual J++ was an IDE from Microsoft that was shipped with Visual Studio until it was discontinued a few years ago. You might be able to get your hands on it and it should be able to follow your requirements to a certain point, but it is a discontinued product. (I don't think you mentioned it has be free.)
There has been Borland's JBuilder and possibly several other IDE's but I do concur with previous posters that Eclipse, Netbeans or IntelliJ will most likely do the job very well.
There's also Oracle's JDeveloper but since it's been rewritten I think it's also written in Java.
The only requirement that will be hard to meet is 'must have native UI'.
I long for the responsiveness of a native app
I doubt that you would settle for an online IDE then :-)
Googling for 'native java IDE' brings up (among others) Optistic. Might be worth a visit.
Lots of choices but not so many 'native UI' ones. Good luck making the right choice :-)
All the most popular IDEs should do what you have listed and a lot more. I prefer IntelliJ CE which is more productive for me. Eclipse and Netbeans are also excellent free IDEs.
In terms of screen update, I use a 2100x1600 window, sometimes locally and sometimes via VNC on our LAN and screen update speed is not an issue. Sometimes I have projects with a total of over 10,000 classes open. ;)
Update: I now use a 4K screen with over 30K classes in project with IntelliJ.
That would be either Netbeans or Eclipse if you are looking for something featurefull with nice graphical stuff, of vim or emacs if you are looking for something slimmer (with a much steeper learning curve)
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
Improve this question
How to create an own installer using Java? I am not asking about any Java installer software. Anyone knows the logic or method please tell me. Is there any API available for these?
In windows you can use Advanced Installer .
Advanced Installer is the only Windows Installer authoring tool with built-in support for Java applications, integrating them fully into the Windows OS and making them look and feel just like a native application.
Using Advanced Installer you can create MSI packages for your Java applications, and allow your application to use the Windows Installer features.
http://www.advancedinstaller.com/java.html
This is such a vague question. What do you want to install ? Options include:
the JRE ?
your application (a .jar) ?
Registry entries ?
Configuration files ?
There's no such Java API. If you need to install the JRE, then you could look at an existing deployment mechanism such as .rpm (others exist) and declare a dependency on a JRE. That way your chosen package manager will deploy all your pre-requisites.
This is a highly specialized topic, and I would be very surprised to see an answer here that satisfies your need for knowledge. If you are serious about this, you should be prepared to do your own work to research the concepts and implementation strategies.
Suggestions:
Survey what the existing tools do; e.g. by reading all of the available user documentation. It should be pretty obvious how they achieve most of the things that they do, at least from a high-level perspective.
Download the source code for one or more of the open-source products and read the code to figure out how it works / they work.
Start designing and building your own tool and develop your own practical knowledge.
Maybe start with the Windows Installer MSDN reference?
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I use vim as my editor but I would like to get some of the same power of the IDE's for java when it comes to refactoring. Are there any commandline tools for refactoring java? I could probably hack something together using perl or vim scripting but if there is something already out there I'd rather use that.
You could try Eclim. The goal of Eclim is to expose the functionality of Eclipse within Vim. In particular, there are a few commands for refactoring that are supported.
Check out jrefactory, and its command line option.
Code refactoring is a very context-sensitive and interaction-heavy process which doesn't lend itself very well to command-line interfaces. There can be dozens of types of refactorings you could do to a particular file (or set of files) and coming up with a vim interface to integrate all of this would be a major challenge.
If you want IDE functionality, why not use an IDE? Especially with Java, which lends itself so well to automatic refactoring by a complex piece of software like Eclipse.
I would strongly advise you to use VIM within an IDE (e.g. VIMPlugin and Eclipse - this is the combination I use and it works very well).
I used to be a VIM diehard. However the refactoring and code analysis within a modern IDE will far surpass any capabilities that VIM will provide (with plugins etc.).
Don't get me wrong. I love VIM and still use it for all sorts of stuff. Modern IDEs are the most productive route forward, however.
I know this is an older question, but I was asking myself this question a bit back and decided to write one. It's new and it not "super awesome yet" but it's written in GOLANG and it's open source. DISCLAIMER, this is my project but I am not self promoting. I just thought I'd share with others that care about something of this nature.
https://github.com/asharif/ref