JavaScript – eine kleine Einführung

Oft wird man aufgefordert, in seinem Browser Javascript zu aktivieren. Was bedeutet das?

Wenn Sie eine Website aufrufen, kommunizieren Sie – beziehungsweise Ihr Computer – mit einem Server. Das ist wie ein kleiner Minicomputer.

Und das Besondere daran ist: dieser kann irgendwo auf der Welt stehen. Es gehört zur Infrastruktur des Internets, das jeder Server darin über eine Adresse angesprochen werden kann.

Aber das Problematische daran ist: die Datenkommunikation kann eine Weile dauern. Denn Ihr Computer muss ziemlich viel Informationen mit dem Webserver austauschen. Wenn Sie sich zum Beispiel ein Buch ansehen wollen, muss dessen gesamter Inhalt auf Ihrem Computer verfügbar gemacht werden.

Nun stellen Sie sich vor, Sie wollen in beide Richtungen Informationen austauschen – also Sie schicken ein Datenpaket von Ihrem Computer auf den Server, dieser verarbeitet das und schickt die Antwort zurück.

Ein gutes Beispiel dafür ist das Buchen einer Reise: Sie machen Angaben, wann genau Sie reisen wollen, wohin, in welcher Art von Hotel Sie logieren wollen undsoweiter.

Selbst wenn der Server noch so schnell ist in der Verarbeitung der Daten – die Information muss immer durch den Flaschenhals des möglicherweise “langen” Weges zwischen Ihrem Computer und dem Server.

Nun stellen Sie sich vor, Sie stünden vor der Aufgabe, dies zu beschleunigen: Wie kann die Datenkommunikation so optimiert werden, dass eben nicht zuviel Zeit mit ihr verbracht wird?

Und nun denken Sie nach: Sie könnten versuchen, die Daten keine Umwege laufen zu lassen (wenn es welche gäbe). Oder Sie könnten versuchen, die Daten zu komprimieren. Oder Sie könnten sie beschleunigen.

All diese Wege sind ehrenwert und sicher auch teilweise gangbar. Aber es ist und bleibt so: der Abstand Server – Computer muss überwunden werden. Daran kommen Sie nicht vorbei.

Und irgendwann besinnen Sie sich aber und sagen: Was der Server kann, kann auch mein Computer: Daten verarbeiten!

Und das ist natürlich die allerbeste Lösung: Sie lassen erst gar keinen Datenstrom entstehen – jedenfalls keinen unnötigen. Sondern Sie verlagern möglichst viel der Datenverarbeitung auf den sogenannten Client. Das ist Ihr Computer.

Wie sieht das praktisch aus? Bleiben wir beim Beispiel der Reisebuchung. Sehen wir uns dazu einmal an, was denn genau die Datenverarbeitung macht: es müssen Flugdaten auf Verfügbarkeit geprüft werden. Dazu braucht man Angaben der Fluggesellschaften, die aber wiederum auf (anderen) Servern liegen.

Es ist also nicht ganz einfach, solche Informationen von Ihrem Computer verarbeiten zu lassen – also stehen wir wieder am Anfang?!

Nein. Denn jetzt kommen wir mal zu IHREN Informationen. Auch die müssen ja einfließen. Zum Beispiel ist für die Preisfindung und für diverse andere Dinge wichtig, Ihr Geburtsdatum zu kennen. So kann man beispielsweise Kinder von Erwachsenen unterscheiden. Also müssen Sie oft Datumsangaben machen. Das gilt übrigens auch für die Daten des Reisebeginns und -endes. Nun muss ein solches fiktives Reiseportal aber auch sicher gehen, dass Ihre Daten stimmen (soweit überprüfbar). Also wäre zum Beispiel die Angabe eines Reisebeginns am 31.02.2012 auf jeden Fall falsch. Und wenn Ihr Geburtsdatum als der 1.12.1608 angegeben wäre, läge auch der Verdacht nahe, dass Sie sich etwas zu alt dargestellt haben.

Und nun ahnen Sie, worauf es hinausläuft. Teil der Datenverarbeitung sind diverse Konsistenz- und Plausibilitätsprüfungen. Und die lässt man – bevor Sie das Datenpaket auf die weite Reise zum Server schicken – von Ihrem Computer vornehmen. Und die Computerprogramme, die so etwas machen sind – Sie ahnen nun auch das – in einer Sprache namens Javascript geschrieben.

Wenn Sie also aufgefordert werden, in Ihrem Browser Javascript zu aktivieren, dann wissen Sie nun: die Website möchte einen Teil der Arbeit auf Ihren Computer verlagern – damit alles für Sie schneller geht – und zwar viel schneller. Denn der lange Weg zum Server und zurück wurde für diesen Teil gar nicht erst angetreten.

Und nun kehren wir noch einmal zurück zur uns gestellten Aufgabe – eine Beschleunigung des Datenverkehrs zu erreichen. Die clientseitige Verarbeitung mit Javascript ist ein wichtiger Bestandteil. Wir können aber noch einen Schritt weitergehen: Wir können die Daten zerhacken in solche, die wir auf unserem Computer vorverarbeiten lassen (also im Beispiel unsere eigenen Angaben wie zum Beispiel das Geburtsdatum) einerseits, und solche zur serverseitigen Verarbeitung andererseits (Flugverfügbarkeiten).

Und mit dieser Aufteilung können wir parallel vorgehen: Während unser Computer mit der Vorprüfung der hauseigenen Teile beschäftigt wird, schicken wir die anderen Datenteile bereits auf den Server. Dann arbeiten beide zugleich – Server und Client. Diese Technologie heisst Ajax. Und sie dient ebenso zum Beschleunigen des Durchsatzes in Internet-Anwendungen.

Nun haben wir die schönen Seiten gesehen: Javascript und Ajax dienen der Geschwindigkeitserhöhung. Aber Sie bergen auch Tücken: Wer ein Javascript-Programm auf Ihrem Rechner installiert, kann Informationen bekommen – die, die Sie wie im Beispiel oben eingeben (also zum Beispiel die erwähnten Datumsangaben). Aber eben nicht nur. Man könnte sich ja noch für andere Teile Ihres Computers interessieren, zum Beispiel Ihre Passwortdateien oder Kontoauszüge.

Aber das ist wieder eine eigene Geschichte.

About Wolfgang Wagemann

Wolfgang Wagemann lebt im Rhein-Neckar-Raum.
This entry was posted in Für private Nutzer, Sprachen und Systeme and tagged , , . Bookmark the permalink.