JimDel
JimDel

Reputation: 4359

What is the Java equivalent to C#'s Windows Forms for building GUI apps easily and rapidly

I wanted to learn to program and looked at both Java and C#. I decided to go with C# because it was so easy to just open a form and plop some buttons and text boxes on it. With just one download, C# Express got me going.

From what I saw with Java that couldn’t be done. At least not without downloading and configuring other software. All of which I found no easy instructions for. But I really wanted to learn Java.

I really don’t want to learn how to create UIs AND a new language. I’d rather just to concentrate on the code itself. Is there an easy way (like C# basically) to create Java apps?

Upvotes: 11

Views: 26652

Answers (12)

Umar Abbas
Umar Abbas

Reputation: 4161

i found this for designing java winform application for you . please check out

www.formdev.com

JFormDesigner™ is a professional GUI designer for Java™ Swing user interfaces. Its outstanding support for JGoodies FormLayout, GroupLayout (Free Design), TableLayout and GridBagLayout makes it easy to create professional looking forms.

Upvotes: 0

If you have Java in your browser, all you need is the latest Eclipse bundle.

I would suggest the Java EE edition for your platform from http://www.eclipse.org/downloads/

It appears that there are video tutorials starting from scratch at http://eclipsetutorial.sourceforge.net/totalbeginner.html

Upvotes: 1

hogni89
hogni89

Reputation: 1754

The best way of learning programming .. is to write code! If you know your way around Java, It's a mater of syntax to learn C#. Programming is just as much a way of thinking in code, as knowing a language.

Personally, I didn't start with GUI. I started with BlueJ, a free "learning" compiler, for Java code.

No programmer in the world knows any language 100%. Their all sitting in their office, and playing with stackoverflow and google all day. Remember, Google is your best friend! (May be a bit of caffe too !)

Reminder: The best way to learn to write code, is to write code! If it's C, C++, C#, Java, PHP, Python or whatever you prefer, it's a matter of framework and syntax.

Upvotes: 1

davek
davek

Reputation: 22895

I've done a fair bit of work (> 4 years) on both platforms and the biggest difference I have found is not so much with the languages per se, but with the whole development environment. Specifically:

  1. In .Net (be it ASP.Net, C# or VB.Net) the examples you find on MSDN or elsewhere tend to just work without a whole lot of tweaking, and the documentation is more reliable, whereas Java examples - especially the open source ones - often don't work out of the box and the documentation (yes, Apache Slide and Shindig - I'm looking at YOU!) is sometimes non-existent.

  2. Having said that, the sheer amount of choice for plugins, libraries and the like for the Java platform is enormous, which is unsurprising considering its (largely) non-proprietary nature.

Upvotes: 5

Zen
Zen

Reputation: 857

I been learning to program in C# for a few months, but recently I signed up for a course which required Java. So I started playing around with java, first tried Netbeans then Eclipse.

I'm kinda a computer programming noobie (background mainly in web design) so take my perspective as a student. After messing around with Java for a bit i still prefer C#. While both are excellent the factors that tipped C# in my case are as follows

  1. Easier documentation and a large variety of easy to view Video Tutorials, yes I know netbeans have a very large collection of video tutorials as well, they are encoded at such a terrible resolution and bitrate that they are largely unwatchable
  2. Slightly easier to learn, maybe it's cause of the IDE or the syntax, but I found C# easier to pick up.
  3. More functionality exposed right after using the IDE, you will find more controls in visual studio than compared to Netbeans. Eclipse was quite confusing for a noobie like me wading through it's massive plugins.

I think the only thing java has going for it, is that it's supported on more platforms. Though Mono is making up for the linux and Apple side so i guess it's not that bad. Either way they are both extremely productive environments, just in my humble noobie opninion C# is just slightly more intuitive to pick up.

Upvotes: 2

Kevin
Kevin

Reputation: 639

I'd have to agree with dxmio, I switch back and forth between c# and java quite often. The two languages are quite similar.

Upvotes: 1

Peter Lawrey
Peter Lawrey

Reputation: 533482

I decided to go with C# because it was so easy to just open a form and plop some buttons and text boxes on it.

You can do this using builders in either language without writing any code.

With just one download, C# Express got me going.

Netbeans is the same deal for Java.

From what I saw with Java that couldn’t be done. At least not with out downloading and configuring other software.

True, you cannot develop Java with C# Express and you cannot develop in c~ using Netbeans. You do need to install two pieces of software.

All of which I found no easy instructions for.

I suggest you try http://www.google.co.uk/search?q=netbeans+gui+builder+tutorials 55,100 hits or http://www.google.co.uk/search?q=java+gui+tutorials 1,340,000 hits

But I really wanted to learn Java.

It doesn't appear you want to actually write any code or install more than one program at a time. You will find that learning to program in a language will be asking more from you than this.

Was I missing something?

Quite a bit I imagine.

I really don’t want to have to learn how to create UI’s AND a new language.

You can use a GUI builder to layout your windows, but if you want your program to do something useful, you will have to do some programing in a language.

I’d rather just want to concentrate on the code itself.

That appears to contradict everything you have just said. You can't concentrate on the code without learning the language.

Is there an easy way (like C# basically) to create Java apps?

To write apps that do something useful you are going to have to learn how to program and at least one language. I suggest you also learn how to debug and profile your program.

Upvotes: 0

Ryan Thames
Ryan Thames

Reputation: 3204

Using Netbeans, you can create Java based Swing GUIs pretty easily. Netbeans comes with a pretty nice GUI builder.

If you learn how to program in Java, I don't think it would really be that much of a stretch to create Java Swing applications from scratch. It's just a matter of learning the Swing libraries.

Not being from a .NET background, I can't comment on learning C# GUIs, but from my experience Swing was very easy to learn and it helps A LOT to understand the code underlying what the GUI builder in Netbeans generates.

Upvotes: 0

OscarRyz
OscarRyz

Reputation: 199215

It seems to me the best and easier way to get what you want is to use Netbeans (JDK 6u14 with NetBeans IDE 6.5.1 Bundle).

It has both the JDK and the IDE in one download. And it has a easy and very good GUI builder.

Java is a very good platform and as you said it is easier to create cross platform applications, however, don't except this from the Desktop UI which, although still cross platform, not always gets right on all platforms with out modification.

You would have to add some code specific for each target desktop, but definitely that's a lot easier than write three different application ( One in Visual C#, other in GTK, and other in Cocoa )

Upvotes: 3

z  -
z -

Reputation: 7168

Are you talking about a GUI builder?

There are many GUI builders out there. Some IDEs like Netbeans come with nice GUI builders for Java.

Upvotes: 22

dreadwail
dreadwail

Reputation: 15409

The ability to learn to program in one language or another should most certainly not be based upon how to drag and drop GUI controls, especially since that measure is irrelevant to the language itself.

Side note: Java and C# are so similar that you'll pretty much be learning both as you go regardless.

Upvotes: 1

alt_tab
alt_tab

Reputation: 362

There are options in the Java community for 'one-stop downloads' like you mention. They are out there, they're just not as public as Visual Studio is. EasyEclipse is one of my favorites.

Upvotes: 5

Related Questions