JavaScripti arendus - kursus 39 500 hõõruda. IBS Koolituskeskusest, koolitus 40 tundi, Kuupäev 26.11.2023.
Varia / / November 28, 2023
Käsitletavad teemad:
1. JavaScripti keel:
JavaScripti versioonid ja teostused;
JavaScripti kasutusvaldkonnad (brauser, server, mobiiliarendus);
Andmetüübid: String, Number, Boolean (tõe ja väära mõiste);
Operaatorid, operaatori eelistus;
Muutujate deklareerimine: var, const, let;
Silmused: while, for, for … in, for …of;
Töö numbrite ja stringidega;
Null- ja määratlemata väärtused: erinevused ja rakenduse eesmärgid;
Konsooliga töötamine;
Erandid JavaScriptis.
2. JSON, objektid ja massiivid:
JSON-vorming, näited;
JSON.parse ja stringify;
Objektid, töö klassiga Object;
Objektide loomine (kasutades literaali {}, uut operaatorit, loomismeetodit);
Prototüüpiline pärand, viide __proto__;
Getterid ja setterid;
In ja hasOwnProperty operaator, loendatavate omaduste mõiste;
meetod toString(), meetodi kutsumine ja alistamine;
valueOf() meetod, meetodi kutsumine ja alistamine;
Massiivide loomine: literaalid ja uus Array();
Massiivi pikkuse automaatne muutmine;
Massiivi pikkuse saamine ja pikkuse määramine, massiivi kärpimine;
Join() ja concat() meetodite kasutamine;
Sorteerimismeetodi abil massiivi sortimisjärjestuse määramine;
Slice ja splice meetodite kasutamine;
Push, pop, shift, unshift meetodite kasutamine: virna või järjekorra loomine.
3. Kuupäevade ja stringidega töötamine:
Kasutades uut Date() konstruktorit;
Kuupäeva kui kellaaja arvutiesituse mõistmine Epochiga;
Kasutades getTime() ja setTime();
Kuupäevade esituse sõelumine;
JS-is stringide loomise võimalused: ühe- ja topeltjutumärkide kasutamine;
Stringi interpolatsioon (string apostroofides);
Erimärkide põgenemine stringis;
Stringide ühendamine, teisendamine suur- ja väiketähtedeks;
Alamstringi leidmine kasutades indexOf() ja lastIndexOf();
Alamstringi valimine substring() ja substr() abil
Kasutades meetodeid include, endsWith, startsWith.
4. JavaScripti kasutamine brauseris: DOM-mudel:
Brauseriakna, dokumendi, sündmuste ja stiili haldamine (CSS-stiilid);
Aknaobjekt ja selle kasutusalad;
JavaScripti koodi ühendamine HTML-lehega;
skriptide täitmise järjekord lehel;
Skripti vahemällu salvestamine, CDN-serverid, JavaScripti sundlaadimine;
Töö linkidega, JavaScripti ühendamine linkidega;
Laadimissündmus ja selle kasutamine;
XSS-rünnakud saidil;
DOM-iga töötamine: akna, dokumendi, lapsesõlmede kasutamine;
Dokumendiga manipuleerimine DOM-i abil: elementide loomine, kustutamine, teisaldamine;
Kasutades getElementById(), getElementsByTagName(), getElementsByClassName() lehel elementide leidmiseks;
Töötamine HTMLDocumenti ja HTMLElementi meetodite ja omadustega.
5. Sündmustega töötamine brauseris:
Sündmuste programmeerimise kontseptsioon;
Sündmuste juhid ja kuulajad;
Käsitlejate ühendamine kasutades addEventListener();
Klassi Event omadused ja meetodid;
Sündmuste levitamine üles (mullitamine) ja alla (jäädvustamine);
Peatage levik;
Aknasündmused;
Hiire ja klaviatuuri sündmused, sündmuste eriomadused;
Vormiüritused;
6. CSS-iga töötamine ja stiilide haldamine:
CSS-standard, CSS-i põhiomadused;
Üldised stiilid ja üksikute elementide stiilid;
Kaskaadstiilid;
CSS-selektorid;
CSS-i muutmine JavaScriptiga;
Polster: veeris, polsterdus, ääris;
Elementide nähtavuse juhtimine: nähtavus ja kuvamine;
Elementide positsioneerimine: absoluutne, fikseeritud, suhteline, seadistus ülemine ja vasak;
Mõõtühikud px, pt ja teised;
Elemendi ülevool ja juhtimine ülevoolu omaduse kaudu;
Dokumendikihtide haldamine: zIndexi omadus;
Animatsioon, elementide liikumine;
Klassidega töötamine, klassiNimi seadmine;
Töö läbipaistvuse ja üleminekutega;
querySelectorAll() meetod.
7. Moodulitega töötamine JavaScriptis, NPM-i paketihalduris, veebipaketi koostajas:
Moodulite kasutamise põhjused;
Ekspordi moodulist;
Import moodulist;
Reeksport;
NPM-i, package.json failiga töötamine;
kaust node_modules, pakettide allalaadimine NPM-i abil;
Pakettide globaalne ja kohalik paigaldamine;
Veebipaketi kasutamine projekti koostamiseks;
CSS- ja TypeScript-laadurid;
Seadistamine webpack.config.js;
Kimpude loomine, tihendamine;
veebipaketi pistikprogrammid;
Vanade modulaarsüsteemide kasutamine – CommonJS ja AMD;
CommonsChunkPlugini kasutamine, mitu sisenemispunkti;
Kuumalt vahetatavad HMR moodulid.
8. Klassid ja pärand JavaScriptis:
Prototüübi pärand, viide __proto__;
Objekti prototüüp;
Kasutades instanceof;
Märksõna klass, klasside loomine;
Märksõna super;
Kasutades Object.assign() meetodit;
Kasutades Object.defineProperty() meetodit;
Getterid ja setterid;
Spread operaator objektide ja massiividega töötamiseks;
Massiivi ja objekti destruktureerimine.
9. Funktsionaalne programmeerimine JavaScriptis:
Funktsioonid muutujatena;
Massiivi argumendid;
Funktsiooniklass, meetodid call() ja apply();
Meetod bind(), mis määrab selle ja mõned parameetrid bind abil;
Sulgemised JavaScriptis;
Väärtuste kapseldamine sulgurite abil;
Funktsiooni loomine Function konstruktori kaudu: stringi konstrueerimine;
Noolefunktsioonid, nende rakendamise näited;
Funktsionaalse massiiviga manipuleerimine: find, findIndex, filter;
Näited kaardi/filtri/vähendamise kasutamisest massiivi andmete töötlemiseks.
10. Muutumatus, testimine, MVC muster:
Muutumatuse mõiste, selle eelised;
Muutuvad ja muutumatud meetodid objektide ja massiivide muutmiseks;
Virtuaalse DOM-i kontseptsioon ja eelised;
Muutumatute funktsioonide testimine Jesti abil;
Memoiseerimine, selle eelised;
Põhilised vead ja soovitused funktsionaalse programmeerimise kasutamisel;
MVC muster, kasutajaliidese loomine;
Ülevaade peamistest liidese arendamise teekidest: Angular, React, Vue.
11. Asünkroonsus JavaScriptis. Lubadused:
Asünkroonsuse mõiste ja vajalikkus;
Töötamine funktsioonidega setTimeout, setInterval, clearTimeout;
Tagasihelistamise funktsioonid (tagasihelistamised);
Selle kaotamine tagasihelistamisfunktsiooniga töötades. Lahendused (kasutades sidumis-, noolefunktsioone jne);
Lubaduste mõiste, lubaduse tagastamine asünkroonsest funktsioonist;
Promise.all() meetod, selle rakendus;
asünkroon/oota süntaks, kasutusjuhud, piirangud;
Hädaolukordade käsitlemine: lubaduse tagasilükkamine, asünkroonsete kõnede erandite käsitlemine.
12. Töötamine serveriga. HTTP protokoll. REST teenused:
HTTP-protokoll;
HTTP päised ja meetodid (GET, POST, PUT, DELETE jt), andmeedastus;
HTTP serverid (ülevaade);
HTTP-serveri vastusekoodid;
Vormide kasutamine andmete esitamiseks;
Andmete edastamine serverisse AJAX-i abil;
REST arhitektuur: eelised ja omadused;
CRUD (Create/Read/Update/Delete operatsioonid) juurutamine RESTiga töötamisel;
Funktsiooni fetch() kasutamine andmete vastuvõtmiseks ja saatmiseks;
REST-teenuste dokumenteerimine Swaggeri abil;
HATEOAS kontseptsioon, rakendus;
13. AXIOS raamatukogu. WebSocketi protokoll:
Kõrgetasemelise Axiose teegi ja madalatasemelise fetch() kasutamise võrdlus;
GET ja POST päringud Axios;
Asünkroon/oota kasutamine koos Axiosega;
Vigade käsitlemine Axiose kasutamisel;
Päringu tühistamine Axiose abil;
WebSocketi protokoll;
Näited WebSocketi kasutamisest, võrdlus HTTP-ga;
HTML-animatsioon;
Märge
Kursuse materjalid esitatakse inglise keeles.