34
1

- NetBeans JavaOne 2010... · Give me a proper visual JSF editor or else ... David Konecny Principal Member of Technical Staff,

  • Upload
    buinhu

  • View
    217

  • Download
    0

Embed Size (px)

Citation preview

1

<Insert Picture Here>

Give me a proper visual JSF editor or else ...

David KonecnyPrincipal Member of Technical Staff, Oracle

3

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions.The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

4

Questions, questions, questions, ...

• Is visual JSF editor needed ?• Do developers prefer text editor ?• Have tool providers failed ?• Should we blame JSF itself ?• ...

5

and answers could be:

• Is visual JSF editor needed ?• Do developers prefer text editor ?• Have tool providers failed ?• Should we blame JSF itself ?• ...

6

Process

WHYWhy do I ask these questions?

HOWHow did I find answers?

WHATWhat are my answers?

ANDAnd what can I do with them?

7

Why do I ask these questions?

JSF 2.0 – Facelets, Annotations, Ajax, Navigation, GET, Composite Components, Scopes, ...

Java EE 6

Technical Lead of EE support

Supports full EE 6 stack

8

Why JSF?

• > 70 votes!• “... is great, it must be improved and continued ...”• “I would not mind to pay ...”• “... the most important thing for corporate users ...”• “... was one of the best features of NetBeans ...”• “Lets hope and pray that this absurd decision ...”

VWP == Visual Web Pack aka Java Studio Creator

9

QUESTION #1

So do we need a visual JSF editor?

10

What is JSF good for?

• migration of application data to and from the UI• UI from a set of reusable UI components• custom UI components

11

JSF versus Rendered Output

12

Who is using JSF?

• Developer versus Designer• Developer's evolution• OS Look and Feel dogma• Different roles have different needs

13

Developer Role – what is important?

• Data bindings• Conversions• Validations• Error messages• Localization• Navigation

14

Developer Role – what is NOT important?

• Layout• Components• Colors, fonts, styles

15

WYSIWYG? No, thank you.

• Wrong role focus• Missing HTML render• Imprecise code

16

Q.1: So do we need a visual JSF editor?

– JSF applications are data driven– JSF language is designed for tooling– Visual editor improves productivity– Number of visual editor addicts

YES !

17

QUESTION #2

Have tool providers failed ??

18

Tools – Visual Web Pack

• Timing• Scope

19

Tools – Visual Web Pack (Cont) - sloccount()

• Total Physical Source Lines of Code = 450,000• Development Effort Estimate (Person-Years) = 120• Schedule Estimate (Years) = 3.3• Estimated Average Number of Developers = 37• Total Estimated Cost to Develop = $ 16,523,003

20

Tools – Visual Web Pack (Cont)

• Absolute Layout• Woodstock + ICEFaces• Database integration

21

Observation #1: Rich component metadata

• JSR-276 JSF Component Metadata • JSF 2.0 Composite Components

<x:foo/>

Can I have children?Do I have parents?

What do I render?

Which component family is mine?

What about my facets?

22

Observation #2: Component Rendering

• Arbitrary output of component renderer• JSR-276 JSF Component Metadata • Missing Java native HTML renderer

23

Observation #3: Layout Component Rendering

• Mapping source to output• javax.faces.context.ResponseWriter

24

Observation #4: Layout Component vs Drag'n'Drop

• Description of drop areas• Description of drag handles

drop areas

has 13

25

Observation #5: Layout Options

• HTML/CSS based layout• Absolute Layout• h:panelGrid, af:panelFormLayout

26

Matisse parallel

• Matisse = Swing GUI designer for Group layout• Good tool + Good layout manager• 70-80% satisfaction threshold

27

Other tools

• JDeveloper (JSF/ADF)• MS Dev Studio (ASP)• Window Builder (GWT)• MS Dev Studio (SilverLight)

28

Q.2: Have tool providers failed ??

– Tools tried their best– Missing HTML renderer– Hindered by JSF issues– Missing layout abstraction

No, not really.

29

Q.3: Should we blame JSF itself ??

– Lack of support for design time editing– JSR-276 JSF takes too long– JSR 273 (Design-Time API for JavaBeans) dropped

Well ...

in part.

30

Q.4: Should we blame component providers ??

– Dependence on tools

Well ...

not really.

31

and my answers are:

• Is visual JSF editor needed ?• Do developers prefer text editor ?• Have tool providers failed ?• Should we blame JSF itself ?

32

Summary: JSF does need a visual editor

JSF Tools Providers

Any component works Layout abstraction WYSIWYN(what you see is what you need)

• To achieve that following needs to be done:

33

Practical experience from implementing the new generation visual JSF editor for NetBeans IDE

34

More questions?