Productive Desktop 
Development with NetBeans IDE

Geertjan Wielenga, NetBeans Team

                                   1
Goal of the Talk 
 Learn about:
 ●   Swing UI Design with NetBeans IDE
 ●   Swing Frameworks with NetBeans IDE
       - Swing Application Framework
       - NetBeans Platform
 ●   Swing Scripting with NetBeans IDE
       - Groovy
       - JavaFX


                                          2
Swing UI Design with NetBeans IDE
• “Matisse” GUI Builder




                                    3
Problem Statement
• Creating/Designing Swing UI is hard
• Swing LayoutManagers are difficult to use
• Consistency of layouts is difficult




                                              4
Problem Statement
• Creating/Designing Swing UI is hard
• Swing LayoutManagers are difficult to use
• Consistency of layouts is difficult

Solution
• Drag & Drop / Point & Click
• Remove the need to interact with LayoutManager
• Resize, Align, Automatic Growth of components
• Free!

                                                   5
Demo!




        6
Swing 
Frameworks 
(Part 1)




              7
Problem Statement
• Applications become larger
• Typical parts are created over & over again
• Need to work quickly & efficiently




                                                8
Problem Statement
• Applications become larger
• Typical parts are created over & over again
• Need to work quickly & efficiently

Solution
• Action system
• Task system
• Resource system
• Some other services

                                                9
Demo!




        10
Swing 
Frameworks 
(Part 2)




              11
Problem Statement
• Applications become even larger!
• Teams become distributed
• Updates/Exclusions needed between releases




                                               12
Problem Statement
• Applications become even larger!
• Teams become distributed
• Updates/Exclusions needed between releases

Solution
• Modularity
• Window system
• Pluggability
• Many other services

                                               13
Demo!




        14
Groovy
• Many tasks in Java are overly complex
  > File processing
  > XML processing
  > Web service handling

• Scripting languages don't integrate well with 
 Java
  > Ruby
  > Python

• Groovy does both of the above!



                                                   15
Demo!




        16
JavaFX
• New & Hot
• Aim: Rapid GUI development
• Declarative language
• Focused on: Animation, Graphic, Media, Effect
• Special scripting language: Integrates Java
• Cool features: data binding, media
• Tooling: NetBeans IDE & Eclipse
• Currently supported on: Windows & Mac

                                                  17
18
19
JavaFX




         20
Demo!




        21
Learning about JavaFX
• Samples
• Tutorials
• Books




                        22
Documentation
• Learning Trails & Tutorials for All Technologies
  > Java SE
  > Java EE
  > Java ME
  > Ruby
  > PHP
  > JavaFX
  > NetBeans Platform
  > ...
  > ...

• Free NetBeans Platform Training Course!
                                                     23
Also...
• Java ME




            24
Summary : NetBeans IDE
• Free
• Award winning IDE
• Great for Swing UI prototyping & design
• Great for building advanced applications
  > Swing Application Framework
  > NetBeans Platform

• Great for JavaFX Script Language
• Includes many features – all for Free!
• Many 3rd party plugins are also available

                                              25
References 
• http://www.netbeans.org/
• http://platform.netbeans.org


• http://netbeans.dzone.com
• http://blogs.sun.com/geertjan


• nbusers@netbeans.org
• dev@openide.netbeans.org
• geertjan.wielenga@sun.com

                                  26

Desktop Intro