E-Book, Deutsch, 361 Seiten
Reihe: Xpert.press
Jäger Ajax in der Praxis
2008
ISBN: 978-3-540-69334-5
Verlag: Springer Berlin Heidelberg
Format: PDF
Kopierschutz: 1 - PDF Watermark
Grundlagen, Konzepte, Lösungen
E-Book, Deutsch, 361 Seiten
Reihe: Xpert.press
ISBN: 978-3-540-69334-5
Verlag: Springer Berlin Heidelberg
Format: PDF
Kopierschutz: 1 - PDF Watermark
Ajax machte das Web zu einer Plattform für Anwendungssoftware und verfügt über ein eindrucksvolles Potenzial. Dieses Buch bietet einen gründlichen und verständlichen Einstieg in die Technologie. Hier profitieren alle Profis, die bereits Web-Anwendungen entwickeln und sich noch nicht mit Ajax befasst haben, aber auch traditionelle Software-Entwickler, die den Sprung ins Web machen möchten. Der Autor vermittelt die Konzepte anhand praxisnaher Beispiele, spricht häufige Probleme an und stellt bewährte Lösungen vor. Sein Fachbuch ist gleichermaßen ein Nachschlagewerk, das die tägliche Arbeit mit Ajax erleichtert. Die technischen Grundlagen und Konzepte sind ergänzt um eine umfassende Auseinandersetzung mit den Themen Sicherheit, Usability und Barrierefreiheit.
Autoren/Hrsg.
Weitere Infos & Material
1;Vorwort;6
2;Inhaltsverzeichnis;8
3;1 Einleitung;13
3.1;1.1 Über dieses Buch;13
3.2;1.2 Aufbau;14
3.3;1.3 Arbeiten mit diesem Buch;15
3.4;1.4Konventionen;15
3.5;1.5 Code-Bibliothek;16
3.6;1.6 Danksagungen;17
3.7;1.7 URL zum Buch;17
4;2 Einführung;19
4.1;2.1 Was ist Ajax?;19
4.2;2.2 Hintergründe;21
4.3;2.3 Ajax im Kontext von Web 2.0;22
4.4;2.4 Der Ajax-Entwickler;24
5;3 Die richtigen Werkzeuge;26
5.1;3.1 Web-Browser;26
5.2;3.2 Web-Server;31
5.3;3.3 Die Eclipse-IDE;33
6;4 JavaScript Grundlagen;38
6.1;4.1 Eine Sprache neu entdeckt;38
6.2;4.2 Vergleich mit Java;39
6.3;4.3 JavaScript-Interpreter und und Laufzeit- Umgebung;41
6.4;4.4 Einbindung in HTML-Dokumente;42
6.5;4.5 Kommentare;43
6.6;4.6 Das Typisierungskonzept von JavaScript;44
6.7;4.7 Operatoren;49
6.8;4.8 Kontrollstrukturen;53
6.9;4.9 Die eval-Funktion;53
6.10;4.10 Funktionen;54
6.11;4.11 Objektorientierte Programmierung;70
6.12;4.12 Fehlerbehandlung;106
6.13;4.13 Nebenläufigkeit;110
6.14;4.14 Die Zukunft von JavaScript;111
6.15;4.15 Debugging;123
7;5 Das Document Object Model;130
7.1;5.1 Hintergründe;130
7.2;5.2 JavaScript und das DOM;131
7.3;5.3 Grundlagen;133
7.4;5.4 Das HTML-DOM;150
7.5;5.5 innerHTML;156
7.6;5.6 Ereignisse;158
8;6 Client-Server-Kommunikation;184
8.1;6.1 Das Hypertext-Transfer-Protokoll;184
8.2;6.2 HTTP-Anfragen mit JavaScript;189
9;7 Web-Services;216
9.1;7.1 Hintergründe;216
9.2;7.2 SOAP und WSDL;217
9.3;7.3 Representational State Transfer (REST);235
9.4;7.4 JavaScript Object Notation (JSON);237
9.5;7.5 Fazit;248
10;8 Optimierungen;249
10.1;8.1 Richtig optimieren;249
10.2;8.2 JavaScript;251
10.3;8.3 Caching;268
10.4;8.4 Minification und Obfuscation;270
10.5;8.5 Kompression;273
11;9 Sicherheit;275
11.1;9.1 Ajax und Sicherheit;275
11.2;9.2 Die Same-Origin-Policy;276
11.3;9.3 Cross-Site-Scripting (XSS);278
11.4;9.4 Man-in-the-middle;285
11.5;9.5 Cross-Site Request Forgery;287
11.6;9.6 Fazit;290
12;10 Barrierefreiheit;292
12.1;10.1 Warum Barrierefreiheit?;292
12.2;10.2 Einfache Maßnahmen;293
12.3;10.3 Ajax und Screenreader;303
12.4;10.4 Fazit;306
13;11 Usability;307
13.1;11.1 Die Rolle der Usability;307
13.2;11.2 Ajax und Usability;308
13.3;11.3 Der Zurück-Button;309
13.4;11.4 Geschwindigkeit;314
14;12 Frameworks;320
14.1;12.1 Warum Frameworks?;320
14.2;12.2 Frameworks im Überblick;321
14.3;12.3 Die Wahl des richtigen Frameworks;329
15;13 Praxisbeispiele;330
15.1;13.1 Eingabefeld mit Vorschlagsfunktion;330
15.2;13.2 Server-Push-Chat;337
15.3;13.3 RSS-Feed-Reader;346
16;Literatur;353
17;Index;355
2 Einführung (S. 7)
Worum geht es bei Ajax eigentlich? Mit dieser scheinbar trivialen Frage könnten Sie so manchen Web-Entwickler in Verlegenheit bringen. In diesem Kapitel erfahren Sie, worin der eigentliche Vorteil von Ajax besteht, wie Ajax entstanden ist und was Ajax für das Web 2.0 bedeutet.
2.1 Was ist Ajax?
Kein „Buzzword" hat in letzter Zeit so sehr Furore gemacht wie Ajax. Sucht man über eine der gängigen Suchmaschinen nach Ajax, findet man in der Regel Seiten über „Asynchronous JavaScript and XML" noch vor dem Fußballverein und dem Reinigungsmittel gleichen Namens. Umso verwunderlicher ist es, dass viele Leute zwar den „Markennamen" Ajax kennen, jedoch keine konkrete Vorstellung haben, was technologisch dahintersteckt: Ajax wird inzwischen quasi synonym für alle Web-Anwendungen verwendet, die einen gegenüber herkömmlichen Webseiten erhöhten Bedienkomfort bieten.
Ursprünglich jedoch stand Ajax für „Asynchronous JavaScript and XML". Betrachtet man jeden dieser Begriffe einzeln, erhält man eine Liste von Anforderungen, die eine Ajax-Anwendung erfüllen muss, um als solche bezeichnet werden zu dürfen. Zunächst muss jede Ajax-Anwendung asynchron Daten mit dem Server austauschen. Desweiteren muss auf dem Client (also dem Browser) die Programmiersprache JavaScript eingesetzt werden und zu guter Letzt müssen die Daten strukturiert in Form eines XML-Dokuments zwischen Client und Server ausgetauscht werden.
Heutzutage ist man sich allerdings uneinig, ob die Wahl der Abkürzung AJAX so sinnvoll war und weicht zunehmend auf die Schreibweise „Ajax" aus, um die ursprüngliche Bedeutung zu verschleiern. Grund dafür ist, dass viele der häufig angeführten Beispiele für typische Ajax-Anwendungen kein XML verwenden und manche noch nicht einmal asynchron arbeiten.
Der einzige Punkt, über den man sich einig zu sein scheint, ist, dass Ajax-Anwendungen JavaScript verwenden müssen – vielleicht aber auch nur, weil es momentan auf der Browser-Plattform praktisch keine Alternative gibt. Um nach dieser ernüchternden Zwischenbilanz nun dennoch verstehen zu können, worum es bei Ajax eigentlich geht, muss man sich vor Augen führen, welchen Nutzen der Anwender letztendlich aus Ajax zieht.
Der englische Begriff „responsiveness", der im Deutschen gern mit „Reaktionsbereitschaft" übersetzt wird, trifft den Punkt: Ajax-Anwendungen reagieren scheinbar schneller auf Benutzereingaben. Aber warum ist das so? Anwendungen arbeiten in der Regel mit zwei verschiedenen Arten von Daten – mit transienten und persistenten Daten. Die transienten Daten liegen im flüchtigen Arbeitsspeicher, während die persistenten Daten nicht flüchtig auf Festplatte gelagert sind.
Wenn Sie beispielsweise mit einem Textverarbeitungsprogramm arbeiten, sind ihre Eingaben transient, bis Sie Ihr Dokument abspeichern und damit persistent machen. Sie überführen also Daten vom transienten in den persistenten Zustand. Gleichermaßen überführen Sie beim Öffnen eines Dokuments die persistenten Daten in einen transienten Zustand.
Dieses Prinzip liegt praktisch allen Anwendungen zugrunde und auch die meisten Web-Anwendungen arbeiten so. Bei Web- Anwendungen ist die Überführung der Daten aus einem Zustand in den anderen jedoch weitaus komplizierter als bei Desktop-Anwendungen, weil hier die transienten und persistenten Daten auf unterschiedlichen Rechnern (Client und Server) liegen. Ein Browserbasiertes Textverarbeitungsprogramm beispielsweise müsste zum Speichern eines Dokuments eine Anfrage an den Server stellen.




