De evolutie van JavaScript

Slides:



Advertisements
Verwante presentaties
Pieter Heyvaert.  Asteroiden ontwijken  Per ontweken asteroide +10 punten  Wanneer geraakt = Game Over.
Advertisements

Internet College 2 Architecturen. Architectuur van netwerktoepassingen •Peer to peer –Windows werkgroep •File- en printer sharing •Internet connection.
Stateful web, developments, trends 1 Webtechnologie Lennart Herlaar.
(c) Marc de Graauw Presentatie XML Marc de Graauw 2 maart 2000.
JQuery en ASP.NET Bart De Meyer.
Windows Workflow Foundation Workflow in jouw applicatie Dennis Mulder – Avanade
Voor VBA programmeurs Maurice de Beijer.  Maurice de Beijer.  The Problem Solver.  Visual Basic MVP.  Blog: theproblemsolver/default.aspxhttp://msmvps.com/blogs/
Masterproef  onderwerp doorgeven :  Deadline : 30/09/10 (1 e en 2 e zit)  Erasmus  begeleiding,… in buitenland  enkel scriptie uploaden  niet-Erasmus.
Windows Workflow Foundation What is hot, what is not? Maurice de Beijer ABL – The Problem Solver.
1 Toegepaste Informatica Keuzevak C++ 3°jaar. 2 Studiefiche  Software  Boek (hfst 3-5)  Presentatie (website)
ChatBox
© 2002 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied,
WinFX Overview Martin Tirion Senior Consultant Microsoft Services.
Webmaster Training: CSS CSS2 & XHTML By Frederik Van Outryve.
Client side representation 1 Webtechnologie Lennart Herlaar.
#3Software planning. refactor  Vermijdt dubbele code Welke code lijkt veel op elkaar?
Visual Basic.Net - Overzicht
AJAX een korte introductie Koen Willems & Edwin Vlieg PHPFreakz,
XForms TU Delft Library Digitale Productontwikkeling Egbert Gramsbergen.
TechNet & MSDN 2002 Problemen van vandaag oplossen en vooruitkijken!
Microsoft Operations Manager & Scripting
Web Applicaties Bouwen met Visual Studio .NET
Windows Applicaties Bouwen met Visual Studio.NET Sijmen Koffeman Development Consultant Microsoft.
Windows 2000 Update & Windows.NET Server Family Preview Arthur de Meij Solution Specialist Business Infrastructure Enterprise & Partner Group Microsoft.
Client-side scripting. 1.Scripting in webpagina’s 1. Verschillende talen VB: toepassingen in Windowsomgeving VBA: toepassingen in MS-Office VBScript internet.
1 december KC Development Tools Oracle HTML DB 2.0.
Afdrukken met Visual Basic 2008
Visual Basic.NET voor studenten De VB- ontwikkelomgeving Hoofdstuk 2.
Web 1.0 HTMLAfbeeldingen FlashHyperlinks CSS Participation AJAX Usability Design Ruby on Rails.
MVC in de praktijk Jeroen Swart.NET architect, Quintor
TypeScript Orde in de chaos!. Over mij Patrick Schmidt (Microsoft Certified Trainer) Trainer bij 4DotNet Mede-oprichter en architect BesteProduct.nl.
Webbrowsers Inhoudsopgave  Webbrowser  Geschiedenis  Verschillende webbrowsers Bekende webbrowsers Minder bekende webbrowsers  Vergelijking.
Handboek Commercieel Budgetteren: toegepast J. Vanhaverbeke & L
Jeugd in het Strafrechtelijk kader Les 3, 2016 ‘Needs’
Natuurkunde Overal Hoofdstuk 1: Beweging in beeld.
Gaat u dan snel naar Goedkoop of in kleine oplagen kleding (laten) bedrukken, met een embleem, logo en/of tekst van uzelf, of.
Roundtable De Gefragmenteerde Organisatie
BASISVEILIGHEID (VCA)
Hoofdstuk 6 Warmte.
En blessurepreventie Trainingsopbouw.
VEELTERMEN BLADWIJZERS: GETALWAARDE OPTELLEN EN AFTREKKEN
NIET-RATIONELE BESLISSINGEN in de TECHNIEK
Kwaliteitsborging voor het Bouwen
de tweede Bergrede Matteüs 24/25 - deel 6
Basis Politie- & Honden Voertuigen
Belangrijkste wijzigingen
Landschapsecologische criteria voor Nationale Parken van Wereldklasse
Lokale autonomie en interbestuurlijk toezicht
De economie in de gouden eeuw
Kleurenschema’s Inspiratie: steden van de wereld.
Voorproefje klezmer Brave Old World Khevrisa Klezmatics.
Javascript.
Goed doen op zijn best: een inleiding tot effectief altruïsme
Bezwijken waterkering door piping
Wolf Mooij Jeroen de Klein Jan Janse
Functies met een parameter
Javascript.
Integraal Vastgoedrekenen
Uitnodiging Rabobank-Sprintwedstrijden Het leukste side-event van de Giro d’Italia!! 30 april – uur.
Javascript.
OGH APEX dag 2012 Toeters en bellen met APEX
MIJN GEMIDDELDE SNELHEID
De Lorenzcurve Doel van de Lorenzcurve is inzicht geven in de verdeling van het (nationaal)inkomen over de inkomenstrekkers. Het is een grafische weergave.
Deeleconomie Anke thienpont 1Baswb.
WETENSCHAPPLIJK EN SIGNIFICANTIE
reken met druk. Begrijp je wat druk is?
Toegepast rekenen HEO Algebra.
Vraagstukken oplossen met behulp van een vergelijking
JavaScript animatie beweging 1 mei 2016.
1. vergelijkingen 1.1 Rekenen met letters.
Transcript van de presentatie:

De evolutie van JavaScript Edwin van der Thiel Technisch Specialist, Sogeti Edwin.van.der.thiel@sogeti.nl www.sogeti.nl

Agenda Verleden Heden Toekomst Concerns Systeem architectuur JavaScript historie Heden JavaScript basics Enterprise JavaScript - TypeScript Libraries Toekomst Web 3.0 WebGL Concerns

Windows Kernel Services Systeem Architectuur DirectX / OpenGL DirectX WebGL C C++ .NET HTA Web C C++ C# VB HTML Windows Explorer Internet Explorer Windows Runtime WIN32 API - Communication - Devices - Graphics - Control Objects BrowseUI WinRT API - Communication - Devices - Graphics MSHTML - Trident Layout Engine - HTML / CSS Parser - DOM - Active Document Trident Engine Windows Kernel Services

JavaScript Historie Maart 1996 - Netscape lanceert JavaScript Augustus 1996 - Microsoft IE met JScript November 1996 – Netscape biedt JavaScript aan ECMA voor standaardisatie Juni 1997 – ECMA publiceert ECMAScript 1999 – Microsoft embed JScript in Windows Script Host 2000 – Exception Handling 2005 – Uitbreiding Arrays Huidig – JavaScript gestandaardiseerd ECMA-262 (5.1)

JavaScript Basics - HTML Definieert de document structuur <html> <head>, <body> <form>, <input> <article>, <section> <div>, <p> <img>, <video>, <audio> <canvas>, <iframe> <table> CSS Definieert de document opmaak div, .class, #id :pseudoclass Background Spacing Borders Font and Text Positioning Printing JavaScript Defineert functionaliteit Reactie op HTML object event Document ready Onclick Onhover … Prototypes

JavaScript Basics - structure function myFunction() { var x=""; var time=new Date().getHours(); if (time<20) x="Good day"; else x="Good evening"; return x; } document.getElementById("demo").innerHTML="Hello"; try { ... } catch(err) var firstname; firstname="Hege"; document.write(firstname); for (i=0;i<5;i++) { ... } var Circle = function(radius) { this.radius = radius; } Circle.prototype.area = function() return Math.PI*this.radius*this.radius; var a = new Circle(3), b = new Circle(4); a.area().toFixed(2); //28.27 b.area().toFixed(2); //50.27 alert("Hello! I am an alert box!"); switch (d) { case 0: x="Sunday"; break; case 1: x="Monday"; }

JavaScript Basics - JSON JSON staat voor JavaScript Object Notatie Het wordt veel gebruikt om objecten van een back-end (WCF services, ASMX services, …) naar front-end (AJAX) te sturen. [ { "Naam": "JSON", "Type": "Gegevensuitwisselingsformaat", "isProgrammeertaal": false, }, { "Naam": "JavaScript", "Type": "Programmeertaal", "isProgrammeertaal": true, "Jaar": 1995 } ] data.Naam data.Type data.isProgrammeertaal data.Jaar

TypeScript – Status TypeScript biedt modules, classes, interfaces en type annotaties (strong typing) – ECMA 6 Momenteel op versie 0.9.1 Installatie: http://www.typescriptlang.org In Visual Studio wordt een template geleverd voor een web app, maar is ook te gebruiken binnen Windows Store apps (tijdelijk met workarounds).

Libraries - jQuery jQuery is een extensie op JavaScript voor optimalizatie van DOM interactie en AJAX. *Selectors (in CSS syntax) Effecten (sliding, fading, …) *Event handling *DOM manipulatie AJAX

Libraries – jQuery UI Een library gebouwd op jQuery, het levert een set interacties, effecten en widgets voor UI *Draggable en Droppable Resizable Dialog (=lightbox/overlay) Accordion, datepicker, autocomplete, menu Custom checkbox, radiobutton, textbox, …

Libraries – En vele anderen MooTools & YUI – Tegenhangers van jQuery QUnit – js unit testing jQuery mobile – mobile support Backbone.js – MVC framework in JavaScript Modernizr – HTML5 / CSS3 feature detection Jsplumb – connector library jqPlot – graph plotting JavaScrypt – encryptie library Jsvalidate – form validation jQuery Tools – standaard componenten voor overlay, scrollable, …

Identity Management – WS-federation stack Web 3.0 Identiteiten spelen een centrale rol Internet verwordt een Service-Oriented Architecture Apps bieden de interface om diensten te consumeren Identity Management – WS-federation stack Windows Azure Web apps + Windows 8 apps Directory Services?

Web 3.0 ID ID ID ID ID Directory dir dir dir Internet Services Company Home …

WebGL Een JavaScript API voor rendering van interactieve 2D/3D graphics binnen de web browser zonder gebruik van plug-ins Ontstond als experiment bij Mozilla in 2006 Initialiseer het canvas HTML object als WebGL canvas en gebruik OpenGL ES 2.0 syntax binnen JavaScript Internet Explorer 11 / Windows 8.1 ondersteunt WebGL

Concerns JavaScript compileert niet, het is altijd mogelijk de broncode te achterhalen – ook uit Windows Store apps Clientside validatie is eenvoudig te omzeilen – Maak de juiste keuze wat clientside vs serverside te implementeren Het is een geïnterpreteerde taal, en heeft daarmee performance implicaties