Reputation: 1301
I'm a newbie as far as Java UI development is concerned. I was initially of the conception that Java UIs can be easily and efficiently developed by Netbeans or any other IDE. However, using an IDE seems to magnify the problem of learning much greater.
I'm posing an open question to all UI developers. What are the skills I should inculcate before I start off? Is my decision to start with basic code instead of an IDE based approach better? I'm done with my back end design and I found it to be a great process but I'm stuck with my UI.
PS- I'm reasonably ok as far as design and implementation of the back end but I don't seem to get any close to even 'OK' in the front end. It would be great if any UI developer could share his funda with me/direct me to it. I don't want to learn it just for this project alone but I really want to learn it well. Please help. Thanks.
Upvotes: 0
Views: 270
Reputation: 5761
Java GUI development can be a tricky beast to master. The layout managers do take some time to understand, and I fully agree with you - the IDE is not the best way to learn about GUI design.
I'd humbly suggest you go through the Swing Trail at http://download.oracle.com/javase/tutorial/uiswing/ to first understand the basic building blocks of GUI design in Java. Only after you understand how everything slots together, try to use the IDE. That way, you will know what you want to do and how you wish to design your GUI, making the IDE a valuable tool.
As with almost everything, it comes down to design - being able to design your GUI on paper before you design it on the computer. You should know if you want a GridBagLayout or a FlowLayout or something else before you hit the IDE.
GUI design is all about practice - I spent a lot of time designing small GUI's until I understood how borders and spacing and padding and spanning make a difference in my GUI's.
It's all about the basics, so go through the Swing tutorial and then revisit the GUI designers in the IDE, they will make a lot more sense then.
If you are using a more modern Java stack, like Java 8 or later, it's worth to check out JavaFX as well - it builds on Swing, using a more modern approach. I'd recommend it to anyone looking to build a modern Java desktop application.
Upvotes: 2
Reputation: 9983
Yes an IDE has a learning curve associated with it. You will find it an invaluable tool nonetheless.
THe IDE payoffs is when you are trying to learn in several ways:
The IDE has built in templates to get you started. If you are doing a Swing application you get to the "Hello World" stage for free.
When you are working on programs, you can get to the java documentation quickly.
THe modern IDEs compile your code in real time -- so you don't waste time with compile cycles that end up in error state.
When doing Swing, Netbeans will generate massive amounts of boilerplate code for you that you would otherwise have to a) learn and b) type by hand. This will really become apparent the first time you try to put a form together. The free-form mode of Netbeans for Swing/AWT form editing is really good.
I can't be more specific now. Good luck.
Upvotes: 1