Over a million developers have joined DZone.

Building Rich Visual Tools in Java

DZone's Guide to

Building Rich Visual Tools in Java

· Java Zone ·
Free Resource

Get the Edge with a Professional Java IDE. 30-day free trial.

Visual tools are key for successful modern software products, since they provide an essential competitive advantage when usability trends are considered. It's simple: if the UI looks nicer to the user, if they can just drag 'n' drop from a predefined set of components to create stuff, and do some cool visualizations to explore some complicated models or data, then your software will be the first choice for most users, even if it doesn't have all the required features under the hood. Also, frameworks and tools that provide good visual UI have a big advantage and usually quicker adoption rate than the others that don't have it. However, creating rich visual tool is usually very time consuming and may require even more effort than creating underlying model and logic.

Luckily for us, Java can make these things much easier and faster by building on top of available open source solutions like NetBeans, Visual Library and Java FX.

The JavaOne session Building Rich Visual Tools in Java gives a brief overview of these, shows some best practice and code from real-world projects that used them, suggests ways to increase productivity and further improve the development practice.

The session includes a brief case study of the development of the new NetBeans UML Plugin, Neuroph Visual Editor, 2-D and 3-D Visualization API for the NetBeans Platform (under development), vmFx and eFX  projects, which are JavaFX RCPs based on NetBeans Platform.
The idea of this session is that, by putting all these available tools and best practices together, we can create an easy-to-use RCP for building custom visual tools, which will be discussed during the session. 

Get the Java IDE that understands code & makes developing enjoyable. Level up your code with IntelliJ IDEA. Download the free trial.


Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}