netbeans: universal tool for java development and moreegjug.org/files/roman_strobl_netbeans.pdf ·...

32
NetBeans: Universal Tool for Java Development and More Roman Štrobl Technology Evangelist [email protected] http://blogs.sun.com/roumen

Upload: lyquynh

Post on 02-Feb-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

NetBeans: Universal Tool for Java Development and More

Roman ŠtroblTechnology Evangelist

[email protected]://blogs.sun.com/roumen

Page 2: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Agenda

• What is NetBeans?• New features in NetBeans 5.5• Developer productivity• Demos of NetBeans 5.5• What's coming next?• Conclusion

Page 3: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

What Is NetBeans?

1. IDE - Integrated Development Environment

Page 4: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

T-Shirt Question...

NetBeans is more than just an IDE.Question: What else is NetBeans?

Page 5: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

What Is NetBeans?

2. Swing-based Platform

Page 6: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

What Is NetBeans?

3. Growing Open Source Community

Page 7: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

NetBeans – Not Only Java

Position Language Percentage Trend Support in NetBeans1 Java 19.16% = Yes2 C 15.80% = Yes3 C++ 10.40% = Yes4 (Visual) Basic 9.10% + No :)5 PHP 7.90% -- Next version6 Perl 6.20% = No7 C# 3.52% = No :)8 Python 3.50% = Jython9 JavaScript 2.80% + Plug-in

10 Ruby 2.50% 11x + Next version

Source: http://www.tiobe.com/tpci.htm

Page 8: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Project Plethora

Where does this project come from?

Page 9: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

T-Shirt Question...

Where did I get this photo?

Page 10: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Agenda

• What is NetBeans?• New features in NetBeans 5.5• Developer productivity• Demos of NetBeans 5.5• What's coming next?• Conclusion

Page 11: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

New Features in NetBeans 5.5 (1)

• Full support for Java EE 5> EJB 3.0> JAX-WS 2.0> Java Persistence API> JavaServer Faces 1.2> Blueprints

• Works “out of the box”> Tomcat bundled by default> Glassfish bundle> JBoss bundle

Page 12: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

New Features in NetBeans 5.5 (2)

• Add-on packs:> Mobility Pack – CDC, CLDC> Profiler – solves performance issues> Enterprise PackNEW! – SOA tools> C/C++ PackNEW! – native development> Visual Web PackNEW! – visual JSF

• Improvements in GUI Builder• Subversion support• More plug-in dev. wizards

Page 13: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

T-Shirt Question...

How many downloads does NetBeans have?

Page 14: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Agenda

• What is NetBeans?• New features in NetBeans 5.5• Developer productivity• Demos of NetBeans 5.5• What's coming next?• Conclusion

Page 15: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Developer Productivity

• Java is a great language and platform• But it is not always productive enough• Two examples:> Development with J2EE 1.4> Building GUIs with Swing

• Good news:> The platform is improving> The tools are improving, too

Page 16: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

NetBeans in Wroclaw

Example: J2EE 1.4 Web Service<?xml version='1.0' encoding='UTF-8' ?><webservices xmlns='http://java.sun.com/xml/ns/j2ee' version='1.1'> <webservice-description> <webservice-description-name> HelloService</webservice-description-name> <wsdl-file> WEB-INF/wsdl/HelloService.wsdl</wsdl-file> <jaxrpc-mapping-file> WEB-INF/HelloService-mapping.xml </jaxrpc-mapping-file> <port-component xmlns:wsdl-port_ns='urn:HelloService/wsdl'> <port-component-name>HelloService</port-component-name> <wsdl-port>wsdl-port_ns:HelloServiceSEIPort</wsdl-port> <service-endpoint-interface> endpoint.HelloServiceSEI</service-endpoint-interface> <service-impl-bean> <servlet-link>WSServlet_HelloService</servlet-link> </service-impl-bean> </port-component> </webservice-description></webservices>

<?xml version='1.0' encoding='UTF-8' ?><configuration xmlns='http://java.sun.com/xml/ns/jax-rpc/ri/config'> <service name='HelloService' targetNamespace='urn:HelloService/wsdl' typeNamespace='urn:HelloService/types' packageName='endpoint'> <interface name='endpoint.HelloServiceSEI' servantName='endpoint.HelloServiceImpl'> </interface> </service></configuration>

package endpoint;

import java.rmi.*;

public class HelloServiceImplimplements HelloServiceSEI {

public String sayHello(String param)throws java.rmi.RemoteException {return “Hello “ + param;

}}

package endpoint;

import java.rmi.*;

public interface HelloServiceSEIextends java.rmi.Remote {

public String sayHello(String param)throws java.rmi.RemoteException;

}

Page 17: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

NetBeans in Wroclaw

Example: Java EE 5 Web Service

package endpoint;

import javax.jws.WebService;

@WebServicepublic class Hello {

public String sayHello(String param) {return “Hello “ + param;

}}

Page 18: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Swing Example

• Question: What's wrong with this GUI?

Page 19: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Swing Example: Solution

• Little details matter!

Page 20: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Agenda

• What is NetBeans?• New features in NetBeans 5.5• Developer productivity• Demos of NetBeans 5.5• What's coming next?• Conclusion

Page 21: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Demo: JAX-WS 2.0 Service

• Backend with a Web Service interface> A simple calculator

• Three clients:1. Web client2. Mobile client3. Swing client

Page 22: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Demo: Visual Web Pack

• Backend with a Web Service interface> A simple calculator DONE

• Three clients:1. Web client2. Mobile client3. Swing client

Page 23: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Demo: Mobility Pack

• Backend with a Web Service interface> A simple calculator DONE

• Three clients:1. Web client DONE2. Mobile client3. Swing client

Page 24: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Demo: NetBeans GUI Builder

• Backend with a Web Service interface> A simple calculator DONE

• Three clients:1. Web client DONE2. Mobile client DONE3. Swing client

Page 25: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Demo: Summary

• Backend with a Web Service interface> A simple calculator DONE

• Three clients:1. Web client DONE2. Mobile client DONE3. Swing client DONE

NetBeans: a universal end-to-end tool

Page 26: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Agenda

• What is NetBeans?• New features in NetBeans 5.5• Developer productivity• Demos of NetBeans 5.5• What's coming next?• Conclusion

Page 27: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Future of NetBeans

• NetBeans 5.5.1 – April> Support for Sun AS 9.1 = Glassfish v.2> SOA updates

• NetBeans 6 – preview in May> Milestone 6 available now> Complete redesign of editor> Databinding for Swing> Scripting support (Ruby, PHP)> More frameworks & application servers

Page 28: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

DEMOSwing Databinding

Page 29: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Agenda

• What is NetBeans?• New features in NetBeans 5.5• Developer productivity• Demos of NetBeans 5.5• What's coming next?• Conclusion

Page 30: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Conclusion

• NetBeans is:> A Java IDE (and more)> A Swing-based platform> A growing open source community

• It is open source and free!• NetBeans can make you more productive• Get NetBeans from http://netbeans.org/

Page 31: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Cairo 2007

Questions & Answers

Page 32: NetBeans: Universal Tool for Java Development and Moreegjug.org/files/Roman_Strobl_NetBeans.pdf · NetBeans: Universal Tool for Java Development and More ... 5 PHP 7.90% -- Next version

Thank You!

Roman ŠtroblTechnology Evangelist

[email protected]://blogs.sun.com/roumen