Slide 1

Slide 1 text

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

Slide 2

Slide 2 text

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

Slide 3

Slide 3 text

Who is talking? ★Software engineer and consultant ★co-author and JUG co-lead ★professional Russian Tuesday, September 24, 13

Slide 4

Slide 4 text

Tuesday, September 24, 13

Slide 5

Slide 5 text

Who is talking? ★Software engineer and consultant ★co-author and JUG co-lead ★professional Russian ★Guy between you and beer Tuesday, September 24, 13

Slide 6

Slide 6 text

Tuesday, September 24, 13

Slide 7

Slide 7 text

Brace yourself, winter is coming Tuesday, September 24, 13

Slide 8

Slide 8 text

Tuesday, September 24, 13

Slide 9

Slide 9 text

http://enterprisewebbook.com Coming to the stores Winter of 2014 Tuesday, September 24, 13

Slide 10

Slide 10 text

Draft available for free http://enterprisewebbook.com Tuesday, September 24, 13

Slide 11

Slide 11 text

Polyglot? Tuesday, September 24, 13

Slide 12

Slide 12 text

Everybody knows how to javascript Tuesday, September 24, 13

Slide 13

Slide 13 text

JavaScript, wat? www.destroyallsoftware.com/talks/wat Tuesday, September 24, 13

Slide 14

Slide 14 text

MANY good Parts Tuesday, September 24, 13

Slide 15

Slide 15 text

SHELL Scripting Extend app functionality on runtime 1 2 3 JAVASCRIPT on JVM USE cASES WEB-content generation 4 provide extension points for application Tuesday, September 24, 13

Slide 16

Slide 16 text

wait, javascript? it’s only for browsers Tuesday, September 24, 13

Slide 17

Slide 17 text

JAVAScript is everywhere ★v8 and nodejs ★Rhino was here for years ★Here comes nashorn Tuesday, September 24, 13

Slide 18

Slide 18 text

What is Nashorn? Tuesday, September 24, 13

Slide 19

Slide 19 text

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.jpg Tuesday, September 24, 13

Slide 20

Slide 20 text

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

Slide 21

Slide 21 text

Story one: Curious support engineer Tuesday, September 24, 13

Slide 22

Slide 22 text

Story one: Curious support engineer Tuesday, September 24, 13

Slide 23

Slide 23 text

Story two: Family is everything Tuesday, September 24, 13

Slide 24

Slide 24 text

Story two: Family is everything Tuesday, September 24, 13

Slide 25

Slide 25 text

Story Three: NASHORN for Browser Tuesday, September 24, 13

Slide 26

Slide 26 text

Restrictions ★ There ARE No browser APIs: ★ HTML5 canvas ★ HTML5 audio ★ WebWorkers ★ WebSockets ★ WebGL Tuesday, September 24, 13

Slide 27

Slide 27 text

Q& A Tuesday, September 24, 13

Slide 28

Slide 28 text

THANKS FOR YOUR ATTENTION www.faratasystems.com // follow me : twitter.com/gamussa Tuesday, September 24, 13