Using NetBeans IDE for Desktop Development. Geertjan Wielenga http://blogs.sun.com/geertjan

Similar documents
Real World Technologies: NetBeans GUI Builder, JRuby, JavaFX, and Java ME. developers.sun.com/students/courses

Cours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé.

Java SE 6 Update 10. la piattaforma Java per le RIA. Corrado De Bari. Sun Microsystems Italia Spa. Software & Java Ambassador

Java ME & NetBeans Mobility. Petr Suchomel Architect, NetBeans Mobility Sun Microsystems

Netbeans 6.0. José Maria Silveira Neto. Sun Campus Ambassador

Java is commonly used for deploying applications across a network. Compiled Java code

Design. in NetBeans 6.0


Extending Desktop Applications to the Web

Tutorial: Time Of Day Part 2 GUI Design in NetBeans

The Oracle Fusion Development Platform

NetBeans Platform for Beginners

Practical Android Projects Lucas Jordan Pieter Greyling

Eclipse 4 RCP application Development COURSE OUTLINE

Karsten Lentzsch JGoodies SWING WITH STYLE

ArcGIS Viewer for Silverlight An Introduction

5.17 GUI. Xiaoyi Jiang Informatik I Grundlagen der Programmierung

CS 335 Lecture 06 Java Programming GUI and Swing

NetBeans: Universal Tool for Java Development and More. Roman Štrobl Technology Evangelist

Nexawebホワイトペーパー. Developing with Nexaweb ~ Nexaweb to Improve Development Productivity and Maintainability

Coding for Desktop and Mobile with HTML5 and Java EE 7

What Is NetBeans? Free and open-source based > Open source since June, 2000 > Large community of users and developers

Eclipse with Mac OSX Getting Started Selecting Your Workspace. Creating a Project.

INTRODUCTION TO COMPUTER PROGRAMMING. Richard Pierse. Class 7: Object-Oriented Programming. Introduction

Project Builder for Java. (Legacy)

Ruby on Rails in GlassFish Sun Microsystems

Swing. A Quick Tutorial on Programming Swing Applications

Java with Eclipse: Setup & Getting Started

Eclipse Web Tools Platform. Naci Dai (Eteration), WTP JST Lead

1z0-102 Q&A. DEMO Version

An Overview of Java. overview-1

UML PROFILING AND DSL

Build your own Fiori hybrid mobile app rapidly using SAP Web IDE Marc Anderegg, SAP SESSION CODE: BT404

Essentials of the Java(TM) Programming Language, Part 1

A Modular Approach to Teaching Mobile APPS Development

Getting Started with Telerik Data Access. Contents

Crystal Reports for Eclipse

Hello World RESTful web service tutorial

Graphical User Interfaces

1Z Oracle Weblogic Server 11g: System Administration I. Version: Demo. Page <<1/7>>

Building and Using Web Services With JDeveloper 11g

design coding monitoring deployment Java Web Framework for the Efficient Development of Enterprise Web Applications

Java Debugging Ľuboš Koščo

The Abstract Windowing Toolkit. Java Foundation Classes. Swing. In April 1997, JavaSoft announced the Java Foundation Classes (JFC).

Demo: Controlling.NET Windows Forms from a Java Application. Version 7.3

Oracle EXAM - 1Z Oracle Weblogic Server 11g: System Administration I. Buy Full Product.

Development. with NetBeans 5.0. A Quick Start in Basic Web and Struts Applications. Geertjan Wielenga

Designing and Developing Web Applications by using the Microsoft.NET Framework

Introduction to the NetBeans Platform

Dashboard Overview. Bernd Schneider. Technical Solution Professional BI Microsoft Switzerland

Java Software Development Kit (JDK 5.0 Update 14) Installation Step by Step Instructions

e(fx)clipse - JavaFX Tooling and Runtime

Beginning BlackBerry 7

Flexible Virtuemart 2 Template CleanMart (for VM2.0.x only) TUTORIAL. INSTALLATION CleanMart VM 2 Template (in 3 steps):

Production time profiling On-Demand with Java Flight Recorder

WebLogic Server: Installation and Configuration

BogDan Vatra and Andy Gryc. Qt on Android: Is it right for you?

GETTING STARTED WITH DRUPAL. by Stephen Cross

<Insert Picture Here> Betting Big on JavaServer Faces: Components, Tools, and Tricks

Debugging Java Applications

NotePad No More: - A Personal Survey of HTML5 Developer Toolsets. Stewart Christie - Tizen and HTML5 Community Manager.

Study of Development of Java Applications in Eclipse Environment and Development of Java Based Calendar Application with Notifications

NetBeans IDE Field Guide

Essentials of the Java Programming Language

Advanced Network Programming Lab using Java. Angelos Stavrou

Server-side OSGi with Apache Sling. Felix Meschberger Day Management AG 124

Web Development with the Eclipse Platform

Cloud Attached Storage

How to use the Eclipse IDE for Java Application Development

Introduction to JavaFX. Tecniche di Programmazione A.A. 2012/2013

WEB& WEBSITE DESIGN TRAINING

WebSphere Training Outline

Software Development Kit

WebLogic Server Administration

Building a Python Plugin

Extreme Java G Session 3 Main Theme Java Core Technologies (Part I) Dr. Jean-Claude Franchitti

Project SailFin: Building and Hosting Your Own Communication Server.

How to Develop Accessible Linux Applications

Tutorial 5: Developing Java applications

EMC Documentum Composer

ORACLE BUSINESS INTELLIGENCE WORKSHOP

Tutorial Reference Manual. Java WireFusion 4.1

JDK 1.5 Updates for Introduction to Java Programming with SUN ONE Studio 4

2. Click the download button for your operating system (Windows, Mac, or Linux).

SiteBuilder E-Shop User Guide

Oracle Exam 1z0-102 Oracle Weblogic Server 11g: System Administration I Version: 9.0 [ Total Questions: 111 ]

Microsoft Project 2010 builds on the Microsoft Project 2007 foundation with flexible work management solutions and the right collaboration tools for

City of Dublin Education & Training Board. Programme Module for. Mobile Technologies. leading to. Level 6 FETAC. Mobile Technologies 6N0734

IBM Rational Web Developer for WebSphere Software Version 6.0

Database Forms and Reports Tutorial

WEBLOGIC ADMINISTRATION

Write. Once. Deploy. Anywhere. Anatole Wilson. Writing Applications for mobile devices and reducing device fragmentation with NetBeans Mobility Pack

JMulTi/JStatCom - A Data Analysis Toolkit for End-users and Developers

Android Programming: Installation, Setup, and Getting Started

Transcription:

Using NetBeans IDE for Desktop Development Geertjan Wielenga http://blogs.sun.com/geertjan

Agenda Goals Design: Matisse GUI Builder Medium Applications: JSR-296 Tooling Large Applications: NetBeans Platform Conclusion 2

Goals Show that NetBeans IDE is the one-stop shop for all Swing desktop needs Ready out of the box, for applications of all sizes: Demo 1: Matisse GUI Builder Demo 2: Tooling for JSR-296 Demo 3: NetBeans Platform 3

Agenda Goals Design: Matisse GUI Builder Medium Applications: JSR-296 Tooling Large Applications: NetBeans Platform Conclusion 4

GroupLayout Part of JDK 6 Principles: Independent dimensions Hierarchical groups Designed to suit GUI Builder needs 5

Matisse GUI Builder Professional quality layout easily done Intuitive drag & drop interface Guidelines Resize, align, optimal spacing Automatically resizes when localized 6

Demo 7

Agenda Goals Design: Matisse GUI Builder Medium Applications: JSR-296 Tooling Large Applications: NetBeans Platform Conclusion 8

Motivation for JSR-296 public static void main(string args[]) { // good luck! } 9

JSR-296 Features Lifecycle support Resources Actions Tasks Session state 10

Lifecycle Support (On your own) import javax.swing.*; public class HelloWorldSwing { public static void main(string[] args) { JFrame frame = new JFrame("HelloWorldSwing"); final JLabel label = new JLabel("Hello World"); frame.getcontentpane().add(label); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.pack(); frame.setvisible(true); } } 11

Lifecycle Support (With JSR-296) public class MyApp extends SingleFrameApplication { @Override protected void startup() { JLabel label = new JLabel("Hello World"); show(label); } public static void main(string[] args) { Application.launch(MyApp.class, args); } } 12

Demo of JSR-296 Show all the other JSR-296 features in action. Integrate Flickr into a Swing desktop application based on JSR-296 using NetBeans tooling. 13

Agenda Goals Design: Matisse GUI Builder Medium Applications: JSR-296 Tooling Large Applications: NetBeans Platform Conclusion 14

NetBeans Platform What is it? 1. Generic Desktop Framework 2.Infrastructural Plumbing 3.Collection of Libraries 4.NetBeans Platform Toolkit 15

Agenda Goals 1. Generic Desktop Framework 2. Infrastructural Plumbing 3. Collection of Libraries 4. NetBeans Platform Toolkit 16

NetBeans Platform 17

Nuance Voice-XML 18

Fiorano Studio 19

Nokia: Mobile Network 20

Sketsa SVG Editor 21

VisualVM 22

AIOTrade 23

NetBeans IDE 24

JCae-CAD 25

MC4J JMX Console 26

JFugue Music Notepad 27

StudioSL: Oil Flow 28

Agenda Goals 1. Generic Desktop Framework 2. Infrastructural Plumbing 3. Collection of Libraries 4. NetBeans Platform Toolkit 29

Maybe this is your code: 30

Maybe this is you: 31

This should be you... domain expert knowledge 32

Application Plumbing Windowing/docking system Archictecture Lifecycle management Persistence Data management Consistent look & feel Distribution/update mechanism 33

Demo 34

Agenda Goals 1. Generic Desktop Framework 2. Infrastructural Plumbing 3. Collection of Libraries 4. NetBeans Platform Toolkit 35

Javadoc 36

Libraries Window System API Actions API Options Window API Many Editor APIs Visual Library API...and many more 37

Ways to get started Javadoc Tutorials Samples Blog entries Tip: Use them outside the NetBeans Platform 38

Agenda Goals 1. Generic Desktop Framework 2. Infrastructural Plumbing 3. Collection of Libraries 4. NetBeans Platform Toolkit 39

Project wizards 40

NetBeans Platform 41

Outline view 42

Project wizards 43

File wizards 44

File wizards Actions API Datasystems API Module Install class Options Dialog API TopComponent class Wizard Descriptor class 45

Configuration 46

Editor 47

While developing......enhance the IDE 48

Dependencies 49

Dependencies 50

Contextual menus 51

Contextual menus 52

Samples 53

Demo: Porting 54

Porting Demo Outline 1. Start with a simple application. 2. Compare what it is to what the NetBeans Platform has. 3. Create a new plugin project. 4. Move the useful parts of our old application to our new plugin. 5. Run it. 55

Porting Guide http://platform.netbeans.org/tutorials/60/ nbm-porting-basic.html 56

Agenda Goals Design: Matisse GUI Builder Medium Applications: JSR-296 Tooling Large Applications: NetBeans Platform Conclusion 57

Resources http://weblogs.java.net/blog/tpavek 58

Conclusion Ready out of the box, for applications of all sizes: Demo 1: Matisse GUI Builder Demo 2: Tooling for JSR-296 Demo 3: NetBeans Platform Showed that NetBeans IDE is the one- stop shop for all Swing desktop needs 59