Entwicklung in JavaScript - Kurs 39.500 Rubel. vom IBS Training Center, Ausbildung 40 Stunden, Datum 26. November 2023.
Verschiedenes / / November 28, 2023
Behandelten Themen:
1. JavaScript-Sprache:
JavaScript-Versionen und -Implementierungen;
Einsatzgebiete von JavaScript (Browser, Server, mobile Entwicklung);
Datentypen: String, Zahl, Boolean (das Konzept von Wahrheit und Falschheit);
Operatoren, Operatorpriorität;
Deklaration von Variablen: var, const, let;
Schleifen: while, for, for … in, for …of;
Arbeiten mit Zahlen und Zeichenfolgen;
Null- und undefinierte Werte: Unterschiede und Anwendungszwecke;
Arbeiten mit der Konsole;
Ausnahmen in JavaScript.
2. JSON, Objekte und Arrays:
JSON-Format, Beispiele;
JSON.parse und stringify;
Objekte, Arbeiten mit der Object-Klasse;
Erstellen von Objekten (mithilfe des Literals {}, des neuen Operators, der Methode „create“);
Prototypische Vererbung, Referenz __proto__;
Getter und Setter;
Der in- und hasOwnProperty-Operator, das Konzept aufzählbarer Eigenschaften;
toString()-Methode, Aufrufen und Überschreiben der Methode;
valueOf()-Methode, Aufrufen und Überschreiben der Methode;
Arrays erstellen: Literale und new Array();
Automatische Änderung der Array-Länge;
Abrufen und Festlegen der Länge des Arrays, Abschneiden des Arrays;
Verwendung der Methoden join() und concat();
Mit der Sortiermethode die Sortierreihenfolge des Arrays festlegen;
Verwendung der Slice- und Splice-Methoden;
Verwenden von Push-, Pop-, Shift- und Unshift-Methoden: Erstellen eines Stapels oder einer Warteschlange.
3. Arbeiten mit Datumsangaben und Zeichenfolgen:
Verwendung des neuen Date()-Konstruktors;
Verständnis der Computerdarstellung von Datum als Zeit mit Epoch;
Mit getTime() und setTime();
Parsing-String-Darstellung von Datumsangaben;
Optionen zum Erstellen von Zeichenfolgen in JS: Verwendung von einfachen und doppelten Anführungszeichen;
String-Interpolation (String in Apostrophen);
Sonderzeichen in einer Zeichenfolge maskieren;
String-Verkettung, Konvertierung in Groß- und Kleinschreibung;
Suchen eines Teilstrings mit indexOf() und lastIndexOf();
Auswählen eines Teilstrings mit substring() und substr()
Verwendung der Methoden „Includes“, „EndsWith“ und „StartsWith“.
4. Verwendung von JavaScript im Browser: DOM-Modell:
Verwalten des Browserfensters, des Dokuments, der Ereignisse und des Stils (CSS-Stile);
Das Fensterobjekt und seine Verwendung;
JavaScript-Code mit einer HTML-Seite verbinden;
Die Reihenfolge der Ausführung von Skripten auf der Seite;
Skript-Caching, CDN-Server, erzwungenes Neuladen von JavaScript;
Mit Links arbeiten, JavaScript mit Links verbinden;
Das Onload-Ereignis und seine Verwendung;
XSS-Angriffe auf die Website;
Arbeiten mit dem DOM: Verwendung von window, document, childNodes;
Bearbeiten eines Dokuments mithilfe des DOM: Elemente erstellen, löschen, verschieben;
Verwenden von getElementById(), getElementsByTagName(), getElementsByClassName() zum Suchen von Elementen auf der Seite;
Arbeiten mit Methoden und Eigenschaften von HTMLDocument und HTMLElement.
5. Arbeiten mit Ereignissen im Browser:
Das Konzept der Eventprogrammierung;
Event-Handler und Listener;
Handler mit addEventListener(); verbinden;
Eigenschaften und Methoden der Event-Klasse;
Ausbreitung von Ereignissen nach oben (Sprudeln) und nach unten (Einfangen);
Stoppen Sie die Ausbreitung;
Fensterereignisse;
Maus- und Tastaturereignisse, spezielle Ereigniseigenschaften;
Formularereignisse;
6. Mit CSS arbeiten und Stile verwalten:
CSS-Standard, grundlegende CSS-Eigenschaften;
Allgemeine Stile und Stile einzelner Elemente;
Kaskadierende Stile;
CSS-Selektoren;
CSS mit JavaScript ändern;
Polsterung: Rand, Polsterung, Rand;
Steuern der Sichtbarkeit von Elementen: Sichtbarkeit und Anzeige;
Positionierung der Elemente: absolut, fest, relativ, Einstellung oben und links;
Maßeinheiten px, pt und andere;
Elementüberlauf und Steuerung über die Overflow-Eigenschaft;
Dokumentebenen verwalten: zIndex-Eigenschaft;
Animation, Bewegung von Elementen;
Mit Klassen arbeiten, className festlegen;
Arbeiten mit Transparenz und Übergängen;
querySelectorAll()-Methode.
7. Arbeiten mit Modulen in JavaScript, NPM-Paketmanager, Webpack-Builder:
Gründe für den Einsatz von Modulen;
Export aus Modul;
Aus Modul importieren;
Wiederexport;
Arbeiten mit NPM, Datei package.json;
Ordner „node_modules“, Herunterladen von Paketen mit NPM;
Globale und lokale Installation von Paketen;
Verwenden von Webpack zum Erstellen eines Projekts;
CSS- und TypeScript-Loader;
Konfiguration webpack.config.js;
Bundle-Erstellung, Komprimierung;
Webpack-Plugins;
Verwendung alter Modularitätssysteme – CommonJS und AMD;
Mit CommonsChunkPlugin mehrere Einstiegspunkte;
Hot-Swap-fähige HMR-Module.
8. Klassen und Vererbung in JavaScript:
Prototypenvererbung, Referenz __proto__;
Objektprototyp;
Mit der Instanz von;
Schlüsselwortklasse, Klassen erstellen;
Stichwort super;
Verwenden der Object.assign()-Methode;
Verwenden der Methode Object.defineProperty();
Getter und Setter;
Spread-Operator zum Arbeiten mit Objekten und Arrays;
Destrukturieren eines Arrays und eines Objekts.
9. Funktionale Programmierung in JavaScript:
Funktioniert als Variable;
Array-Argumente;
Funktionsklasse, Methoden call() und apply();
Die bind()-Methode, die diesen und einige der Parameter mit bind festlegt;
Verschlüsse in JavaScript;
Kapselung von Werten mithilfe von Verschlüssen;
Erstellen einer Funktion über den Funktionskonstruktor: Erstellen einer Zeichenfolge;
Pfeilfunktionen, Beispiele für ihre Anwendung;
Funktionale Array-Manipulation: find, findIndex, filter;
Beispiele für die Verwendung von Map/Filter/Reduce zur Verarbeitung von Daten in einem Array.
10. Unveränderlichkeit, Tests, MVC-Muster:
Das Konzept der Unveränderlichkeit, seine Vorteile;
Veränderliche und unveränderliche Methoden zum Ändern von Objekten und Arrays;
Konzept und Vorteile von Virtual DOM;
Testen unveränderlicher Funktionen mit Jest;
Auswendiglernen, seine Vorteile;
Grundlegende Fehler und Empfehlungen bei der Verwendung funktionaler Programmierung;
MVC-Muster, Erstellung von Benutzeroberflächen;
Übersicht über die wichtigsten Bibliotheken für die Schnittstellenentwicklung: Angular, React, Vue.
11. Asynchronität in JavaScript. Versprechen:
Das Konzept und die Notwendigkeit der Asynchronität;
Arbeiten mit setTimeout, setInterval, clearTimeout;
Rückruffunktionen (Callbacks);
Dies geht verloren, wenn mit einer Rückruffunktion gearbeitet wird. Lösungen (mithilfe von Bind-, Pfeilfunktionen usw.);
Das Konzept der Versprechen, die ein Versprechen von einer asynchronen Funktion zurückgeben;
Promise.all()-Methode, ihre Anwendung;
async/await-Syntax, Anwendungsfälle, Einschränkungen;
Umgang mit Notfallsituationen: Promise Reject, Ausnahmebehandlung für asynchrone Aufrufe.
12. Arbeiten mit dem Server. HTTP-Protokoll. REST-Dienste:
HTTP-Protokoll;
HTTP-Header und -Methoden (GET, POST, PUT, DELETE, andere), Datenübertragung;
HTTP-Server (Übersicht);
Antwortcodes des HTTP-Servers;
Verwendung von Formularen zur Übermittlung von Daten;
Übertragen von Daten an den Server mithilfe von AJAX;
REST-Architektur: Vorteile und Funktionen;
Implementierung von CRUD (Create/Read/Update/Delete-Operationen) bei der Arbeit mit REST;
Verwenden der Funktion fetch() zum Empfangen und Senden von Daten;
Dokumentation von REST-Diensten mit Swagger;
HATEOAS-Konzept, Anwendung;
13. AXIOS-Bibliothek. WebSocket-Protokoll:
Vergleich der High-Level-Axios-Bibliothek und der Verwendung von Low-Level-fetch();
GET- und POST-Anfragen in Axios;
Verwendung von async/await mit Axios;
Fehlerbehandlung bei Verwendung von Axios;
Eine Anfrage mit Axios stornieren;
WebSocket-Protokoll;
Beispiele für die Verwendung von WebSocket, Vergleich mit HTTP;
HTML-Animation;
Notiz
Die Kursmaterialien werden auf Englisch präsentiert.