Sei sulla pagina 1di 60

Getting Started

with
the
NetBeans Platform
Geertjan Wielenga
http://blogs.sun.com/geertjan
Agenda
Goals
1. Generic Desktop Framework
2. Infrastructural Plumbing
3. Collection of Libraries
4. Swing Extensions
5. NetBeans Platform Toolkit
Demo: Porting to NetBeans Platform
Resources

2
Goals
Meet the NetBeans Platform
Understand its problem domain
Get an overview of the main APIs
See a demo
Learn what to do next

3
Agenda
Goals
1. Generic Desktop Framework
2. Infrastructural Plumbing
3. Collection of Libraries
4. Swing Extensions
5. NetBeans Platform Toolkit
Demo: Porting to NetBeans Platform
Resources

4
NetBeans Platform

5
Nuance Voice-XML

6
Fiorano Studio

7
Nokia: Mobile Network

8
Sketsa SVG Editor

9
VisualVM

10
AIOTrade

11
NetBeans IDE

12
JCae-CAD

13
MC4J JMX Console

14
JFugue Music Notepad

15
StudioSL: Oil Flow

16
Agenda
Goals
1. Generic Desktop Framework
2. Infrastructural Plumbing
3. Collection of Libraries
4. Swing Extensions
5. NetBeans Platform Toolkit
Demo: Porting to NetBeans Platform
Resources

17
Maybe this is your code:

18
Maybe this is you:

19
This should be you...

domain
expert
knowledge
20
Application Plumbing
Windowing/docking system
Archictecture
Lifecycle management
Persistence
Data management
Consistent look & feel
Distribution/update mechanism

21
Demo

22
Agenda
Goals
1. Generic Desktop Framework
2. Infrastructural Plumbing
3. Collection of Libraries
4. Swing Extensions
5. NetBeans Platform Toolkit
Demo: Porting to NetBeans Platform
Resources

23
Javadoc

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

25
Ways to get started
Javadoc
Tutorials
Samples
Blog entries

Tip: Use them outside the


NetBeans Platform

26
Agenda
Goals
1. Generic Desktop Framework
2. Infrastructural Plumbing
3. Collection of Libraries
4. Swing Extensions
5. NetBeans Platform Toolkit
Demo: Porting to NetBeans Platform
Resources

27
In addition to...
JLabel
JTextField
JTextArea
JTable
...etc...

28
TreeTableView

29
Visual Widgets

30
More Visual Widgets

31
More Visual Widgets

32
Drop Down Button Factory

33
Tabbed Pane Factory

34
Agenda
Goals
1. Generic Desktop Framework
2. Infrastructural Plumbing
3. Collection of Libraries
4. Swing Extensions
5. NetBeans Platform Toolkit
Demo: Porting to NetBeans Platform
Resources

35
Project wizards

36
NetBeans Platform

37
Outline view

38
Project wizards

39
File wizards

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

41
Configuration

42
Editor

43
While developing...

...enhance the IDE


44
Dependencies

45
Dependencies

46
Contextual menus

47
Contextual menus

48
Samples

49
Agenda
Goals
1. Generic Desktop Framework
2. Infrastructural Plumbing
3. Collection of Libraries
4. Swing Extensions
5. NetBeans Platform Toolkit
Demo: Porting to the NetBeans
Platform
Resources
50
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.

51
Demo

52
Porting Guide

http://platform.netbeans.org/tutorials/60/
nbm-porting-basic.html 53
Agenda
Goals
1. Generic Desktop Framework
2. Infrastructural Plumbing
3. Collection of Libraries
4. Swing Extensions
5. NetBeans Platform Toolkit
Demo: Porting to the NetBeans Platform
Resources

54
Resources

http://www.netbeans.org/kb/articles/books.html

55
56
57
58
References
dev@openide.netbeans.org
users@edu.netbeans.org
http://bits.netbeans.org/dev/
javadoc/index.html
http://platform.netbeans.org
http://wiki.netbeans.org/
NetBeansDeveloperFAQ
http://blogs.sun.com/geertjan
http://plugins.netbeans.org/PluginPortal/
59
Summary
Many on the NetBeans Platform
NetBeans Platform gives plumbing
Many APIs and libraries to help you
NetBeans IDE provides tools
Getting started is easy
Mail list, tutorials, and training course

60

Potrebbero piacerti anche