javascript tools (phpconference 2011, berlin)

63
JavaScript Tools Wolfram Kriesing Co-Founder @wolframkriesing Dienstag, 31. Mai 2011

Upload: wolframkriesing

Post on 29-Nov-2014

3.233 views

Category:

Technology


0 download

DESCRIPTION

Showing some JavaScript tools

TRANSCRIPT

Page 1: JavaScript Tools (PHPConference 2011, Berlin)

JavaScriptTools

Wolfram Kriesing

Co-Founder

@wolframkriesing

Dienstag, 31. Mai 2011

Page 2: JavaScript Tools (PHPConference 2011, Berlin)

We open the mobile web.

Dienstag, 31. Mai 2011

Page 3: JavaScript Tools (PHPConference 2011, Berlin)

http://www.flickr.com/photos/andresrueda/2276197032/

Dienstag, 31. Mai 2011

Page 4: JavaScript Tools (PHPConference 2011, Berlin)

http://www.flickr.com/photos/cmoi/760513848/

Dienstag, 31. Mai 2011

Page 5: JavaScript Tools (PHPConference 2011, Berlin)

Editors

Dienstag, 31. Mai 2011

Page 6: JavaScript Tools (PHPConference 2011, Berlin)

WebStorm

Dienstag, 31. Mai 2011

Page 7: JavaScript Tools (PHPConference 2011, Berlin)

Komodo

Dienstag, 31. Mai 2011

Page 8: JavaScript Tools (PHPConference 2011, Berlin)

Cloud9

Dienstag, 31. Mai 2011

Page 9: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 10: JavaScript Tools (PHPConference 2011, Berlin)

Minifiers

Dienstag, 31. Mai 2011

Page 11: JavaScript Tools (PHPConference 2011, Berlin)

Ping Response Time

on mobile!?

Dienstag, 31. Mai 2011

Page 12: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 13: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 14: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 15: JavaScript Tools (PHPConference 2011, Berlin)

http://code.google.com/intl/de-DE/closure/compiler/

https://github.com/mishoo/UglifyJS/

http://developer.yahoo.com/yui/compressor/

http://shrinksafe.dojotoolkit.org/

http://www.crockford.com/javascript/jsmin.html

...

Dienstag, 31. Mai 2011

Page 16: JavaScript Tools (PHPConference 2011, Berlin)

Compare

http://compressorrater.thruhere.net/

Dienstag, 31. Mai 2011

Page 17: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 18: JavaScript Tools (PHPConference 2011, Berlin)

http://closure-compiler.appspot.com/home

Dienstag, 31. Mai 2011

Page 19: JavaScript Tools (PHPConference 2011, Berlin)

Think different!

Dienstag, 31. Mai 2011

Page 20: JavaScript Tools (PHPConference 2011, Berlin)

140BytesBy Jed Schmidt

http://140byt.es/

https://github.com/jed/140bytes/wiki/Byte-saving-techniques

Dienstag, 31. Mai 2011

Page 21: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 22: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 23: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 24: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 25: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 26: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 27: JavaScript Tools (PHPConference 2011, Berlin)

DocTools

Dienstag, 31. Mai 2011

Page 28: JavaScript Tools (PHPConference 2011, Berlin)

https://github.com/micmath/jsdoc/

Dienstag, 31. Mai 2011

Page 29: JavaScript Tools (PHPConference 2011, Berlin)

http://dojodocs.uxebu.com/

https://github.com/wolframkriesing/dools

Dienstag, 31. Mai 2011

Page 30: JavaScript Tools (PHPConference 2011, Berlin)

http://embedjs.org/apidocs/dools/app/apidoc/embedjs/

Dienstag, 31. Mai 2011

Page 31: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 32: JavaScript Tools (PHPConference 2011, Berlin)

Testing

Dienstag, 31. Mai 2011

Page 33: JavaScript Tools (PHPConference 2011, Berlin)

Testing

• unit testing

• synch

• asynch

• automation

• selenium like

• webdriver

Dienstag, 31. Mai 2011

Page 34: JavaScript Tools (PHPConference 2011, Berlin)

http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks#JavaScript

Dienstag, 31. Mai 2011

Page 35: JavaScript Tools (PHPConference 2011, Berlin)

Jasmine

http://pivotal.github.com/jasmine/

Dienstag, 31. Mai 2011

Page 36: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 37: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 38: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 39: JavaScript Tools (PHPConference 2011, Berlin)

DocTests

Dienstag, 31. Mai 2011

Page 40: JavaScript Tools (PHPConference 2011, Berlin)

Inspector

FireBug

Dienstag, 31. Mai 2011

Page 41: JavaScript Tools (PHPConference 2011, Berlin)

• console

•debugger

• resource panel

• ...

Dienstag, 31. Mai 2011

Page 42: JavaScript Tools (PHPConference 2011, Berlin)

Firebug/Inspector

• has keyboard shortcuts!ctrl+a, ctrl+e, up, down, tab, shift+tab, but not ctrl+r

• console.log("See this %s", var, obj, array)

• monitorEvents($("id"))

• profile(1), profileEnd(1)

http://getfirebug.com/console.html

http://getfirebug.com/commandline.html

http://getfirebug.com/keyboard.html

Dienstag, 31. Mai 2011

Page 43: JavaScript Tools (PHPConference 2011, Berlin)

Console

Dienstag, 31. Mai 2011

Page 44: JavaScript Tools (PHPConference 2011, Berlin)

*.toString()

• function source

• function parameters

• even console.log.toString()

Dienstag, 31. Mai 2011

Page 45: JavaScript Tools (PHPConference 2011, Berlin)

*.toString()

Dienstag, 31. Mai 2011

Page 46: JavaScript Tools (PHPConference 2011, Berlin)

Fix in Place

Dienstag, 31. Mai 2011

Page 48: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 49: JavaScript Tools (PHPConference 2011, Berlin)

DEMO

WebKit Inspector

Remote

Dienstag, 31. Mai 2011

Page 50: JavaScript Tools (PHPConference 2011, Berlin)

Analyzers

Dienstag, 31. Mai 2011

Page 51: JavaScript Tools (PHPConference 2011, Berlin)

Dienstag, 31. Mai 2011

Page 52: JavaScript Tools (PHPConference 2011, Berlin)

Profiler

DEMOsortdemo

Dienstag, 31. Mai 2011

Page 53: JavaScript Tools (PHPConference 2011, Berlin)

JSLint

Dienstag, 31. Mai 2011

Page 54: JavaScript Tools (PHPConference 2011, Berlin)

JSLint

• finds IE traps (trailing comma)

• gives JS insight (parseInt, ===, ...)

• understand type coercion

• finds missing var statements

• undefined vars, typos (myVar vs. myvar)

http://jslint.com

http://wolfram.kriesing.de/blog/index.php/2007/understanding-jslint-output

http://www.danhulton.com/blog/2008/01/16/integrate-js-lint-into-komodo-edit/

Dienstag, 31. Mai 2011

Page 55: JavaScript Tools (PHPConference 2011, Berlin)

Tips

Dienstag, 31. Mai 2011

Page 56: JavaScript Tools (PHPConference 2011, Berlin)

Comment out

Dienstag, 31. Mai 2011

Page 57: JavaScript Tools (PHPConference 2011, Berlin)

Comment out

Dienstag, 31. Mai 2011

Page 58: JavaScript Tools (PHPConference 2011, Berlin)

Template

Dienstag, 31. Mai 2011

Page 59: JavaScript Tools (PHPConference 2011, Berlin)

Try it first (1)

d.query("h2") .style({color:"red"}) .anim({left:300}, 500)

Are you sure this works?

d.query("h2") .style({position:"absolute", color:"red"}) .anim({left:300}, 500)

NO

save one reload!

Dienstag, 31. Mai 2011

Page 60: JavaScript Tools (PHPConference 2011, Berlin)

alert, console.log

• alert hell? use confirm!

• numbered console.log

Dienstag, 31. Mai 2011

Page 61: JavaScript Tools (PHPConference 2011, Berlin)

zeon.js

Dienstag, 31. Mai 2011

Page 62: JavaScript Tools (PHPConference 2011, Berlin)

zeon.js

DEMO

Dienstag, 31. Mai 2011

Page 63: JavaScript Tools (PHPConference 2011, Berlin)

Wolfram Kriesing

uxebu.com

Thank you

Dienstag, 31. Mai 2011