SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Downloaden Sie, um offline zu lesen
JavaScript
                         Getting started

                            Wolfram Kriesing, uxebu
                                  Co-Founder

                               @wolframkriesing

Mittwoch, 18. Mai 2011
Wolfram Kriesing
                           Co-Founder

                         @wolframkriesing

Mittwoch, 18. Mai 2011
We open the mobile web.




Mittwoch, 18. Mai 2011
JavaScript
                     • It's a real programming language!
                     • Brendan Eich at Netscape invented it
                     • Web only language - never was
                     • Often not learned, just used
                     • ECMAScript5, ECMAScript.next


Mittwoch, 18. Mai 2011
Take a guess!

                         What is JavaScript?



Mittwoch, 18. Mai 2011
0

Mittwoch, 18. Mai 2011
0

Mittwoch, 18. Mai 2011
Easy, right!?




Mittwoch, 18. Mai 2011
1

Mittwoch, 18. Mai 2011
1

Mittwoch, 18. Mai 2011
2

Mittwoch, 18. Mai 2011
2

Mittwoch, 18. Mai 2011
3

Mittwoch, 18. Mai 2011
3

Mittwoch, 18. Mai 2011
4

Mittwoch, 18. Mai 2011
4

Mittwoch, 18. Mai 2011
So...
                         What is JavaScript?



Mittwoch, 18. Mai 2011
0          YES

             1           YES


              2          YES

              3          YES


              4          YES

Mittwoch, 18. Mai 2011
0



    prompt("Type something here, please!")




Mittwoch, 18. Mai 2011
1

                                            Hack it!




                         https://github.com/wolframkriesing/demo-orientation


Mittwoch, 18. Mai 2011
1

                                            Hack it!




                         https://github.com/wolframkriesing/demo-orientation


Mittwoch, 18. Mai 2011
2

               3


                         Impact is a JavaScript Game Engine



                                    http://impactjs.com/

Mittwoch, 18. Mai 2011
4


                         •100% HTML5
                         •WebGL
                         •JavaScript
                         •8 Chromes
                         •WebSockets
                         •node.js with socket.io

                         http://webglsamples.googlecode.com
Mittwoch, 18. Mai 2011
Microlibraries
                            The new trend!?




Mittwoch, 18. Mai 2011
"JavaScript is broken.
                   It can be fixed with
                    more JavaScript"


Mittwoch, 18. Mai 2011
var o = new Object();

                                  vs.

                              var o = {};




Mittwoch, 18. Mai 2011
var s = new String();

                                  vs.

                              var s = "";




Mittwoch, 18. Mai 2011
var x = "" + y;
                         x.toLowerCase();




Mittwoch, 18. Mai 2011
"By reducing your global footprint to a single
                    name, you significantly reduce the chance of bad
                    interactions with other applications, widgets, or
                                       libraries."




                                                Douglas Crockford


Mittwoch, 18. Mai 2011
;(function(){})()




Mittwoch, 18. Mai 2011
var node = byId("someEl");
                         node._value = 42;




Mittwoch, 18. Mai 2011
var str = s1 + s2 + s3;

                         vs.

       var str = [s1, s2, s3].join("");




Mittwoch, 18. Mai 2011
var C = function(name){
          this.name = name;
       };

       C.prototype.say = function(){
          console.log(this.name);
       };

       var obj = new C("Dave");


Mittwoch, 18. Mai 2011
Libraries



Mittwoch, 18. Mai 2011
Why?
                     • DOM API sucks
                     • Event handling differs
                     • Ajax API sucked
                     • Memory leaks
                     • before HTML5 - no UI
                     • Animations maybe complex

Mittwoch, 18. Mai 2011
Thank you



                          Wolfram Kriesing
                            uxebu.com




Mittwoch, 18. Mai 2011

Weitere ähnliche Inhalte

Mehr von wolframkriesing

JavaScript The Language Meetup - Async functions
JavaScript The Language Meetup - Async functionsJavaScript The Language Meetup - Async functions
JavaScript The Language Meetup - Async functionswolframkriesing
 
Our react-native experiences at crewmeister
Our react-native experiences at crewmeisterOur react-native experiences at crewmeister
Our react-native experiences at crewmeisterwolframkriesing
 
ES6 katas - talk given at enterjs
ES6 katas - talk given at enterjsES6 katas - talk given at enterjs
ES6 katas - talk given at enterjswolframkriesing
 
TDD for Kids - VLCjs (Valencia Spain, July 2015)
TDD for Kids - VLCjs (Valencia Spain, July 2015)TDD for Kids - VLCjs (Valencia Spain, July 2015)
TDD for Kids - VLCjs (Valencia Spain, July 2015)wolframkriesing
 
ES6Katas.org - an introduction and the story behind
ES6Katas.org - an introduction and the story behindES6Katas.org - an introduction and the story behind
ES6Katas.org - an introduction and the story behindwolframkriesing
 
Refactoring out of the mess
Refactoring out of the messRefactoring out of the mess
Refactoring out of the messwolframkriesing
 
Day2 - Refactoring (Lecture SS 2015)
Day2 - Refactoring (Lecture SS 2015)Day2 - Refactoring (Lecture SS 2015)
Day2 - Refactoring (Lecture SS 2015)wolframkriesing
 
Day1 - TDD (Lecture SS 2015)
Day1 - TDD (Lecture SS 2015)Day1 - TDD (Lecture SS 2015)
Day1 - TDD (Lecture SS 2015)wolframkriesing
 
react.js - DOM as it was meant
react.js - DOM as it was meantreact.js - DOM as it was meant
react.js - DOM as it was meantwolframkriesing
 
Presentation Mobile Monday Munich, March 2012
Presentation Mobile Monday Munich, March 2012Presentation Mobile Monday Munich, March 2012
Presentation Mobile Monday Munich, March 2012wolframkriesing
 
JavaScript Tools (PHPConference 2011, Berlin)
JavaScript Tools (PHPConference 2011, Berlin)JavaScript Tools (PHPConference 2011, Berlin)
JavaScript Tools (PHPConference 2011, Berlin)wolframkriesing
 
NEXT11, Puzzle pieces of our mobile web approach
NEXT11, Puzzle pieces of our mobile web approachNEXT11, Puzzle pieces of our mobile web approach
NEXT11, Puzzle pieces of our mobile web approachwolframkriesing
 
HTML5 Apps - Mobile Developer Summit Bangalore
HTML5 Apps - Mobile Developer Summit BangaloreHTML5 Apps - Mobile Developer Summit Bangalore
HTML5 Apps - Mobile Developer Summit Bangalorewolframkriesing
 
Best Practices - Mobile Developer Summit
Best Practices - Mobile Developer SummitBest Practices - Mobile Developer Summit
Best Practices - Mobile Developer Summitwolframkriesing
 
Mobile Future - Mobile Developer Summit Bangalore
Mobile Future - Mobile Developer Summit BangaloreMobile Future - Mobile Developer Summit Bangalore
Mobile Future - Mobile Developer Summit Bangalorewolframkriesing
 

Mehr von wolframkriesing (20)

JavaScript The Language Meetup - Async functions
JavaScript The Language Meetup - Async functionsJavaScript The Language Meetup - Async functions
JavaScript The Language Meetup - Async functions
 
Our react-native experiences at crewmeister
Our react-native experiences at crewmeisterOur react-native experiences at crewmeister
Our react-native experiences at crewmeister
 
ES6 katas - talk given at enterjs
ES6 katas - talk given at enterjsES6 katas - talk given at enterjs
ES6 katas - talk given at enterjs
 
TDD for Kids - VLCjs (Valencia Spain, July 2015)
TDD for Kids - VLCjs (Valencia Spain, July 2015)TDD for Kids - VLCjs (Valencia Spain, July 2015)
TDD for Kids - VLCjs (Valencia Spain, July 2015)
 
ES6Katas.org - an introduction and the story behind
ES6Katas.org - an introduction and the story behindES6Katas.org - an introduction and the story behind
ES6Katas.org - an introduction and the story behind
 
Baby steps
Baby stepsBaby steps
Baby steps
 
ECMAScript 6 for real
ECMAScript 6 for realECMAScript 6 for real
ECMAScript 6 for real
 
Refactoring out of the mess
Refactoring out of the messRefactoring out of the mess
Refactoring out of the mess
 
Day2 - Refactoring (Lecture SS 2015)
Day2 - Refactoring (Lecture SS 2015)Day2 - Refactoring (Lecture SS 2015)
Day2 - Refactoring (Lecture SS 2015)
 
Day1 - TDD (Lecture SS 2015)
Day1 - TDD (Lecture SS 2015)Day1 - TDD (Lecture SS 2015)
Day1 - TDD (Lecture SS 2015)
 
react.js - DOM as it was meant
react.js - DOM as it was meantreact.js - DOM as it was meant
react.js - DOM as it was meant
 
Better Code through TDD
Better Code through TDDBetter Code through TDD
Better Code through TDD
 
April JavaScript Tools
April JavaScript ToolsApril JavaScript Tools
April JavaScript Tools
 
Presentation Mobile Monday Munich, March 2012
Presentation Mobile Monday Munich, March 2012Presentation Mobile Monday Munich, March 2012
Presentation Mobile Monday Munich, March 2012
 
EmbedJS
EmbedJSEmbedJS
EmbedJS
 
JavaScript Tools (PHPConference 2011, Berlin)
JavaScript Tools (PHPConference 2011, Berlin)JavaScript Tools (PHPConference 2011, Berlin)
JavaScript Tools (PHPConference 2011, Berlin)
 
NEXT11, Puzzle pieces of our mobile web approach
NEXT11, Puzzle pieces of our mobile web approachNEXT11, Puzzle pieces of our mobile web approach
NEXT11, Puzzle pieces of our mobile web approach
 
HTML5 Apps - Mobile Developer Summit Bangalore
HTML5 Apps - Mobile Developer Summit BangaloreHTML5 Apps - Mobile Developer Summit Bangalore
HTML5 Apps - Mobile Developer Summit Bangalore
 
Best Practices - Mobile Developer Summit
Best Practices - Mobile Developer SummitBest Practices - Mobile Developer Summit
Best Practices - Mobile Developer Summit
 
Mobile Future - Mobile Developer Summit Bangalore
Mobile Future - Mobile Developer Summit BangaloreMobile Future - Mobile Developer Summit Bangalore
Mobile Future - Mobile Developer Summit Bangalore
 

Java scriptgettingstarted

  • 1. JavaScript Getting started Wolfram Kriesing, uxebu Co-Founder @wolframkriesing Mittwoch, 18. Mai 2011
  • 2. Wolfram Kriesing Co-Founder @wolframkriesing Mittwoch, 18. Mai 2011
  • 3. We open the mobile web. Mittwoch, 18. Mai 2011
  • 4. JavaScript • It's a real programming language! • Brendan Eich at Netscape invented it • Web only language - never was • Often not learned, just used • ECMAScript5, ECMAScript.next Mittwoch, 18. Mai 2011
  • 5. Take a guess! What is JavaScript? Mittwoch, 18. Mai 2011
  • 17. So... What is JavaScript? Mittwoch, 18. Mai 2011
  • 18. 0 YES 1 YES 2 YES 3 YES 4 YES Mittwoch, 18. Mai 2011
  • 19. 0 prompt("Type something here, please!") Mittwoch, 18. Mai 2011
  • 20. 1 Hack it! https://github.com/wolframkriesing/demo-orientation Mittwoch, 18. Mai 2011
  • 21. 1 Hack it! https://github.com/wolframkriesing/demo-orientation Mittwoch, 18. Mai 2011
  • 22. 2 3 Impact is a JavaScript Game Engine http://impactjs.com/ Mittwoch, 18. Mai 2011
  • 23. 4 •100% HTML5 •WebGL •JavaScript •8 Chromes •WebSockets •node.js with socket.io http://webglsamples.googlecode.com Mittwoch, 18. Mai 2011
  • 24. Microlibraries The new trend!? Mittwoch, 18. Mai 2011
  • 25. "JavaScript is broken. It can be fixed with more JavaScript" Mittwoch, 18. Mai 2011
  • 26. var o = new Object(); vs. var o = {}; Mittwoch, 18. Mai 2011
  • 27. var s = new String(); vs. var s = ""; Mittwoch, 18. Mai 2011
  • 28. var x = "" + y; x.toLowerCase(); Mittwoch, 18. Mai 2011
  • 29. "By reducing your global footprint to a single name, you significantly reduce the chance of bad interactions with other applications, widgets, or libraries." Douglas Crockford Mittwoch, 18. Mai 2011
  • 31. var node = byId("someEl"); node._value = 42; Mittwoch, 18. Mai 2011
  • 32. var str = s1 + s2 + s3; vs. var str = [s1, s2, s3].join(""); Mittwoch, 18. Mai 2011
  • 33. var C = function(name){ this.name = name; }; C.prototype.say = function(){ console.log(this.name); }; var obj = new C("Dave"); Mittwoch, 18. Mai 2011
  • 35. Why? • DOM API sucks • Event handling differs • Ajax API sucked • Memory leaks • before HTML5 - no UI • Animations maybe complex Mittwoch, 18. Mai 2011
  • 36. Thank you Wolfram Kriesing uxebu.com Mittwoch, 18. Mai 2011