Top Banner
www.faratasystems.com // follow me : twitter.com/gamussa Java and JavaScripT— Shaken, Not Stirred Viktor Gamov Senior Software ENGINEER, Farata Systems Tuesday, September 24, 13
28

JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

May 10, 2015

Download

Technology

Viktor Gamov

There is a perception in the Java community that JavaScript is a second-league interpreted language with the main purpose of making Web pages a little prettier. But JavaScript is a powerful, flexible, dynamically typed language. And today language has been experiencing its a revival driven by the interest in HTML5. Nashorn is a modern JavaScript engine available on JVM, and it’s already included with JDK8 builds. This presentation is about building polyglot application with Java and JavaScript.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

www.faratasystems.com // follow me : twitter.com/gamussa

Java and JavaScripT— Shaken, Not Stirred

Viktor GamovSenior Software ENGINEER, Farata Systems

Tuesday, September 24, 13

Page 2: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Why you’re here

★JavaScript enthusiast

★you're interested in JDK8 features

★You're fan of James Bond series

★you're one of my friends and I asked

you to come...

Tuesday, September 24, 13

Page 3: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Who is talking?

★Software engineer and consultant

★co-author and JUG co-lead

★professional Russian

Tuesday, September 24, 13

Page 4: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Tuesday, September 24, 13

Page 5: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Who is talking?

★Software engineer and consultant

★co-author and JUG co-lead

★professional Russian

★Guy between you and beer

Tuesday, September 24, 13

Page 6: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Tuesday, September 24, 13

Page 7: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Brace yourself, winter is coming

Tuesday, September 24, 13

Page 8: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Tuesday, September 24, 13

Page 9: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

http://enterprisewebbook.com

Coming to the storesWinter of 2014

Tuesday, September 24, 13

Page 10: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Draft available for free

http://enterprisewebbook.com

Tuesday, September 24, 13

Page 11: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Polyglot?

Tuesday, September 24, 13

Page 12: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Everybody knows how to javascript

Tuesday, September 24, 13

Page 13: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

JavaScript, wat?

www.destroyallsoftware.com/talks/wat

Tuesday, September 24, 13

Page 14: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

MANY good Parts

Tuesday, September 24, 13

Page 15: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

SHELL Scripting

Extend app functionality on runtime

1

2

3

JAVASCRIPT on JVM USE cASES

WEB-content generation4

provide extension points for application

Tuesday, September 24, 13

Page 16: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

wait, javascript? it’s only for browsers

Tuesday, September 24, 13

Page 17: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

JAVAScript is everywhere

★v8 and nodejs

★Rhino was here for years

★Here comes nashorn

Tuesday, September 24, 13

Page 18: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

What is Nashorn?

Tuesday, September 24, 13

Page 19: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Ultimate invokedynamic consumer

100% pure Java implementation

100% ECMAScript 5.1 compliant

JavaScript Engine for JVM

What is Nashorn?

100% compiled to bytecode, no interpreter

http://www.1001ausmalbilder.de/ausmalbilder/gross/ausmalbild-nashorn-7.jpgTuesday, September 24, 13

Page 20: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

HOW To USE NASHORN?

★The only API is JSR-223: javax.scripting.*

★Java from JavaScript and vice versa

★Create and manipulate Java/JavaScript objects

★Extend Java classes

★ Implement Java interfaces

Tuesday, September 24, 13

Page 21: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Story one:Curious

support engineer

Tuesday, September 24, 13

Page 22: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Story one:Curious support engineer

Tuesday, September 24, 13

Page 23: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Story two: Family is everything

Tuesday, September 24, 13

Page 24: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Story two: Family is everything

Tuesday, September 24, 13

Page 25: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Story Three: NASHORN for Browser

Tuesday, September 24, 13

Page 26: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Restrictions

★There ARE No browser APIs:

★HTML5 canvas

★HTML5 audio

★WebWorkers

★WebSockets

★WebGL

Tuesday, September 24, 13

Page 27: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

Q&ATuesday, September 24, 13

Page 28: JavaOne 2013: «Java and JavaScript - Shaken, Not Stirred»

THANKS FOR YOUR ATTENTION

www.faratasystems.com // follow me : twitter.com/gamussa

Tuesday, September 24, 13