101: Neljännesvuosisata JavaScriptiä, osa 1/2

JavaScript täytti 25 vuotta! Neljännesvuosisadan kunniaksi Antti ja Riku muistelevat mitä kaikkea noihin vuosiin on kuulunutkaan, ja peilaavat tapahtumia omiin kokemuksiinsa. Down the memory lane!

JavaScript 25 v!

  • https://www.jetbrains.com/lp/javascript-25/
  • 1995
    • Brendan Eich / Netscape
      • 10 päivää aikaa rakentaa ohjelmointikieli Netscape Navigatoriin
    • NETSCAPE AND SUN ANNOUNCE JAVASCRIPT, THE OPEN, CROSS-PLATFORM OBJECT SCRIPTING LANGUAGE FOR ENTERPRISE NETWORKS AND THE INTERNET
      • JavaScript is analogous to Visual Basic in that it can be used by people with little or no programming experience to quickly construct complex applications.
    • Vaikutteita Javasta, Schemestä ja Selfistä
      • Self: Prototyypit
      • Scheme: First-class funktiot
      • Java: Tuttu syntaksi
    • JavaScriptin nimi
      • Microsoft alkoi rakentaa Internet Exploreria kilpailijana Netscape Navigatorille
      • Netscape aloitti JavaScriptin standardointiprosessin, jotta MS ei voi ottaa kaikkea omiin käsiinsä
      • Netscape partneroi Sunin kanssa (Javaa kehitettiin samaan aikaan)
      • Brendan Eich has said that with Sun on board, they decided to surf the tidal wave of hype surrounding Java and position JavaScript as the companion language to Java
      • So the name was a straightforward marketing ploy to gain acceptance.
  • 1997
    • ECMAScript-standardi Netscape & Microsoft
  • 1999
    • XMLHTTP Object IE:ssä: Taustalla tapahtuvia requja!
    • ECMAScript 3
      • Regular expressions, try/catch
  • 2001
    • JSON, edelleen ei tukea kommenteille 😠
    • IE 6
  • 2002
    • Firefox
    • JSLint
  • 2003
    • Safari & WebKit
  • 2004
    • Gmail
  • 2005
  • 2006
    • jQuery
      • Selainerojen neutralointi
        • Not long ago, browsers didn't have a way to select elements using CSS selectors in JavaScript
      • DOM-manipulointi
      • Eventtien hanskaus
      • AJAX
        • Promise
      • Animaatiot
      • The story as to why jQuery is becoming obsolete is very long. The shortest version is, jQuery is a victim of its own success. This can be broken down into two parts: first, much of its API is now incorporated directly into the browser, and jQuery enabled but did not structure larger applications.
  • 2008
    • Chrome
      • Erilliset prosessit tabeille
      • Blazing fast
    • V8 julki irti Chromesta
    • JavaScript: The Good Parts, Douglas Crockford
    • Websocketit
    • JQuery UI
  • 2009
    • ECMAScript 5 (kuten Larry-sarjassa, osaa 4 ei koskaan julkaistu)
      • "use strict"
      • JSON.parse, stringify
      • Array.map, filter, reduce, every, some, indexOf
    • Node.js
    • Less
    • CoffeeScript
      • Jeremy Ashkenas
        • Underscore.js
        • Backbone.js
        • Livescript
      • Nykypäivän JS syntaksissa aika paljon vaikutteita
        • Nuolifunktiot
        • Multiline string
        • Existential Operator
    • RequireJS
      • AMD - Async module definition
        • Käytännössä dependency injection
  • 2010
    • NPM
    • Express
      • TJ Holowaychuk
    • Backbone & AngularJS
    • Socket.io
    • Knockout.js
    • JQuery Mobile

Jakson valinnat