Inhoud. 1 Kennismaken met ECMAScript /ix

Maat: px
Weergave met pagina beginnen:

Download "Inhoud. 1 Kennismaken met ECMAScript /ix"

Transcriptie

1 Inhoud 1 Kennismaken met ECMAScript Een korte geschiedenis van JavaScript en ECMAScript 2 Brendan Eich 2 ECMAScript, JavaScript en versienummers 2 ECMAScript 2015, 2016, 2017 en verder 3 Wat is ECMAScript 2015? 4 Onderdelen van ECMAScript Kenmerken per feature 7 Nieuwe features toch gebruiken 8 Compilers en polyfills 8 Traceur, Babel en TypeScript 10 Wat is TypeScript? 11 Relatie tussen ES5, ECMAScript 2015 en TypeScript 13 Alles is optioneel 14 Benodigde voorkennis 15 U kent JavaScript 16 Tips voor meer lezen 17 Indeling van dit boek 17 De ontwikkelomgeving inrichten 18 Editor en browser 18 Node.js en een server 19 TypeScript installeren 20 Oefenbestanden downloaden 21 Conclusie 22 Praktijkoefeningen 23 /ix

2 / Inhoud / 2 Nieuwe features in ECMAScript Van var naar let en const 28 var in ES5 function scope 28 Variabelen in ES6 block scope 29 Constanten maken met const 31 Template literals en string interpolation 32 Backtick gebruiken 33 Strings over meerdere regels 33 Arrow functions 34 Kenmerken 35 Lexical this 36 Standaardwaarden doorgeven voor parameters 38 Optionele parameters 40 Benoemde parameters 40 Realistisch voorbeeld 42 Rest parameters 43 Spread-operator 43 Overige parameters 45 Meer ES6-features 46 Maps, Sets en meer 46 Nieuwe arraymethodes 48 Destructuring 49 Meer ES6-kenmerken 50 Conclusie 51 Praktijkoefeningen 53 3 Werken met klassen 57 Wat zijn klassen? 58 Klassen zijn functies 58 Werking 59 Geen hoisting van klassen 60 Klasse-expressies 60 Opbouw van een klasse 61 Constructor 61 Methodes 62 Eigenschappen 63 Getters en setters 64 Keywords get en set 65 Statische methodes 67 Instanties van een klasse maken 69 /x

3 / ECMAScript 6 & TypeScript / Overerving en subklassen maken met extends 69 Het keyword super 70 Conclusie 72 Praktijkoefeningen 73 4 Kennismaken met TypeScript 77 Een korte geschiedenis van TypeScript 78 Superset van JavaScript 78 Transpiling 80 Alle platformen 80 Uitbreiding van JavaScript 80 Voordelen voor ontwikkelaars 82 Kennismaken met TypeScript via de Playground 84 Oefenen met de Playground 85 Een klasse gebruiken in de Playground 86 TypeScript-typeringen gebruiken in de code 87 Meer voorbeelden in de Playground 89 TypeScript lokaal installeren 90 Package.json 91 Afhankelijkheid: Node.js 92 Node.js installeren 93 Hello World in TypeScript 93 Package.json aanpassen 94 TypeScript Hello World schrijven 95 TypeScript configureren met tsconfig.json 97 Tsconfig.json maken 98 TypeScript compiler options 100 Meer dan compiler options 102 Conclusie 102 Praktijkoefeningen Typering van variabelen en functies 107 De basistypen van TypeScript 108 Boolean 109 TypeScript in uw editor 109 Number 110 String 111 Template strings 111 Array 111 Any en void 112 /xi

4 / Inhoud / Zelf typen schrijven - 1. Interface 114 Het keyword interface 114 De interface gebruiken 115 Voordelen van interfaces 117 Optionele eigenschappen 117 Readonly eigenschappen 118 Return types aangeven 119 Zelf typen schrijven - 2. Klassen 120 Verschil met ES6 121 Shorthand notatie: public en private properties 122 Werking van public, private en meer 122 Variabelen beschermen met getters en setters 123 Overerving via klassen 125 Meer over klassen 127 Wanneer klasse en wanneer interface? 128 Hoe TypeScript werkt met afgeleide typen - type inference 130 Contextual typing 131 Contextual typing overrulen 132 Meer typen tuple en enum 133 Tuple 133 Enum 133 Typen omzetten - casting en type assertions 134 Conclusie 135 Praktijkoefeningen Generics en andere TypeScript-mogelijkheden 141 Wat zijn generics? 142 Wanneer generics handig zijn 142 Het gegevenstype any 143 Een generic functie schrijven 144 Type inference met generics 145 Generics in combinatie met lijsten 146 Generic classes 147 Generics met interfaces 149 Namespaces 151 Het keyword namespace 153 Een namespace gebruiken 154 / xii

5 / ECMAScript 6 & TypeScript / Namespaces over meerdere bestanden 155 Referenties opgeven 156 Implementatie schrijven 157 Verwijzingen in HTML 157 De optie outfile in tsconfig.json 158 Volgorde van bestanden 159 Conclusie 160 Praktijkoefeningen TypeScript in complete applicaties 163 TypeScript-applicaties debuggen 164 Genereren van.map-bestanden 165.map-bestanden in productie 166 Externe JavaScript-bibliotheken gebruiken 166 Type Definition Files 166 Definitely Typed 168 TSD en Typings 169 Typings installeren 169 jquery en Bootstrap installeren 170 jquery en Bootstrap inzetten in het project 172 Index.ts schrijven 173 De applicatie testen 173 Code inchecken in versiebeheer 174 Bundeling van bestanden met WebPack 175 Module bundler 175 Werking van WebPack 176 WebPack installeren 177 WebPack configuratiebestand 177 HTML aanpassen 178 TypeScript aanpassen 178 De bundel genereren 179 Het resultaat bekijken 180 Loaders gebruiken 181 Watcher instellen 182 Een TypeScript e-commerceapplicatie maken 184 Stap 1 Omgeving instellen 185 Package.json 185 Tsconfig.json 186 Typings.json 187 Webpack.config.js 187 Producten toevoegen 188 / xiii

6 / Inhoud / Stap 2 Model maken 188 Map maken 188 Stap 3 Indexbestanden maken 189 Eerste versie testen 191 Stap 4 Boeken laden 192 Index.ts 192 BookShop.ts 193 Stap 5 Helperbestand maken 194 Testen 195 Stap 6 Details per boek tonen 195 Details verbergen 198 Stap 7 Toevoegen aan winkelwagen 199 Model toevoegen 199 BookShop uitbreiden 199 Nieuwe helpermethodes schrijven 201 HTML uitbreiden 202 Stap 8 Producten verwijderen uit winkelwagen 203 Stap 9 Bestelling plaatsen 205 Leegmaken 207 Stap 10 Kleine wijzigingen in de user interface 207 Compleet 208 Conclusie 209 / xiv

7 Kennismaken met ECMAScript HTML is al ruim 25 jaar de standaard voor het maken van websites. HTML kan echter niet alles. In HTML wordt alleen de structuur van pagina s beschreven. JavaScript is van oudsher de aanvullende programmeertaal om HTML interactief te maken. Het is de populairste programmeertaal op internet. JavaScript staat daarmee aan de basis van elke techniek die webdevelopers moeten kennen. Het is de motor achter webapps als Gmail, Facebook, Instagram, webwinkels en meer. Maar JavaScript stamt ook alweer uit ECMAScript 2015 (ook wel ES6 ) is de opvolger van JavaScript en biedt nieuwe keywords en programmeermodellen die beter aansluiten bij de mogelijkheden van moderne browsers en de eisen die aan hedendaagse webapps worden gesteld. TypeScript breidt op zijn beurt ECMAScript 2015 weer uit met strikte typeringen en tools die we kennen uit programmeertalen als Java en C#. Dit hoofdstuk biedt een inleiding op beide technieken, waarna u vanaf het volgende hoofdstuk met de praktijk aan de slag gaat. U leert in dit hoofdstuk: Een korte geschiedenis van JavaScript en ECMAScript. Waarom ECMAScript 2015? Wat is TypeScript? Benodigde voorkennis. De werkomgeving instellen en aanvullende tools. Indeling van dit boek.

8 / Hoofdstuk 1 / Kennismaken met ECMAScript 2015 Een korte geschiedenis van JavaScript en ECMAScript Brendan Eich JavaScript is oorspronkelijk in 1995 ontwikkeld door Brendan Eich, die bij Netscape werkte. Netscape is het bedrijf dat een van de oerbrowsers voor internet maakte, Netscape Navigator. Ook toen al was JavaScript bedoeld als uitbreiding van HTML om meer interactiviteit op webpagina s mogelijk te maken. De combinatie van HTML en JavaScript stond destijds bekend onder de naam Dynamic HTML (DHTML). De browsers uit die tijd (Internet Explorer 4 en Netscape 4) boden ondersteuning voor de combinatie van HTML en Java- Script in webpagina s. Ondertussen zijn we natuurlijk vele browserversies verder. JavaScript is uitgegroeid tot een van de belangrijkste pijlers binnen de browser en in moderne webapplicaties ( webapps ). Zonder JavaScript zouden Facebook, Twitter, e-commerce of internetbankieren niet bestaan. Alle huidige browsers (Internet Explorer, Firefox, Chrome, Safari enzovoort) kunnen JavaScript uitvoeren. ECMAScript, JavaScript en versienummers In de loop der jaren is het versienummer van JavaScript steeds licht opgehoogd. Eerst liep het versienummer omhoog met het verschijnen van een nieuwe browserversie. Nu is de ontwikkeling van JavaScript losgekoppeld van nieuwe versies van de browser. JavaScript is inmiddels omgevormd tot een officiële, genormeerde en gestandaardiseerde programmeertaal. Dit is gedaan door de structuur en inhoud van de taal te laten goedkeuren en standaardiseren door de organisatie European Computer Manufacturers /2

9 / ECMAScript 6 & TypeScript / Association (ECMA). Hiermee is de ontwikkeling van JavaScript nu in handen van een onafhankelijk instituut en niet meer van één browserfabrikant. Wat doet ECMA? ECMA heeft tot taak technische standaarden te publiceren en hierop toe te zien. ECMA houdt zich niet alleen bezig met JavaScript, maar ook met andere computergerelateerde standaarden, zoals het bestandsformaat voor cd-roms, de specificaties van de programmeertaal C# en het bestandsformaat Office Open XML. Wilt u hier meer over weten, bezoek dan ECMAScript 2015, 2016, 2017 en verder Vroeger spraken we dus van JavaScript 1.0, 1.2 enzovoort. Tegenwoordig wordt gesproken van ECMAScript. Eerst kreeg ECMAScript ook versienummers (ECMAScript 3 en ECMAScript 5). Sinds 2015 wordt een jaartal gebruikt. Elk jaar in juni is er een congres waarin wordt besloten welke nieuwe features officieel worden toegevoegd aan de programmeertaal. Zo krijgen we ECMAScript 2015, ECMAScript 2016 en binnenkort ECMAScript 2017 (enzovoort). Zolang voorgestelde nieuwe features nog geen deel uitmaken van de taal zelf, worden ze geschaard onder het kopje ECMAScript Next. De tabel geeft een overzicht van de geschiedenis van Java- Script en ECMAScript. /3

10 / Hoofdstuk 1 / Kennismaken met ECMAScript 2015 JavaScript/ECMAScript Jaartal /2000 ECMAScript ECMAScript ES6/ECMAScript ECMAScript 7/2016/Next 2016 en verder De begrippen ES6, ECMAScript 6 en ECMAScript 2015 worden vaak door elkaar gebruikt. Er wordt dan de versie uit 2015 bedoeld. Dat is niet erg handig, maar het is in de loop der jaren nu eenmaal zo gegroeid. ECMAScript 4? Misschien is het u opgevallen dat ECMAScript 4 in het overzicht ontbreekt. Dit was jarenlang een voorstel, maar de ontwikkeling is uiteindelijk gestopt. Dit had te maken met verschillen in inzicht binnen het comité over de richting die JavaScript op moest gaan en onnodige complexiteit van nieuwe onderdelen. ECMAScript 4 is dus nooit verschenen en er is geen browser die het ondersteunt. Men is direct verdergegaan met de ontwikkeling van ECMAScript 5. Wat is ECMAScript 2015? ECMAScript 2015 is een grote upgrade van JavaScript. In de taal zijn tal van nieuwe keywords en functies aanwezig. Nieuw zijn bijvoorbeeld keywords als let, const, class, super en meer. Ook kunt u gebruik maken van arrow functions en lambda /4

11 / ECMAScript 6 & TypeScript / expressions. Met ECMAScript 2015 maakt JavaScript een enorme stap voorwaarts en wordt de taal echt volwassen. JavaScript core Het is belangrijk om u te realiseren dat ECMAScript 2015 (net als ouderwets Java- Script) nog steeds bestaat uit een relatief kleine set kernopdrachten die worden uitgevoerd in een hosting environment. De kernopdrachten zijn gestandaardiseerd door ECMA. Dit zijn bijvoorbeeld var, let, for, while, if enzovoort. De hosting environment is in de meeste gevallen de browser. Maar JavaScript kan ook in andere omgevingen worden uitgevoerd. Denk aan Java- Script op de server (Node.js) of aan JavaScript in pdf, om interactieve pdf-documenten te maken. JavaScript en dus ook ECMAScript 2015 is niet slechts beperkt tot gebruik in de browser. Onderdelen van ECMAScript 2015 Een handig overzicht van alle onderdelen van ECMAScript 2015 is te vinden in de ECMAScript compatibility table, die te vinden is op kangax.github.io/compat-table/es6/. (Googel op de trefwoorden Kangax en es6, dan is het het eerste resultaat in delijst. De tabel uit afbeelding 1.1 is een prima naslagwerk en is als volgt opgebouwd: Bovenin kiest u een versie. In de afbeelding is ES6 geselecteerd; dit is ook de standaardselectie. Aan de linkerkant zie u welke features deel uitmaken van ECMAScript 6. Dat zijn bijvoorbeeld onderdelen als default function parameters, rest parameters en verder naar beneden zaken als arrow functions en class. Veel van deze onderdelen worden in dit boek besproken. /5

12 / Hoofdstuk 1 / Kennismaken met ECMAScript 2015 Afbeelding 1.1 De ECMAScript compatibility table geeft een overzicht van nieuwe JavaScript-features aan de linkerkant, en de mate waarin ze ondersteund worden door de verschillende browsers (de gekleurde blokjes). Aan de rechterkant ziet u vervolgens in welke mate de betreffende feature door de verschillende omgevingen wordt ondersteund. Er zijn secties Compilers/polyfills, Desktop browsers, Servers/runtimes en Mobile. Een groen blokje betekent dat de feature deels of volledig wordt ondersteund door de betreffende omgeving, een rood blokje betekent dat dit niet het geval is. In de categorie Desktop browsers is bijvoorbeeld te zien dat (op het moment van schrijven van dit boek) Internet Explorer 11 slechts 11% van de nieuwe features ondersteunde, maar dat Edge, de nieuwe browser van Microsoft, maar liefst 95% van de ECMAScript 6-features goed verwerkt. Ook Firefox scoort ruim boven de 90% en Chrome en Opera scoren 97%. /6

13 / ECMAScript 6 & TypeScript / Afbeelding 1.2 Bekijk hoe de verschillende desktop browsers scoren bij de ondersteuning van ES6-kenmerken. Kenmerken per feature Door een bepaalde feature te kiezen, kunt u van links naar rechts bekijken hoe deze feature wordt ondersteund. In afbeelding 1.3 is bijvoorbeeld te zien dat het nieuwe keyword class (zie hoofdstuk 3 en 4) door moderne browsers goed wordt verwerkt, maar dat mobiele browsers (Android, ios) het laten afweten. Dit betekent dat u class niet rechtstreeks kunt gebruiken in deze browsers. Afbeelding 1.3 Mobiele browsers scoren in het algemeen slecht op de ondersteuning van nieuwe ECMAScript 6-features. Kies boven in de tabel een ander versienummer (bijvoorbeeld of next) om te zien welke nieuwe mogelijkheden voor de toekomst zijn voorgesteld en hoe de ondersteuning van browsers en andere omgevingen op dit moment is. Waarschijnlijk knalt een tabel met allemaal rode vakjes u tegemoet. Deze ondersteuning wordt in de loop der jaren ingebouwd, met elke nieuwe browserof runtime-versie. /7

14 / Hoofdstuk 1 / Kennismaken met ECMAScript 2015 Afbeelding 1.4 U kunt alvast zien welke onderdelen de komende jaren aan JavaScript worden toegevoegd. Ondersteuning door browsers en runtimes is op dit moment uiteraard nog zeer beperkt. Nieuwe features toch gebruiken Als een vakje rood is weergegeven, betekent dit dat het niet door de aangegeven browser of runtime wordt ondersteund. Maar wat nu als u toch graag nieuwe onderdelen als class wilt gebruiken, terwijl uw publiek mogelijk beschikt over een oude browser (Internet Explorer 9, 10 of 11) of een smartphone met Android 4.4. Hoe zit dat dan? Moet u deze toevoegingen dan maar achterwege laten? Of erger nog, bij elke nieuwe eigenschap die u wilt toepassen urenlang in de tabel lopen zoeken en zelf een uitzonderingstabel opstellen? Gelukkig niet! Compilers en polyfills Als u een webapp ontwikkelt voor een intranet waarbij u zeker weet dat iedereen Edge gebruikt, of Chrome 50+, dan is er geen probleem. Gebruik zoveel ECMAScript 2015 als u wilt, want alle vakjes zijn groen. Maar in werkelijkheid wordt uw app waarschijnlijk door honderden of duizenden bezoekers gebruikt, die /8

15 / ECMAScript 6 & TypeScript / allemaal over andere apparaten en browserversies beschikken. Dan schieten compilers en polyfills u te hulp. Uitbreiding ECMAScript 2015 is een uitbreiding op het oorspronkelijke JavaScript. Er is dus 100% overlapping. Polyfills zijn kleine scripts of codefragmenten die kunnen worden toegevoegd aan een HTML-pagina om nieuwe functionaliteit ook in oude browsers beschikbaar te maken. Ze vullen letterlijk het gat op dat in de browser aanwezig is. Compilers zijn programma s die het moderne ECMAScript 2015 dat u schrijft, omzetten naar klassiek ECMAScript 5, dat in alle browsers kan worden gebruikt. Een andere naam voor een compiler is ook wel transpiler, omdat deze nieuwe code terug-compileert naar oude code. Afbeelding 1.5 De werking van transpilers en polyfills. ES6-code wordt omgezet naar voor de browser begrijpelijke ES5-code /9

16 / Hoofdstuk 1 / Kennismaken met ECMAScript 2015 Traceur, Babel en TypeScript Er zijn verschillende compilers/transpilers beschikbaar. De bekendste zijn: Traceur Een product van Google. Door traceur.js toe te voegen aan de pagina, kunt u verderop in de pagina ECMAScript 2015-features gebruiken als classes, arrow functions enzovoort. Ze worden ter plekke in de browser vertaald. Voor betere prestaties kunt u traceur ook gebruiken op de server, of in een Grunt/Gulp-workflow. Meer informatie over traceur is te vinden op github.com/google/traceur-compiler. Babel Ook Babel (spreek uit: Babbel, niet Beebel ) is een JavaScript-compiler. Het is een onafhankelijk opensourceproduct dat met configuratiescripts in hoge mate ingesteld kan worden. Veel mensen vinden de code die door Babel wordt gegenereerd beter leesbaar dan code die door traceur wordt gegenereerd, maar het gebruik en de configuratie van Babel 6 zijn lastig. Alles over Babel is te vinden op babeljs.io. Afbeelding 1.6 Babel is een bekende JavaScript-compiler, maar is lastiger in het gebruik. /10

17 / ECMAScript 6 & TypeScript / TypeScript En jawel, ook TypeScript is een JavaScript-compiler. U kunt er ECMAScript 6-code mee schrijven, die door TypeScript wordt omgezet naar ES5-code. TypeScript ondersteunt nog niet álle ECMAScript 2015-features (zie de compatibility table), maar wel voldoende en is relatief eenvoudig in het gebruik. Bovendien biedt het gebruik van TypeScript tal van andere voordelen. Daar komen we in de rest van het boek uiteraard nog uitgebreid op terug. Het algemene adres van TypeScript is typescriptlang.org. Afbeelding 1.7 TypeScript omschrijft zichzelf als: JavaScript that scales. Any browser, any host, any OS. Wat is TypeScript? We hebben in dit boek niet voor niets gekozen voor TypeScript. Het is meer dan alleen een JavaScript-compiler. Door TypeScript te schrijven krijgt u de beschikking over een serie mogelijkheden die voorheen alleen voor applicatieprogrammeurs (Java, C#, Pascal/Delphi) waren weggelegd. Op de website omschrijft team TypeScript de tool als JavaScript that scales. De door TypeScript gegenereerde JavaScript-code is beschikbaar voor elke browser en elk besturingssysteem. TypeScript zelf is opensourcesoftware. /11

18 / Hoofdstuk 1 / Kennismaken met ECMAScript 2015 Wie maakt TypeScript? TypeScript is oorspronkelijk afkomstig uit de stal van Microsoft. En als u vindt dat TypeScript behoorlijk wat overeenkomsten lijkt te hebben met C#, dan hebt u het goed gezien. TypeScript is namelijk ontwikkeld door Anders Hejlsberg, de man die ook aan de wieg stond van de programmeertaal C# (2000). Daarvóór heeft Hejlsberg ook de talen Delphi (1995) en Turbo Pascal (1983) geschreven. Een zeer invloedrijk programmeur dus. Meer over Hejlsberg is te vinden op en.wikipedia.org/wiki/anders_hejlsberg. TypeScript is nu echter opensourcesoftware, iedereen kan de broncode inzien en verbeteren. TypeScript is daarmee eigenlijk van ons allemaal. In het kort biedt TypeScript extra features in de vorm van data typing (oftewel: het datatype aangeven, dus afdwingen dat een bepaalde variabele van het type string, number, boolean of custom type is), type definition files om andere JavaScript-bibliotheken te kunnen gebruiken in een TypeScript-project, interfaces, enums, generics en nog veel meer. Uiteraard leest u hier veel meer over in de rest van het boek. Omdat TypeScript vooraf wordt omgezet naar JavaScript, worden fouten in de code al in een vroeg stadium ontdekt. Dat is een groot verschil met de huidige generatie JavaScript-code, waarmee fouten pas run-time (of via uitgebreide testscripts met tal van ifstatements), dus achteraf zichtbaar worden. Met TypeScript kunt u robuuste code schrijven die minder fouten bevat. Dit is uiteindelijk zowel voor de programmeur als voor de eindgebruiker een groot voordeel. /12

19 / ECMAScript 6 & TypeScript / Relatie tussen ES5, ECMAScript 2015 en TypeScript In afbeelding 1.8 is de relatie tussen het aloude ECMAScript 5, het nieuwe ECMAScript 6/ECMAScript 2015 en TypeScript goed te zien. Afbeelding 1.8 ECMAScript 2016 en TypeScript zijn beide supersets van gewoon JavaScript. Daarom kan elke geldige regel ES6 (of TypeScript) ook worden teruggebracht naar een geldige ES5-syntaxis. Leesbaarheid en vereenvoudiging van de code zijn belangrijke doelstellingen. In de kern van de cirkels staat ES5. Dit is een naar hedendaagse maatstaven beperkte set opdrachten, die echter goed worden ondersteund door alle omgevingen: zowel browsers, mobiele apparaten als server-runtimes. ES6/ECMAScript 2015 is een uitbreiding van ES5. Dit betekent dus dat er 100% overlapping bestaat. Elke geldige regel ES5 is ook geldig in ECMAScript Omgekeerd is dat uiteraard niet het geval, daarvoor zijn de compilers/transpilers nodig. Maar het is belangrijk te realiseren dat ES6 in alle gevallen een uitbreiding van ES5 is. Er zijn geen nieuwe syntaxisregels, geen nieuwe tekens die verboden zijn, al uw JavaScript-kennis blijft geldig. Deze wordt alleen uitgebreid met nieuwe mogelijkheden. /13

20 / Hoofdstuk 1 / Kennismaken met ECMAScript 2015 Alles is optioneel TypeScript breidt op zijn beurt ES5 en ES6 weer uit (met strikte typeringen, interfaces en al die andere zaken die we hierboven genoemd hebben). Oftewel: elke geldige regel ES5 is óók geldig in TypeScript. Dit is een groot voordeel, want het betekent opnieuw dat u geen afwijkende syntaxis of puntkomma s hoeft te leren. Alle JavaScript blijft geldig; er worden alleen nieuwe, extra mogelijkheden aan toegevoegd. Een ander kenmerk is dat zowel ES6 als TypeScript volledig optioneel is. Het werken met klassen, interfaces en zelfgedefinieerde typen is mogelijk (en het maakt uw leven als front-end programmeur een stuk aangenamer), maar het is geenszins verplicht. Wat is een JavaScript-fout? U weet waarschijnlijk dat alles in JavaScript van het type var is. Alle variabelen zijn loosely typed. U mag een statement schrijven als var myvar = Hello (myvar is nu impliciet van het type string). Verderop mag u vervolgens schrijven myvar = 10 (nu is myvar van het type number). In JavaScript is dit volledig geaccepteerd. TypeScript zal er echter over vallen en een compiler-error laten zien. Het script zal wel werken, maar waarschijnlijk is het ongewenst dat een variabele de ene keer een string en de andere keer een nummer bevat. TypeScript controleert dit soort zaken en waarschuwt u. Door alleen de bestandsextensie aan te passen van *.js naar *.ts wordt u al op dit soort fouten gewezen. U hoeft er geen regel code voor aan te passen. /14

21 / ECMAScript 6 & TypeScript / We zullen het zeker niet aanbevelen, maar ook zonder één regel TypeScript te schrijven kunt u desgewenst JavaScript-code aan de TypeScript-compiler aanbieden. Mochten er logische fouten in de bestaande JavaScript-code staan, dan worden deze ook opgemerkt door de TypeScript-compiler. Afbeelding 1.9 TypeScript controleert het type van variabelen. Door alleen de extensie aan te passen naar.ts krijgt u direct inzicht in dit soort logische fouten. Ze komen veel voor in JavaScript-apps. // test.ts var myvar = 10; myvar = hello ; // ts-error: Type string is not assignable to type number Overige mogelijkheden van ECMAScript 2015 en TypeScript komen in de rest van het boek uiteraard uitgebreid aan de orde. U kent nu echter de relatie tussen de technieken en weet waar u de begrippen kunt plaatsen in het landschap van webdevelopmenttechnieken. Benodigde voorkennis Dit boek maakt deel uit van de Web Development Library ( In elk deel wordt een op zichzelf staande techniek besproken die te maken heeft met webdevelopment. Andere, gerelateerde technieken worden bekend verondersteld. Zo betaalt u alleen voor datgene wat u echt nodig hebt. /15

22 / Hoofdstuk 1 / Kennismaken met ECMAScript 2015 In dit boek gaan we in op ECMAScript 2015 en TypeScript 1.8. TypeScript 2.0 is op het moment van schrijven van dit boek in bèta, maar bevat geen aanvullingen of wijzigingen die voor deze uitgave van belang zijn. ECMAScript 2015 en TypeScript zijn beide uitbreidingen op JavaScript, zoals u in de vorige paragraaf hebt gelezen. U kent JavaScript We gaan er dan ook van uit dat u JavaScript redelijk tot goed beheerst. U hebt al ervaring met het schrijven van JavaScript en eventueel het werken met aanvullende JavaScript-bibliotheken of -frameworks, zoals jquery of Angular. Voorkennis van jquery of Angular (of andere frameworks) is echter niet nodig. We gaan in dit boek niet in op zaken als variabelen, for- enwhile-lussen, voorwaardelijke statements (if) en dergelijke. Deze worden bekend verondersteld. Wat hoeft u niet te weten? Kennis van andere JavaScript-bibliotheken (zoals jquery, Backbone, Knockout) of -frameworks is niet nodig. Ook hoeft u niks te weten van serversided talen als PHP, Python, Ruby, Java of C#. Mocht u wel Java of C# kennen, dan zullen veel concepten in TypeScript u bekend voorkomen. Maar voorkennis van deze talen is niet per se nodig. Bovendien worden ECMAScript en TypeScript, zoals u inmiddels hebt begrepen, gebruikt in de context van een website of webapp. U moet daarom enige kennis hebben van HTML en CSS. U moet een basispagina met tags, attributen, console.log()- statements enzovoort goed kunnen schrijven en begrijpen. /16

23 / ECMAScript 6 & TypeScript / Tips voor meer lezen Kan uw HTML- of JavaScript -voorkennis wel een opfrisbeurt gebruiken? Lees dan eerst de volgende titels (van dezelfde auteur): Web Development Library JavaScript, ISBN Web Development Library HTML, ISBN Indeling van dit boek Dit boek bestaat uit twee delen. Hoofdstuk 1 tot en met 3 In deze hoofdstukken gaan we in op ECMAScript 2015/ES6. U leert op welke manier de standaard JavaScript/ES5-code wordt uitgebreid met nieuwe keywords en mogelijkheden. U schrijft gewoon JavaScript-code, die direct kan worden uitgevoerd in moderne browsers zoals Chrome, Firefox en Edge. Hoofdstuk 4 tot en met 7 Dit deel gaat in op TypeScript. De kennis uit de eerste hoofdstukken wordt dan bekend verondersteld. U leert hoe ES6-code verder wordt uitgebreid met TypeScript-specifieke kenmerken. Uw code moet eerst door de TypeScript-compiler bewerkt worden voordat hij uitvoerbaar is in de browser. Lees vooral de rest van dit hoofdstuk om hier alvast kort kennis mee te maken. /17

Inhoud. 1 Kennismaken met JavaScript 1. 2 Statements, gegevenstypen en variabelen 31. /ix

Inhoud. 1 Kennismaken met JavaScript 1. 2 Statements, gegevenstypen en variabelen 31. /ix Inhoud 1 Kennismaken met JavaScript 1 Een korte geschiedenis van JavaScript 2 Kernbegrip JavaScript core 5 Voorkennis 8 Ontwikkelhulpmiddelen voor JavaScript 9 JavaScript-debuggers 12 Uw eerste JavaScript

Nadere informatie

Welkom bij de Web Development Library

Welkom bij de Web Development Library Welkom bij de Web Development Library Geen enkel ander onderwerp staat de laatste jaren zo in de belangstelling als het ontwikkelen van goede websites en webapps. Bedrijven en organisaties nemen geen genoegen

Nadere informatie

Vakgroep CW KAHO Sint-Lieven

Vakgroep CW KAHO Sint-Lieven Vakgroep CW KAHO Sint-Lieven Objecten Programmeren voor de Sport: Een inleiding tot JAVA objecten Wetenschapsweek 20 November 2012 Tony Wauters en Tim Vermeulen tony.wauters@kahosl.be en tim.vermeulen@kahosl.be

Nadere informatie

Visual Basic.NET. Visual Basic.NET. M. den Besten 0.3 VB. NET

Visual Basic.NET. Visual Basic.NET. M. den Besten 0.3 VB. NET Visual Basic.NET M. den Besten 0.3 VB. NET Inhoud Voorwoord Deel 1 Visual Basic.NET 1.1 Inleiding...13 1.2 De programmeertaal Visual Basic.NET...14 1.3 Microsoft Visual Basic 2010 Express Edition...15

Nadere informatie

Lab Webdesign: Javascript 11 februari 2008 JAVASCRIPT

Lab Webdesign: Javascript 11 februari 2008 JAVASCRIPT H1: INLEIDING JAVASCRIPT Met HTML kun je fraaie webpagina's bouwen, alleen: ze zijn erg statisch. HTML is dan ook een pagina-beschrijvingstaal en geen echte programmeertaal. Om je homepagina interactief

Nadere informatie

Webinar Angular 2 26 November :00 21:00 uur CET

Webinar Angular 2 26 November :00 21:00 uur CET Webinar Angular 2 26 November 2015 20:00 21:00 uur CET Over Vijfhart Vijfhart sinds 1984 Guido de Vrught Manager opleidingen g.devrught@5hart.nl 2 Peter Kassenaar Over Peter Kassenaar: Trainer, auteur,

Nadere informatie

iprova Suite Systeemeisen iprova 5 Hosting

iprova Suite Systeemeisen iprova 5 Hosting iprova Suite Systeemeisen iprova 5 Hosting Let op Dit document bevat de systeemeisen voor versie 5.0 van de iprova Suite. Door nieuwe ontwikkelingen kunnen de systeemeisen voor iprova wijzigen. Controleer

Nadere informatie

Inhoud. Introductie tot de cursus

Inhoud. Introductie tot de cursus Inhoud Introductie tot de cursus 1 De functie van de cursus 7 2 De inhoud van de cursus 7 2.1 Voorkennis 7 2.2 Leerdoelen van de cursus 8 2.3 Opbouw van de cursus 8 3 Leermiddelen en wijze van studeren

Nadere informatie

Variabelen en statements in ActionScript

Variabelen en statements in ActionScript Ontwikkelen van Apps voor ios en Android Variabelen en statements in ActionScript 6.1 Inleiding Als we het in de informatica over variabelen hebben, bedoelen we een stukje in het geheugen van de computer

Nadere informatie

Kleine cursus PHP5. Auteur: Raymond Moesker

Kleine cursus PHP5. Auteur: Raymond Moesker Kleine cursus PHP5 Auteur: Raymond Moesker Kleine cursus PHP PHP is platform en CPU onafhankelijk, open source, snel, heeft een grote userbase, het is object georiënteerd, het wordt omarmd door grote bedrijven

Nadere informatie

DrICTVoip.dll v 2.1 Informatie en handleiding

DrICTVoip.dll v 2.1 Informatie en handleiding DrICTVoip.dll v 2.1 Informatie en handleiding Nieuw in deze versie : Koppeling voor web gebaseerde toepassingen (DrICTVoIPwebClient.exe) (zie hoofdstuk 8) 1. Inleiding Met de DrICTVoIP.DLL maakt u uw software

Nadere informatie

JavaScript. 0 - Wat is JavaScript? JavaScript toevoegen

JavaScript. 0 - Wat is JavaScript? JavaScript toevoegen 0 - Wat is JavaScript? JavaScript is hele andere koek dan Scratch. Het wordt ook door professionele programmeurs gebruikt. Doordat er veel mensen gebruik maken van JavaScript is er veel informatie over

Nadere informatie

van PSD naar JavaScript

van PSD naar JavaScript 2015 van PSD naar JavaScript F. Vonk versie 2 19-9-2015 inhoudsopgave 1. inleiding... - 2-2. ontwikkelomgeving... - 3-3. programmeerconcepten... - 4 - statement... - 4 - sequentie... - 4 - variabele en

Nadere informatie

Angular Best Practices Door Alex en Chris van Beek

Angular Best Practices Door Alex en Chris van Beek Angular Best Practices Door Alex en Chris van Beek Over ons Enthousiastelingen Software Architecten bij Luminis Arnhem B.V. Gespecialiseerd in Microsoft technologie:.net, Azure en Windows Twitter: @Beekje

Nadere informatie

icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous

icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous 2006-2007 Inhoudsopgave 1 2 1.1 Programmeertaal PHP5..................... 2 1.2 MySQL database......................... 3 1.3 Adobe Flash...........................

Nadere informatie

6 weken. jaren. AO MD ALA B periode 2 HTML CSS Javascript Tafels Rekenen website.docx Pagina 1 van 6

6 weken. jaren. AO MD ALA B periode 2 HTML CSS Javascript Tafels Rekenen website.docx Pagina 1 van 6 Opleiding Complexiteit Begeleiding Duur Advies timing Focus op Applicatieontwikkelaar Periode Ontwerp en realiseert Eind Niveau Weinig begeleiding 6 Periode, ALA B Kerntaak Ontwerpen van de applicatie,

Nadere informatie

Datatypes Een datatype is de sort van van een waarde van een variabele, veel gebruikte datatypes zijn: String, int, Bool, char en double.

Datatypes Een datatype is de sort van van een waarde van een variabele, veel gebruikte datatypes zijn: String, int, Bool, char en double. Algemeen C# Variabele Een variabele is een willekeurige waarde die word opgeslagen. Een variabele heeft altijd een datetype ( De soort waarde die een variabele bevat). Datatypes Een datatype is de sort

Nadere informatie

Project plan. Erwin Hannaart Sander Tegelaar 61849 62407

Project plan. Erwin Hannaart Sander Tegelaar 61849 62407 Project plan Erwin Hannaart Sander Tegelaar 61849 62407 I4C2 I4C1 1 Inhoudsopgave Doel en doelgroep van het project... 3 Beschrijving van het project... 4 Benodigde materialen... 5 Te verwachten resultaten,

Nadere informatie

Verder zijn er de nodige websites waarbij voorbeelden van objectgeoriënteerd PHP (of Objec Oriented PHP, OO PHP) te vinden zijn.

Verder zijn er de nodige websites waarbij voorbeelden van objectgeoriënteerd PHP (of Objec Oriented PHP, OO PHP) te vinden zijn. Objectgeoriënteerd PHP (versie 5) Kennisvereisten: Ervaring met programmeren in PHP met MySQL Je weet wat een class of klasse is Je weet wat een instantie van een klasse (een object) is Je weet wat een

Nadere informatie

Meehelpen met de ontwikkeling van nieuwe of verbetering van bestaande spellen. Pag. 1 www.edubas.nl

Meehelpen met de ontwikkeling van nieuwe of verbetering van bestaande spellen. Pag. 1 www.edubas.nl Meehelpen met de ontwikkeling van nieuwe of verbetering van bestaande spellen. Pag. 1 Versie 1.0 februari 2015 Start-versie Over dit document In dit document probeer is duidelijk te maken hoe de spellen

Nadere informatie

Informatica. Objectgeörienteerd leren programmeren. Van de theorie met BlueJ tot een spelletje met Greenfoot... Bert Van den Abbeele

Informatica. Objectgeörienteerd leren programmeren. Van de theorie met BlueJ tot een spelletje met Greenfoot... Bert Van den Abbeele Informatica Objectgeörienteerd leren programmeren Van de theorie met BlueJ tot een spelletje met Greenfoot... Bert Van den Abbeele http://creativecommons.org/licenses/by-nc-nd/3.0/legalcode Objectgeörienteerd

Nadere informatie

Vakinhoudelijke uitwerking Keuzevak Applicatieontwikkeling van het profiel MVI vmbo beroepsgericht

Vakinhoudelijke uitwerking Keuzevak Applicatieontwikkeling van het profiel MVI vmbo beroepsgericht Vakinhoudelijke uitwerking Keuzevak Applicatieontwikkeling van het profiel MVI vmbo beroepsgericht Deze vakinhoudelijke uitwerking is ontwikkeld door het Redactieteam van de Schooleamenbank vmbo voor dit

Nadere informatie

Analyse Programmeertalen

Analyse Programmeertalen Analyse Programmeertalen De keuze van een programmeertaal mag niet onderschat worden. Het is dankzij deze taal dat de gebruiker interactie heeft met het complete systeem. Het is dus vanzelfsprekend dat

Nadere informatie

Dynamiek met VO-Script

Dynamiek met VO-Script Dynamiek met VO-Script Door Bert Dingemans DLA Ontwerp & Software bert@dla-architect.nl Inleiding Op de SDGN nieuwsgroep voor Visual Objects ontstond laatst een draad van berichten over de nieuwe libraries

Nadere informatie

Inhoud. Introductie tot de cursus

Inhoud. Introductie tot de cursus Inhoud Introductie tot de cursus 1 De functie van de cursus 7 2 De inhoud van de cursus 7 2.1 Voorkennis 7 2.2 Leerdoelen van de cursus 8 2.3 Opbouw van de cursus 8 3 Leermiddelen en wijze van studeren

Nadere informatie

Handleiding Website Laatste update: april 2014

Handleiding Website Laatste update: april 2014 Laatste update: april 2014 1. Google Search Tijdens de ontwikkeling van uw website werd er veel aandacht besteed aan optimalisatie voor zoekmachines zoals Google. Dit onder andere door de broncode technisch

Nadere informatie

Bottleball Onderzoeksverslag MovingMonsters. Uitgevoerd door Arno Classens a.classens@student.fontys.nl

Bottleball Onderzoeksverslag MovingMonsters. Uitgevoerd door Arno Classens a.classens@student.fontys.nl Bottleball Onderzoeksverslag MovingMonsters Uitgevoerd door Arno Classens a.classens@student.fontys.nl 1 1. Inhoudsopgave Wat? Bladzijde 1. Introductie 3 2. Methodologie 4 3. Resultaten 3.1 Oriëntatie

Nadere informatie

Java. Basissyllabus. Egon Pas

Java. Basissyllabus. Egon Pas Java Basissyllabus Egon Pas 2011 BeanPole bvba Gasmeterlaan 92-9000 Gent BTW BE 472.902.516 Tel: + 32 9 224 42 17 Fax: + 32 9 223 62 88 www.beanpole.be info@beanpole.be 1 Programmeren 1.1 Hoe werkt een

Nadere informatie

Producten en prijzen 2012

Producten en prijzen 2012 MBO Kantoorautomatisering Postbus 38 2410 AA Bodegraven Nederland Tel. 0172-65 09 83 Fax 0172-61 83 15 www.instruct.nl instruct@instruct.nl België www.instruct.be instruct@instruct.be Producten en prijzen

Nadere informatie

Knowledgeable Referenceable Personable Accountable Scalable

Knowledgeable Referenceable Personable Accountable Scalable Knowledgeable Referenceable Personable Accountable Scalable 1 WebForms en JavaBeans bij Essent Energie OGH presentatie 3 juli 2003 2 Agenda Inleiding Eenvoudige Java Bean in Web Forms Demo Meer complexe

Nadere informatie

Programmeren in Access met VBA

Programmeren in Access met VBA Programmeren in Access met VBA Kosten: 750,- excl. BTW per deelnemer Duur: 2 dagen Max Deelnemers: 8 U leert tijdens deze training alle concepten van de programmeertaal VBA (Visual Basic for Applications)

Nadere informatie

Programmeren in Access 2016 met VBA

Programmeren in Access 2016 met VBA Programmeren in Access 2016 met VBA Kosten: 750,- excl. BTW per deelnemer Duur: 2 dagen Max Deelnemers: 8 Je leert tijdens deze training alle concepten van de programmeertaal VBA (Visual Basic for Applications)

Nadere informatie

Grafisch ontwerp. Referenties. https://developers.google.com/webmasters/mobile-sites/ http://www.bluetrainmobile.com/mobile-showcase

Grafisch ontwerp. Referenties. https://developers.google.com/webmasters/mobile-sites/ http://www.bluetrainmobile.com/mobile-showcase Mobiel Datanose Op dit moment is mobiel datanose niet goed gedaan; je krijgt gewoon de site te zien zoals je het te zien krijgt op pc's of laptops. Maar vaak heb je het probleem dat je op je mobiel moet

Nadere informatie

emaxx Systeem eisen ManagementPortaal voor de ZakenMagazijn database

emaxx Systeem eisen ManagementPortaal voor de ZakenMagazijn database emaxx Systeem eisen ManagementPortaal voor de ZakenMagazijn database Datum: 25-09-2007 Auteur: ing. E.L. Floothuis Versie: 0.1 Status: Concept Kopersteden 22-4 Postbus 157 7500 AD Enschede Tel: 053 48

Nadere informatie

SYNTRA-WEST. Cursus OOP. Deel

SYNTRA-WEST. Cursus OOP. Deel SYNTRA-WEST Cursus OOP Deel Syntra-West voorheen VORMINGSINSTITUUT VOOR KMO Syntra-West Doorniksesteenweg 220 8500 Kortrijk Tel. 056/26.02.00 Fax 056/22.81.07 i Inhoudsopgave SYNTRA-WEST... 0 CURSUS OOP...

Nadere informatie

HANDLEIDING EXTERNE TOEGANG CURAMARE

HANDLEIDING EXTERNE TOEGANG CURAMARE HANDLEIDING EXTERNE TOEGANG CURAMARE Via onze SonicWALL Secure Remote Access Appliance is het mogelijk om vanaf thuis in te loggen op de RDS omgeving van CuraMare. Deze handleiding beschrijft de inlogmethode

Nadere informatie

SYNTRA-WEST. Initiatiecursus JAVA. Deel

SYNTRA-WEST. Initiatiecursus JAVA. Deel SYNTRA-WEST Initiatiecursus JAVA Deel Syntra-West Syntra-West (vroeger Vormingsinstituut West-Vlaanderen) Doorniksesteenweg 220 8500 Kortrijk Tel. 056/26.02.00 Fax 056/22.81.07 i Inhoudsopgave SYNTRA-WEST...

Nadere informatie

Handleiding Portaal Altrecht. https://portaal.altrecht.nl

Handleiding Portaal Altrecht. https://portaal.altrecht.nl Handleiding Portaal Altrecht https://portaal.altrecht.nl 1 Wat is het Altrecht het nieuwe portaal? 3 Eerst een Citrix client installeren 3 Aan welke eisen moet mijn computer voldoen om te kunnen telewerken:

Nadere informatie

Handleiding JCreator. Inhoud. Een Workspace en een eerste project maken

Handleiding JCreator. Inhoud. Een Workspace en een eerste project maken Handleiding JCreator Inhoud Een Workspace en een eerste project maken Een tweede project maken De editor van JCreator Aanpassen van de basis-directory Documentatie over klassen en methoden van de JDK Bestand

Nadere informatie

Inhoud. 1 Kennismaken met jquery 1. /ix

Inhoud. 1 Kennismaken met jquery 1. /ix Inhoud 1 Kennismaken met jquery 1 Wat is jquery? 2 jquery sinds 2006 3 jquery in een notendop 3 Waarom jquery gebruiken? 5 Versies van jquery 7 Afwegingen 8 Varianten van jquery 9 Indeling van dit boek

Nadere informatie

Handleiding: Telewerken op Windows

Handleiding: Telewerken op Windows Versie 1.0 Handleiding: Telewerken op Windows Verbinden en telewerken op de GGD@work desktop middels Citrix Workspace App Auteur(s): Automatisering Inleiding GGD Amsterdam biedt aan al haar medewerkers

Nadere informatie

Open Source Software. Bart van Dijk (b.van.dijk@hccnet.nl)

Open Source Software. Bart van Dijk (b.van.dijk@hccnet.nl) Open Source Software Bart van Dijk (b.van.dijk@hccnet.nl) Open Source Software (OSS) Wat is het Waarom willen we het wel (of niet) OSS voorbeelden Geschiedenis Licenties Ontwikkeling en ondersteuning Wat

Nadere informatie

Content Management Systeem Specifieke modules van het Steenstra CMS 2011

Content Management Systeem Specifieke modules van het Steenstra CMS 2011 Content Management Systeem Specifieke modules van het Steenstra CMS 2011 2. Overzicht en specificering van additionele modules Naast de basis implementatie is het Steenstra CMS systeem uit te breiden met

Nadere informatie

Inhoudsopgave Disclaimer... 3 Voorwoord... 4 Inleiding... 5 Het downloaden van XAMPP... 7 Het installeren van XAMPP... 8 Joomla installeren op

Inhoudsopgave Disclaimer... 3 Voorwoord... 4 Inleiding... 5 Het downloaden van XAMPP... 7 Het installeren van XAMPP... 8 Joomla installeren op 1 Inhoudsopgave Disclaimer... 3 Voorwoord... 4 Inleiding... 5 Het downloaden van XAMPP... 7 Het installeren van XAMPP.... 8 Joomla installeren op XAMPP... 15 Handige links... 16 2 Disclaimer Bij de samenstelling

Nadere informatie

BrowseAloud Plus: dé voorleestool op websites! 1

BrowseAloud Plus: dé voorleestool op websites! 1 BrowseAloud Plus: dé voorleestool op websites! 1 INFORMATIE VOOR COMMUNICATIEMANAGERS EN WEBMASTERS INHOUD Informatie voor communicatiemanagers en webmasters... 2 BrowseAloud Plus: dé voorleestool op websites!

Nadere informatie

Inleiding C++ Coding Conventions

Inleiding C++ Coding Conventions Inleiding C++ Coding Conventions Opleiding Bachelor of Science in Informatica, van de Faculteit Wetenschappen, Universiteit Antwerpen. Nota s bij de cursus voor academiejaar 2012-2013. Ruben Van den Bossche,

Nadere informatie

ArcGIS Mobile ADF. Smart Client Applicaties voor ArcGIS Server Eva Dienske, Wim Ligtendag

ArcGIS Mobile ADF. Smart Client Applicaties voor ArcGIS Server Eva Dienske, Wim Ligtendag ArcGIS Mobile ADF Smart Client Applicaties voor ArcGIS Server Eva Dienske, Wim Ligtendag Agenda Wat is de Mobile ADF? Architectuur Demo Wat is de mobile ADF? Ontwikkeltoolkit voor mobiele (Smart Client)

Nadere informatie

Onze website gebruikt cookies die ervoor zorgen dat de site naar behoren functioneert.

Onze website gebruikt cookies die ervoor zorgen dat de site naar behoren functioneert. Cookie statement Cookie statement Handybook gebruikt cookies om deze website te verbeteren. Bij het bezoeken van deze website, kunnen we cookies gebruiken om anonieme informatie te verzamelen. Deze cookies

Nadere informatie

Modulewijzer tirprog02/infprg01, programmeren in Java 2

Modulewijzer tirprog02/infprg01, programmeren in Java 2 Modulewijzer tirprog02/infprg01, programmeren in Java 2 W. Oele 17 november 2009 1 Inhoudsopgave 1 Inleiding 3 2 Studiehouding 3 3 Voorkennis 4 4 Inhoud van deze module 5 5 Leermiddelen 5 6 Theorie en

Nadere informatie

Javascript oefenblad 1

Javascript oefenblad 1 Leer de basis van Javascript. Javascript oefenblad 1 Niels van Velzen Javascript oefenblad 1 Pagina 2 Inleiding Javascript is niet altijd even makkelijk. Vooral aan het begin is het even wennen hoe de

Nadere informatie

Modulewijzer Tirdat01

Modulewijzer Tirdat01 Modulewijzer Tirdat01 W. Oele 25 augustus 2008 1 Inhoudsopgave 1 Inleiding en leerdoelen 3 2 Voorkennis 3 2.1 tirprg01 en tirprg02........................ 3 2.2 tirprg03.............................. 4

Nadere informatie

PRESTATIESITE WEBPAKKET

PRESTATIESITE WEBPAKKET PRESTATIESITE WEBPAKKET PRESTATIESITE Wij hebben al onze ervaring gebruikt om een gestandaardiseerd webpakket te ontwikkelen met een lay-out welke de focus heeft op leads en new business. Op deze wijze

Nadere informatie

Delft-FEWS & Web Services

Delft-FEWS & Web Services Delft-FEWS & Web Services Presentatie Delft-FEWS Gebruikers dag 2018 Marc van Dijk, Rudie Ekkelenkamp, Stef Hummel 5 Juni 2018 Delft-FEWS & (Web) Services 1. Delft-FEWS 2. Roadmap 3. Standaarden Verzamelen

Nadere informatie

Zelftest Inleiding Programmeren

Zelftest Inleiding Programmeren Zelftest Inleiding Programmeren Document: n0824test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST INLEIDING PROGRAMMEREN Deze

Nadere informatie

Joomla! 1.0 vs Joomla! 1.5

Joomla! 1.0 vs Joomla! 1.5 Joomla! 1.0 vs Joomla! 1.5 Met de komst van Joomla! 1.5 is de originele code van Mambo flink op de schop gegaan. Verbeteringen: Joomla! Administrator backend ondersteunt meerdere talen Ondersteuning voor

Nadere informatie

SEO advies plan. Tim Pieters M41T

SEO advies plan. Tim Pieters M41T SEO advies plan Tim Pieters M41T Inhoudsopgave -Inleiding -Stand van zaken -Optimalisatie -Resultaten -Toekomstige aanbevelingen Inleiding De website die zal worden behandeld in dit SEO plan is www.tp-media.design.

Nadere informatie

In dit hoofdstuk maak je kennis met PHP. Hoe werkt deze. programmeertaal? En hoe is het ontstaan? Ook leer je welke editors

In dit hoofdstuk maak je kennis met PHP. Hoe werkt deze. programmeertaal? En hoe is het ontstaan? Ook leer je welke editors 1. Over PHP 1.1 Inleiding In dit hoofdstuk maak je kennis met PHP. Hoe werkt deze programmeertaal? En hoe is het ontstaan? Ook leer je welke editors je kunt gebruiken om PHP-scripts te maken en hoe je

Nadere informatie

Correspondentie inzake overnemen of reproductie kunt u richten aan:

Correspondentie inzake overnemen of reproductie kunt u richten aan: Vrijwel alle namen van software- en hardwareproducten die in deze cursus worden genoemd, zijn tegelijkertijd ook handelsmerken en dienen dienovereenkomstig te worden behandeld. Alle rechten voorbehouden.

Nadere informatie

Offerte voor het bouwen van een website Klant: Ideefiks, IdeeKids

Offerte voor het bouwen van een website Klant: Ideefiks, IdeeKids Offerte voor het bouwen van een website Klant: Ideefiks, IdeeKids Consultant: Dirk Derom Inhoudstafel Algemene structuur van de website...6 Front pagina...6 Pagina IDEEFIKS/IDEEKIDS...6 Functionaliteit...10

Nadere informatie

A.C. Gijssen. 0.3 PHP en MySQL

A.C. Gijssen. 0.3 PHP en MySQL PHP en MySQL A.C. Gijssen 0.3 PHP en MySQL PHP en MySQL 0.4 Inhoudsopgave Voorwoord Deel 1 Over PHP 1.1 Inleiding...13 1.2 Wat is PHP?...14 1.3 De geschiedenis van PHP...15 1.4 Editor...16 1.5 PHP en websites...17

Nadere informatie

01/05. Websites Nederland over. Mobile marketing. Whitepaper #03/2013. Mabelie Samuels internet marketeer

01/05. Websites Nederland over. Mobile marketing. Whitepaper #03/2013. Mabelie Samuels internet marketeer 01/05 Websites Nederland over Mobile marketing Mabelie Samuels internet marketeer 02/05 Mobile marketing Kunt u zich uw eerste mobiele telefoon nog herinneren? Die van mij was een Motorola, versie onbekend,

Nadere informatie

React en React Native voor websites en apps

React en React Native voor websites en apps React en React Native voor websites en apps H A N S-PE T E R H ARMSEN HEEFT DI T GE SCH R E V EN IN APRI L 2017 Deze whitepaper is bedoeld voor product owners en beslissers. Hij gaat over React, een JavaScript

Nadere informatie

Programming Content Management Server 2002

Programming Content Management Server 2002 Met behulp van Content Management Server 2002 (CMS) kun je eenvoudig te onderhouden websites bouwen en beheren. De business driver van CMS is het gebruiksvriendelijk beheer van een website, in het bijzonder

Nadere informatie

Inhoud Inhoud. Over dit boek 7. 1 Eclipse IDE (Integrated Development Environment) 9. 2 Functionele specificatie 13

Inhoud Inhoud. Over dit boek 7. 1 Eclipse IDE (Integrated Development Environment) 9. 2 Functionele specificatie 13 5 Inhoud Inhoud Over dit boek 7 1 Eclipse IDE (Integrated Development Environment) 9 2 Functionele specificatie 13 3 Implementatie grafische gebruikersinterface 31 4 De klassen en methoden 57 5 Technische

Nadere informatie

Web building gevorderden: CSS & JavaScript. Karel Nijs 2008/11

Web building gevorderden: CSS & JavaScript. Karel Nijs 2008/11 Web building gevorderden: CSS & JavaScript Karel Nijs 2008/11 Webbuilding gevorderden les 3 JavaScript intro JavaScript invoegen JavaScript statements JavaScript popup berichten JavaScript functies JavaScript

Nadere informatie

NetBeans tutorial, Rik Eshuis, Kees Huizing versie 2.2 Augustus 2009

NetBeans tutorial, Rik Eshuis, Kees Huizing versie 2.2 Augustus 2009 NetBeans tutorial, Rik Eshuis, Kees Huizing versie 2.2 Augustus 2009 NetBeans is een IDE voor (o.a.) Java, een programma waarmee je Javaprogramma's kunt schrijven en uitvoeren. Deze tutorial bevat informatie

Nadere informatie

1. Kennismaken met Windows 10

1. Kennismaken met Windows 10 13 1. Kennismaken met Windows 10 Net als in bijna alle versies van Windows is in Windows 10 het bureaublad het beginscherm voor het werken op uw pc. Compleet met het populaire menu Start (ook wel startmenu

Nadere informatie

Foto web applicatie documentatie

Foto web applicatie documentatie Foto web applicatie documentatie Marijn Stuyfzand M31T PHP31 David Schol 1 Inhoudsopgave APPLICATIESTRUCTUUR MAPPENSTRUCTUUR FUNCTIONALITEITSSTRUCTUUR DE BASIS VOOR ELKE PAGINA DATABASE SERVER- SIDE EN

Nadere informatie

Inleiding Visual Basic en VBA. Karel Nijs 2009/01

Inleiding Visual Basic en VBA. Karel Nijs 2009/01 Inleiding Visual Basic en VBA Karel Nijs 2009/01 Leswijze Eerst wat theorie Begeleid met (korte) oefeningen Ms Excel 2003 Online hulp: http://www.ozgrid.com/vba/ http://msdn.microsoft.com/en-us/library/sh9ywfdk(vs.80).aspx

Nadere informatie

Je website (nog beter) beveiligen met HTTP-Security Headers

Je website (nog beter) beveiligen met HTTP-Security Headers Je website (nog beter) beveiligen met HTTP-Security Headers Wat is HTTP? Het HTTP (Hypertext Transfer Protocol) protocol is een vrij eenvoudig, tekst gebaseerd, protocol. Dit HTTP protocol regelt de communicatie

Nadere informatie

(Versie 1.5) THUISWERKPLEK INSTELLEN

(Versie 1.5) THUISWERKPLEK INSTELLEN (Versie 1.5) THUISWERKPLEK INSTELLEN Inhoud thuiswerkomgeving... 3 Installeren software op thuiswerkplek(eenmalig)... 5 Verbinding maken met de werkplek vanaf thuis... 9 Verbinding maken met de werkplek

Nadere informatie

Handleiding: Telewerken op MacOS

Handleiding: Telewerken op MacOS Versie 1.0 Handleiding: Telewerken op MacOS Verbinden en telewerken op de GGD@work desktop middels Citrix Workspace App Auteur(s): Automatisering Inleiding GGD Amsterdam biedt aan al haar medewerkers en

Nadere informatie

Handleiding Leveranciersportaal

Handleiding Leveranciersportaal ArcelorMittal Belgium Handleiding Leveranciersportaal 1. INHOUDSTAFEL 1. Inhoudstafel... 1 2. Benodigde instellingen voor gebruik portaal... 1 2.1. JavaScript... 1 2.2. Silverlight... 2 2.3. Browser...

Nadere informatie

Inhoudsopgave... 1 Disclaimer... 3 Voorwoord... 3 Inleiding... 5 Het downloaden van XAMPP... 7 Het installeren van XAMPP... 8 Joomla installeren op

Inhoudsopgave... 1 Disclaimer... 3 Voorwoord... 3 Inleiding... 5 Het downloaden van XAMPP... 7 Het installeren van XAMPP... 8 Joomla installeren op 1 Inhoudsopgave... 1 Disclaimer... 3 Voorwoord... 3 Inleiding... 5 Het downloaden van XAMPP... 7 Het installeren van XAMPP... 8 Joomla installeren op XAMPP... 14 Handige links... 15 2 Disclaimer Bij de

Nadere informatie

SportCTM 2.0 Sporter

SportCTM 2.0 Sporter SportCTM 2.0 Sporter APP Inloggen Dotcomsport heeft ter ondersteuning van de dagelijkse praktijk ook een APP ontwikkeld, om data invoer te vereenvoudigen. Deze APP ondersteunt de onderdelen; Agenda (invoer

Nadere informatie

Externe toegang met ESET Secure Authentication. Daxis helpdesk@daxis.nl Versie 2.0

Externe toegang met ESET Secure Authentication. Daxis helpdesk@daxis.nl Versie 2.0 Externe toegang met ESET Secure Authentication Daxis helpdesk@daxis.nl Versie 2.0 Inhoudsopgave: Inhoudsopgave:... 1 Inleiding:... 2 Stap 1: Download eenmalig Eset Secure Authentication op uw smartphone...

Nadere informatie

Voordat er optimaal gebruik gemaakt kan worden gemaakt van Magister 5 via het web, kan deze FAQ mogelijk van pas komen.

Voordat er optimaal gebruik gemaakt kan worden gemaakt van Magister 5 via het web, kan deze FAQ mogelijk van pas komen. Silverlight FAQ t.b.v. Magister 5 Voordat er optimaal gebruik gemaakt kan worden gemaakt van Magister 5 via het web, kan deze FAQ mogelijk van pas komen. Zie de algemene Microsoft Silverlight FAQ op: http://www.microsoft.com/silverlight/faq/

Nadere informatie

Workshop 2. Inhoud. 1. Foto s verkleinen 2. Hoe media embedden? 3. Tips en Trics 4. Google Analytics

Workshop 2. Inhoud. 1. Foto s verkleinen 2. Hoe media embedden? 3. Tips en Trics 4. Google Analytics Workshop 2 Inhoud 1. Foto s verkleinen 2. Hoe media embedden? 3. Tips en Trics 4. Google Analytics 1. Foto s verkleinen Er zijn een aantal opties om foto s te verkleinen. Zo zit er in het besturingssysteem

Nadere informatie

Games met Lua en Löve2D

Games met Lua en Löve2D Games met Lua en Löve2D Installatie instructies Pagina 1 van 19 1. Introductie In deze handleiding lopen we samen door alle stappen die nodig zijn om de juiste hulpmiddelen te installeren en zo snel mogelijk

Nadere informatie

Voor de database wordt een Access 2000 bestand gebruikt, met voorlopig 1 tabel:

Voor de database wordt een Access 2000 bestand gebruikt, met voorlopig 1 tabel: Eenvoudig voorbeeld. Er wordt verondersteld dat er met VS 2008 EXPRESS gewerkt wordt. Voor de database wordt een Access 2000 bestand gebruikt, met voorlopig 1 tabel: (Sommige schermafdrukken zijn afkomstig

Nadere informatie

MINICURSUS PHP. Op dit lesmateriaal is een Creative Commons licentie van toepassing Sebastiaan Franken en Rosalie de Klerk Bambara

MINICURSUS PHP. Op dit lesmateriaal is een Creative Commons licentie van toepassing Sebastiaan Franken en Rosalie de Klerk Bambara MINICURSUS PHP Op dit lesmateriaal is een Creative Commons licentie van toepassing. 2017-2018 Sebastiaan Franken en Rosalie de Klerk Bambara PHP Cursus Deze cursus is om de eerste stappen in de wereld

Nadere informatie

Workflow Verrijkte Documenten

Workflow Verrijkte Documenten Workflow Verrijkte Documenten Boudewijn Rempt Opgericht in 2007 in Duitsland Internationaal bedrijf met experts in Nederland, Duitsland, Denemarken, Zweden en het Verenigd Koninkrijk OpenDocument: actief

Nadere informatie

Als eerste bedankt voor het aanschaffen van deze PDF waarin ik je handige tips en trucs zal geven over het schrijven van een handleiding.

Als eerste bedankt voor het aanschaffen van deze PDF waarin ik je handige tips en trucs zal geven over het schrijven van een handleiding. Bedankt! Als eerste bedankt voor het aanschaffen van deze PDF waarin ik je handige tips en trucs zal geven over het schrijven van een handleiding. Graag zou ik je willen vragen mij een email te sturen

Nadere informatie

M o m e n t e e l v e r e i s t e b r o w s e r i n s t e l l i n g e n :

M o m e n t e e l v e r e i s t e b r o w s e r i n s t e l l i n g e n : Browserinstructie De softwareontwikkeling van de gebruikersinterface van easyjob houdt, op het moment van vrijgave van een nieuwe versie (release), rekening met de op dat moment actuele browserversies.

Nadere informatie

Responsive web applicaties op Oracle

Responsive web applicaties op Oracle APEX Responsive web applicaties op Oracle Spreker(s) : Datum : E-mail : Arian Macleane & Jacob Beeuwkes 06-06-2013 info@transfer-solutions.com WWW.TRANSFER-SOLUTIONS.COM Outline Trends APEX intro APEX

Nadere informatie

APPLICATIEBOUW 3E COLLEGE: OBJECT GEORIËNTEERD PROGRAMMEREN, METHODEN, PARAMETERS, SCOPE VAN VARIABELEN. Onderdeel van SmartProducts

APPLICATIEBOUW 3E COLLEGE: OBJECT GEORIËNTEERD PROGRAMMEREN, METHODEN, PARAMETERS, SCOPE VAN VARIABELEN. Onderdeel van SmartProducts APPLICATIEBOUW 3E COLLEGE: OBJECT GEORIËNTEERD PROGRAMMEREN, METHODEN, PARAMETERS, SCOPE VAN VARIABELEN Onderdeel van SmartProducts INHOUD COLLEGE 3 Scope van variabelen {3.9} Class ontwerpen en maken,

Nadere informatie

Module II - Enkele Begrippen

Module II - Enkele Begrippen Module II - Enkele Begrippen Wanneer we spreken over het Internet, het bekijken van websites, komen we al gauw een aantal begrippen tegen. Enkele van de veelgebruikte begrippen binnen de Internet wereld

Nadere informatie

Websitecursus deel 3 JavaScript

Websitecursus deel 3 JavaScript Websitecursus deel 3 JavaScript A Eskwadraat WebCie www@a-eskwadraat.nl 12 oktober 2015 Introductie Twee weken geleden HTML Vorige week CSS Deze week JavaScript Javascript JavaScript (ook wel JS) is een

Nadere informatie

Globale kennismaking

Globale kennismaking Globale kennismaking Kennismaking Tesla CMS 1. Dashboard 2. pagina beheer - pagina aanmaken - pagina aanpassen - pagina verwijderen - pagina seo opties - zichtbaarheid pagina 3. subpagina beheer - subpagina

Nadere informatie

Inhoudsopgave. Hoofdstuk 1: Ant...4

Inhoudsopgave. Hoofdstuk 1: Ant...4 Inhoudsopgave Hoofdstuk 1: Ant...4 1.1 Inleiding...4 1.2 Ant installeren...5 1.3 Ant gebruiken...7 1.3.1 Een project maken...7 1.3.2 Mijn eerste Ant-script...10 1.3.2.1 Projects...10 1.3.2.2 Targets...11

Nadere informatie

1 Kennismaken met Angular 1

1 Kennismaken met Angular 1 Inhoud 1 Kennismaken met Angular 1 Wat is Angular? 2 Versies van AngularJS en Angular 7 Angular-concepten 11 Architectuur van Angular-applicaties 18 Applicatie als boomstructuur van componenten 21 Benodigde

Nadere informatie

1 Een beetje theorie vooraf 1. Wat is een programma? 2 Hoe maakt u een programma? 3 IL-code en JIT-compiler 5

1 Een beetje theorie vooraf 1. Wat is een programma? 2 Hoe maakt u een programma? 3 IL-code en JIT-compiler 5 1 Een beetje theorie vooraf 1 Wat is een programma? 2 Hoe maakt u een programma? 3 IL-code en JIT-compiler 5 Voordelen combinatie compiler en interpreter 6 Het.NET Framework 9.NET en Java 9.NET, COM en

Nadere informatie

Vorig jaar in 5v cluster, tot en met OO hoofdstukken, geen problemen. Nu in mengcluster, tot OO hoofdstukken, wel problemen bij 4h leerlingen

Vorig jaar in 5v cluster, tot en met OO hoofdstukken, geen problemen. Nu in mengcluster, tot OO hoofdstukken, wel problemen bij 4h leerlingen Eerste programmeertaal Leren programmeren vs. een programmeertaal leren In Nijmegen: Algol68 als basis voor o.a. Modula-2 en C Voor Codi/Boxmeer: Pascal, Java, HTML/PHP Niet helemaal tevreden over Java

Nadere informatie

Vereiste kennis. 1 Java-editor. 2 Het compileren van een programma

Vereiste kennis. 1 Java-editor. 2 Het compileren van een programma 3 Vereiste kennis Dit boek richt zich op het leren programmeren door het oefenen met programmeercodes. Veel theorie komt in het begin niet aan de orde. Dat is een grote uitdaging want het is niet makkelijk

Nadere informatie

Handleiding NieuwsClipper

Handleiding NieuwsClipper Handleiding NieuwsClipper Versie 3.0 www.howardshome.com Fultonbaan 30 Telefoon +31 (0)30 6083 540 KvK 20093764 Postbus 1092 Fax +31 (0)30 6083 549 ABN AMRO 54.85.62.202 3430 BB Nieuwegein E-mail info@howardshome.com

Nadere informatie