01;;images/Aufgabe_Kurzvortrag.jpg;
Vorstellung von JavaScript, kostenfrei, leistungsstark ...
;*
02;aktuelle Generation;images/Generationen_JS.jpg; aktuelle Version ist die Version 2017, im Juni 2017 als "ECMAScript 2017" veröffentlicht
der als ECMAScript (ECMA 262) standardisierte Sprachkern von JavaScript beschreibt eine dynamisch typisierte, objektorientierte, aber klassenlose Skriptsprache
wird allen objektorientierten Programmierparadigmen gerecht, deren Deklaration ab ECMAScript 6 mit einer Syntax ermöglicht wird, wie sie ähnlich auch bei klassenbasierten Programmiersprachen üblich ist
es sollen jährliche Updates folgen nach dem Ende der Firma Netscape übernahm die Mozilla Foundation (Firefox) die Weiterentwicklung der Skriptsprache ;*
03;Sprachtyp;images/Ueberblick_JS.jpg; vollwertige Programmiersprache im Gegensatz zur Auszeichnungssprache HTML, flexible einsetzbar
Skriptsprachen sind Programmiersprachen, die vor allem für kleine Programme gedacht sind und meist über einen Interpreter ausgeführt werden. Sie verzichten oft auf Sprachelemente, deren Nutzen erst bei der Bearbeitung komplexerer Aufgaben zum Tragen kommt.
kann im Browser (clientseitig) und auf den Webserver (serverseitig) eingesetzt werden
DHTML, dynamisches HTML oder auch DOM-Scripting bezeichnen bestimmte Webdesign-Methoden, bei denen während der Anzeige einer Webseite diese selbst, ausgelöst durch Benutzereingaben, verändert wird
in JavaScript lässt sich je nach Bedarf objektorientiert, prozedural oder funktional programmieren, objektbasierend heißt es dazu im Lehrbuch S. 16
Programmierparadigmen unterscheiden sich durch ihre Konzepte für die Repräsentation von statischen (wie Objekte, Methoden, Variablen, Konstanten) und dynamischen (wie Zuweisungen, Kontrollfluss, Datenfluss) Programmelementen. Es können "viele Programmiersprachen mehrere Paradigmen gleichzeitig unterstützen" wie in JavaScript ;*
04;Entwicklung;images/Entwicklung_JS.jpg; JavaScript (kurz JS) ist eine Skriptsprache, die ursprünglich 1995 von Netscape für dynamisches HTML in Webbrowsern entwickelt wurde, um Benutzerinteraktionen auszuwerten, Inhalte zu verändern, nachzuladen oder zu generieren und so die Möglichkeiten von HTML und CSS zu erweitern .
heutiger Name der ursprünglich LiveScript genannten Sprache entstand 1996 aus einer Kooperation von Netscape mit Sun Microsystems. Deren Java-Applets, erstellt mit der gleichfalls 1995 veröffentlichten Programmiersprache Java, wurden mithilfe von LiveScript in den Netscape Navigator integriert. .
Um die Popularität von Java zu nutzen, wurde LiveScript in JavaScript umbenannt, obwohl die beiden Sprachen nur wenige Gemeinsamkeiten aufweisen. ;*
05;Typische Anwendungsgebiete von JavaScript;images/Ueberblick_JS.jpg;
JavaScript heute auch außerhalb von Browsern angewendet, so auch auf Servern und in Microcontrollern
als Skriptsprache für Spiele und Anwendungsprogramme eingesetzt, da der Sprachkern nur wenige Objekte enthält und dadurch der zur Ausführung von in JavaScript formulierten Skripten erforderliche Interpreter relativ klein gehalten werden kann
wird als Verkehrssprache in der Datenbank MongoDB eingesetzt
dynamische Manipulation von Webseiten über das Document Object Model
Plausibilitätsprüfung (Datenvalidierung) von Formulareingaben noch vor der Übertragung zum Server
Anzeige von Dialogfenstern
Senden und Empfangen von Daten, ohne dass der Browser die Seite neu laden muss (Ajax)
Vorschlagen von Suchbegriffen während der Eingabe
Werbebanner oder Laufschriften
Verschleierung von E-Mail-Adressen zur Bekämpfung von Spam
mehrere Frames auf einmal wechseln oder die Seite aus dem Frameset lösen
Schreib- und Lesezugriff auf Cookies und den Web Storage innerhalb des Browsers ;*
06;Vorzüge;images/AJAX_Prinzip.jpg; auf den Deklarationszwang von Variablen wird meist verzichtet, vorteilhaft zur schnellen Erstellung von kleinen Programmen, wie Taschenrechner, Währungsumrechner, Kalender…
Plausibilitätsprüfung (Datenvalidierung) von Formulareingaben z.B. die Postleitzahl besteht nur aus 5 Zahle bei deutschen Anschriften, das entlastet den Webserver
Darstellung von dynamischen Inhalten ohne Webserver oder spezielle Browsererweiterungen, wie die Ausgabe von Messdaten in Diagrammen
Skripte werden fast ausschließlich in Form von Quelltextdateienausgeliefert, um so ein einfaches Bearbeiten und Anpassen des Programms zu ermöglichen
Speicherung von Daten auf dem Client wie Cookies
Anpassung der Seiten und Inhalte an die Nutzergegebenheiten
Sandbox-Prinzip - Webanwendung innerhalb des Browsers isoliert ausgeführt ;*
07;Nachteile;images/Missbrauch_JS.jpg; Darstellung ist noch immer noch leicht unterschiedlich in den verschiedenen Browsern
Verschleiern von Internetadressen, auf die ein Link verweist Deaktivieren des Kontextmenüs, um zu erschweren, dass Bilder oder die gesamte Seite abgespeichert werden können
Deaktivieren der Kopierfunktion, um zu erschweren, dass Texte oder Bilder kopiert werden können
Unaufgeforderte (Werbe-)Pop-ups oder Pop-unders oder aufeinanderfolgende Dialogfenster, die den Benutzer behindern
Ungewolltes Schließen des Browserfensters
Ungewollte Größenänderung des Browserfensters
barrierearme Webseiten zeichnen sich dadurch aus, dass sie auch bei abgeschaltetem JavaScript möglichst uneingeschränkt nutzbar bleiben. Teilweise schränkt das deaktivierte JavaScript die Benutzbarkeit einer Webseite ein.
Maßnahmen, die an den Sicherheitseinstellungen des Browsers vorbei ein Wiedererkennen eines Benutzers bei einem späteren Besuch einer Website erlauben (siehe Anonymität im Internet)
JavaScript kann auch von Dritten missbraucht werden, etwa per XSS (Codeeinschleusung) ;*
08;;images/Abschluss_Danke.jpg; Vielen Dank für Ihre Aufmerksamkeit!