Busy developer-html5-javaee7

40
1

Transcript of Busy developer-html5-javaee7

Page 1: Busy developer-html5-javaee7

1

Page 2: Busy developer-html5-javaee7

2

Busy Developer's Guide to Quickly Integrating HTML5 with Java EE 7 (Java EE and HTML5, the best of both worlds!)

Page 3: Busy developer-html5-javaee7

3

Me

Twitter: @geertjanw

Facebook: www.facebook.com/geertjanw

E-Mail: [email protected]

Page 4: Busy developer-html5-javaee7

4

Free Tool Box

HTML

JavaScript

CSS

Java EE

NetBeans

Page 5: Busy developer-html5-javaee7

5

What is NetBeans?

Ready to use out of the box

Support for latest Java

specifications & standards

Support for HTML,

JavaScript, and CSS

Intuitive workflow

Debugger, Profiler,

Editing & Refactoring Tools

Binaries and ZIPs for Mac OS,

Linux, and Windows

Simply download and run on any operating system!

Increase Developer Productivity

Page 6: Busy developer-html5-javaee7

6

What is NetBeans?

Works out of the box

Freely available

Open source

Support for Java standards &

other popular platforms, such as HTML5

Deeply integrated Maven support

Extensible Java desktop framework

Powerful, award winning GUI Builder

Profiling and debugging tools

Customizable and extensible

Increase Developer Productivity

Page 7: Busy developer-html5-javaee7

7

HTML5 Platform

Page 8: Busy developer-html5-javaee7

8

HTML5 Platform

<video> <audio> <canvas>

Page 9: Busy developer-html5-javaee7

9

HTML5 Platform

<video> <audio> <canvas>

CSS3 animations transformations

Page 10: Busy developer-html5-javaee7

10

HTML5 Platform

<video> <audio> <canvas>

CSS3 animations transformations

Backbone.js Knockout Ext JS Angular JS …

Page 11: Busy developer-html5-javaee7

11

HTML5 Platform

<video> <audio> <canvas>

CSS3 animations transformations

Backbone.js Knockout Ext JS Angular JS …

Preprocessors - SASS, LESS - Emmet - CoffeeScript - Dart

Page 12: Busy developer-html5-javaee7

12

HTML5 Platform

<video> <audio> <canvas>

CSS3 animations transformations

Backbone.js Knockout Ext JS Angular JS …

Preprocessors - SASS, LESS - Emmet - CoffeeScript - Dart

Mobile - Android - iOS

Page 13: Busy developer-html5-javaee7

13

HTML5 Platform

<video> <audio> <canvas>

CSS3 animations transformations

Backbone.js Knockout Ext JS Angular JS …

Preprocessors - SASS, LESS - Emmet - CoffeeScript - Dart

Mobile - Android - iOS

Hybrid - PhoneGap - Cordova

Page 14: Busy developer-html5-javaee7

14

HTML5 Tools

Integration between

IDE and Chrome browser

Editors for HTML5, JavaScript, CSS3

JavaScript debugger

Visual CSS editing

SASS and LESS CSS preprocessing

Cordova mobile device development

Page 15: Busy developer-html5-javaee7

15

JavaScript Editor

Early JDK 8 build Nashorn JavaScript Engine for parsing

Out of the box support:

– jQuery

– JSON

– Knockout

– Ext Js

– AngularJS

– JsDoc

– ExtDoc

– ScriptDoc

Page 16: Busy developer-html5-javaee7

16

JavaScript Debugger

HTML5 applications are

automatically deployed

in debug mode

Set breakpoints in JavaScript file,

on Line, DOM, Event,

or XMLHTTPRequest

Refresh the browser and

immediately step through code

Use Debugger windows to monitor

watches, threads, and breakpoints

Page 17: Busy developer-html5-javaee7

17

CSS Editing

Click in browser

and see CSS styles and rules in IDE

Changes saved in Chrome Developer Tools

are saved in files in IDE

CSS styling: box model

styling of hover-based effects

Changes in CSS Editor

immediately reflected in browser

Page 18: Busy developer-html5-javaee7

18

SASS and LESS Preprocessing

Syntax coloring, indentation, reformatting,

code folding, file templates

Go to declaration, mark occurrences,

instant rename, code completion

Live reload on change

Debugging information is displayed

Page 19: Busy developer-html5-javaee7

19

Easy Mobile & Web Deployment

Tight integration with

– Chrome

– Embedded WebKit Browser

– iOS (Safari)

– Android (Chrome)

Also support for

Internet Explorer, FireFox,

Safari, Android default browser

Page 20: Busy developer-html5-javaee7

20

Cordova Mobile Device Support

Cordova integration

for hybrid development

Build native Android

and iOS packages

– Register or generate

required files for

Android and iOS

– Register Android SDK

and iOS SDK

Helpful samples

and templates

Page 21: Busy developer-html5-javaee7

21

Demo

Page 22: Busy developer-html5-javaee7

22

Java EE Platform

Page 23: Busy developer-html5-javaee7

23

Java EE

Simplicity

Productivity

Specifications

Convention over configuration

Page 24: Busy developer-html5-javaee7

24

Java EE

Page 25: Busy developer-html5-javaee7

25

Java EE Platform Out of the Box Java EE Support

Page 26: Busy developer-html5-javaee7

26

Java EE Platform for HTML5

JSON Processing

WebSocket

Concurrency

Batch

RESTful Web Services

Page 27: Busy developer-html5-javaee7

27

Java EE Platform for HTML5

JSON-P. JSON is a text-based data exchange format

derived from JavaScript that is used in web services and

other connected applications.

The Java API for JSON Processing (JSON-P) enables

Java EE applications to parse, transform, and query JSON

data using the object model or the streaming model.

Page 28: Busy developer-html5-javaee7

28

Java EE Platform for HTML5

WebSocket. WebSocket is an application protocol that

provides full-duplex communications between two peers

over TCP.

The Java API for WebSocket enables Java EE applications

to create endpoints using annotations that specify the

configuration parameters of the endpoint and designate its

lifecycle callback methods.

Page 29: Busy developer-html5-javaee7

29

Java EE Platform for HTML5

Concurrency. The Concurrency Utilities for Java EE is a

standard API that enables asynchronous capabilities to

Java EE applications through the following types of

objects: managed executor service, managed scheduled

executor service, managed thread factory, and context

service.

Page 30: Busy developer-html5-javaee7

30

Java EE Platform for HTML5

Batch. The Batch Applications for the Java Platform

specification is a batch framework that enables support for

creating and running batch jobs in Java applications.

The batch framework consists of a batch runtime, a job

specification language based on XML, a Java API to

interact with the batch runtime, and a Java API to

implement batch artifacts.

Page 31: Busy developer-html5-javaee7

31

Java EE Platform for HTML5

RESTful Web Services. The Java API for RESTful Web

Services (JAX-RS) defines an API that enables the

development of web services built according to the

Representational State Transfer (REST) architectural style.

A JAX-RS application is a web application that consists of

classes packaged as a servlet in a WAR file along with

required libraries.

Page 32: Busy developer-html5-javaee7

32

NetBeans and Java

Java Editor is

NetBeans IDE’s

central feature

Developed in

close co-operation

with Oracle Java SE Team

First editor to

support Java technologies,

e.g., JDK, Java EE, JavaFX

“javac” is our parser,

all language features

are always in sync

with Java

Page 33: Busy developer-html5-javaee7

33

NetBeans and Java

Much More Than Creating, Editing, Refactoring

Building

– Maven and Ant, community Gradle plugin

Debugger and Profiler

Versioning

– Git, Mercurial, and Subversion

Testing and Code Analysis

– Junit and TestNG

– Static code analysis, e.g., FindBugs

Continuous Build Servers

Bug Tracking

– JIRA, Bugzilla

At Liquid Robotics, our use of NetBeans

IDE is all about integration. There's the

seamless integration of development

tools and Java technologies within

NetBeans IDE, but it's also very good at

integrating external features, for

example, Jenkins, which we use for our

build server, Git (via GitBlit), which is

our source code repository, JIRA for

bug tracking, Maven for running builds,

and Artifactory for maintaining the

artifacts created from the builds.

“Father of Java”

James Gosling

CTO, Liquid Robotics

Page 34: Busy developer-html5-javaee7

34

NetBeans and Java EE

Developed in close co-operation

with GlassFish and WebLogic teams

Best in breed GlassFish integration,

strong support for WebLogic

and other servers

First day support for standards,

e.g., Java EE 6 and Java EE 7

No plugins needed

Ready to use out of the box

Page 35: Busy developer-html5-javaee7

35

Java EE, HTML5, and NetBeans

Easy to use HTML5 features

in Java EE applications

Features:

– JavaScript Library Manager

– JavaScript Editor and Debugger

– CSS preprocessors

– Visual CSS Editor

– Integration between IDE

and Chrome browser

– Deployment to mobile devices

– Project samples

Page 36: Busy developer-html5-javaee7

36

Demo

Page 37: Busy developer-html5-javaee7

37

Summary

Page 38: Busy developer-html5-javaee7

38

Free Tool Box

HTML

JavaScript

CSS

Java EE

NetBeans

Page 39: Busy developer-html5-javaee7

39

Me

Twitter: @geertjanw

Facebook: www.facebook.com/geertjanw

E-Mail: [email protected]

Page 40: Busy developer-html5-javaee7

40