Ontwikkeling in JavaScript - cursus 39.500 wrijven. van IBS Training Center, training 40 uur, Datum 26 november 2023.
Gemengde Berichten / / November 28, 2023
Behandelde onderwerpen:
1. JavaScript-taal:
JavaScript-versies en -implementaties;
Toepassingsgebieden van JavaScript (browser, server, mobiele ontwikkeling);
Gegevenstypen: String, Number, Boolean (het concept van waar en onwaar);
Operators, prioriteit van operators;
Declaratie van variabelen: var, const, let;
Lussen: while, for, for … in, for …of;
Werken met cijfers en strings;
Nul- en ongedefinieerde waarden: verschillen en toepassingsdoeleinden;
Werken met de console;
Uitzonderingen in JavaScript.
2. JSON, objecten en arrays:
JSON-formaat, voorbeelden;
JSON.parse en stringify;
Objecten, werken met de klasse Object;
Objecten maken (met behulp van de letterlijke {}, de nieuwe operator, de create-methode);
Prototypische overerving, referentie __proto__;
Getters en setters;
De operator in en hasOwnProperty, het concept van opsombare eigenschappen;
toString() methode, waarbij de methode wordt aangeroepen en overschreven;
valueOf() methode, waarbij de methode wordt aangeroepen en overschreven;
Arrays maken: letterlijke waarden en nieuwe Array();
Automatische verandering van arraylengte;
Het verkrijgen en instellen van de lengte van de arraylengte, het afkappen van de array;
De methoden join() en concat() gebruiken;
Met behulp van de sorteermethode de sorteervolgorde van de array instellen;
Het gebruik van de slice- en splice-methoden;
Met behulp van push-, pop-, shift- en unshift-methoden: een stapel of wachtrij maken.
3.Werken met datums en tekenreeksen:
De nieuwe Date()-constructor gebruiken;
Inzicht in de computerweergave van datum als tijd met Epoch;
GetTime() en setTime() gebruiken;
Parseren van tekenreeksrepresentaties van datums;
Opties voor het maken van strings in JS: gebruik van enkele en dubbele aanhalingstekens;
String-interpolatie (string tussen apostrofs);
Ontsnappen aan speciale tekens in een string;
Tekenreeksaaneenschakeling, conversie naar hoofdletters en kleine letters;
Een subtekenreeks zoeken met indexOf() en lastIndexOf();
Een subtekenreeks selecteren met behulp van substring() en substr()
Gebruik de methoden include, EndsWith, startsWith.
4. JavaScript gebruiken in de browser: DOM-model:
Beheer van het browservenster, document, gebeurtenissen en styling (CSS-stijlen);
Het raamobject en zijn toepassingen;
JavaScript-code verbinden met een HTML-pagina;
De volgorde van uitvoering van scripts op de pagina;
Scriptcaching, CDN-servers, JavaScript gedwongen herladen;
Werken met links, JavaScript aan links koppelen;
De onload-gebeurtenis en het gebruik ervan;
XSS-aanvallen op de site;
Werken met de DOM: gebruik maken van venster, document, childNodes;
Een document manipuleren met behulp van de DOM: elementen maken, verwijderen, verplaatsen;
GetElementById(), getElementsByTagName(), getElementsByClassName() gebruiken om elementen op de pagina te vinden;
Werken met methoden en eigenschappen van HTMLDocument en HTMLElement.
5. Werken met gebeurtenissen in de browser:
Het concept van evenementenprogrammering;
Gebeurtenishandlers en luisteraars;
Handlers verbinden met addEventListener();
Eigenschappen en methoden van de klasse Event;
Voortplanting van gebeurtenissen naar boven (borrelen) en naar beneden (vastleggen);
Stop de verspreiding;
Venstergebeurtenissen;
Muis- en toetsenbordgebeurtenissen, speciale gebeurteniseigenschappen;
Vorm evenementen;
6. Werken met CSS en stijlen beheren:
CSS-standaard, basis CSS-eigenschappen;
Algemene stijlen en stijlen van individuele elementen;
Trapsgewijze stijlen;
CSS-kiezers;
CSS aanpassen met JavaScript;
Opvulling: marge, opvulling, rand;
Controle van de zichtbaarheid van elementen: zichtbaarheid en weergave;
Positionering van elementen: absoluut, vast, relatief, boven en links geplaatst;
Meeteenheden px, pt en andere;
Elementoverloop en regeling via de overflow-eigenschap;
Documentlagen beheren: eigenschap zIndex;
Animatie, beweging van elementen;
Werken met klassen, className instellen;
Werken met transparantie en transities;
querySelectorAll() methode.
7. Werken met modules in JavaScript, NPM pakketbeheerder, Webpack builder:
Redenen voor het gebruik van modules;
Exporteren vanuit module;
Importeren uit module;
Wederexport;
Werken met NPM, package.json-bestand;
map node_modules, pakketten downloaden met NPM;
Globale en lokale installatie van pakketten;
Webpack gebruiken om een project te bouwen;
CSS- en TypeScript-laders;
Configuratie webpack.config.js;
Bundelcreatie, compressie;
webpack-plug-ins;
Gebruik van oude modulariteitssystemen – CommonJS en AMD;
Met behulp van CommonsChunkPlugin, meerdere toegangspunten;
Hot-swappable HMR-modules.
8. Klassen en overerving in JavaScript:
Overerving prototype, referentie __proto__;
Object-prototype;
Gebruik instanceof;
Trefwoordklasse, klassen maken;
Zoekwoord super;
De methode Object.assign() gebruiken;
Met behulp van de Object.defineProperty() -methode;
Getters en setters;
Spread-operator voor het werken met objecten en arrays;
Een array en een object destructureren.
9. Functioneel programmeren in JavaScript:
Functioneert als variabelen;
Array-argumenten;
Functieklasse, call() en apply() methoden;
De methode bind(), die deze instelt en enkele parameters die bind gebruiken;
Sluitingen in JavaScript;
Waarden inkapselen met behulp van sluitingen;
Een functie creëren via de Functieconstructor: een string construeren;
Pijlfuncties, voorbeelden van hun toepassing;
Functionele arraymanipulatie: find, findIndex, filter;
Voorbeelden van het gebruik van map/filter/reduce om gegevens in een array te verwerken.
10. Onveranderlijkheid, testen, MVC-patroon:
Het concept van onveranderlijkheid, de voordelen ervan;
Veranderlijke en onveranderlijke methoden voor het wijzigen van objecten en arrays;
Concept en voordelen van Virtual DOM;
Onveranderlijke functies testen met Jest;
Memoriseren, de voordelen ervan;
Basisfouten en aanbevelingen bij het gebruik van functioneel programmeren;
MVC-patroon, creatie van gebruikersinterface;
Overzicht van de belangrijkste bibliotheken voor interface-ontwikkeling: Angular, React, Vue.
11. Asynchronie in JavaScript. Beloften:
Het concept en de noodzaak van asynchronie;
Werken met setTimeout, setInterval, clearTimeout;
Terugbelfuncties (callbacks);
Dit verlies je bij het werken met een callback-functie. Oplossingen (met behulp van bind-, pijlfuncties, enz.);
Het concept van beloften, het retourneren van een belofte vanuit een asynchrone functie;
Promise.all() methode, de toepassing ervan;
async/await-syntaxis, gebruiksscenario's, beperkingen;
Omgaan met noodsituaties: afwijzing van beloften, afhandeling van uitzonderingen voor asynchrone oproepen.
12. Werken met de server. HTTP-protocol. REST-diensten:
HTTP-protocol;
HTTP-headers en -methoden (GET, POST, PUT, DELETE, andere), gegevensoverdracht;
HTTP-servers (overzicht);
Reactiecodes van HTTP-server;
Formulieren gebruiken om gegevens in te dienen;
Gegevens overbrengen naar de server met behulp van AJAX;
REST-architectuur: voordelen en functies;
Implementatie van CRUD (Create/Read/Update/Delete operations) bij het werken met REST;
De functie fetch() gebruiken om gegevens te ontvangen en te verzenden;
Documenteren van REST-services met behulp van Swagger;
HATEOAS-concept, toepassing;
13. AXIOS-bibliotheek. WebSocket-protocol:
Vergelijking van de Axios-bibliotheek op hoog niveau en het gebruik van fetch();
GET- en POST-verzoeken in Axios;
Async/await gebruiken met Axios;
Foutafhandeling bij gebruik van Axios;
Een aanvraag annuleren via Axios;
WebSocket-protocol;
Voorbeelden van het gebruik van WebSocket, vergelijking met HTTP;
HTML-animatie;
Opmerking
Het cursusmateriaal wordt in het Engels gepresenteerd.