Browser-Aufholjagd

Webstandards, neue Skript-Engine, Hardware-Beschleunigung: Der erste Ausblick auf den kommenden Internet Explorer überzeugt.

In Pocket speichern vorlesen Druckansicht 2 Kommentare lesen
Lesezeit: 7 Min.
Von
  • Herbert Braun

Auf seiner Entwicklerkonferenz PDC09 in Los Angeles gab Microsoft am 19. November einen ersten Ausblick auf die kommende Version des Internet Explorer. Zwar arbeiten die Entwickler laut Steven Sinofsky, dem Leiter der Windows-Abteilung bei Microsoft, erst seit Ende Oktober am IE9, doch konnte er auf seiner Keynote bereits einige bemerkenswerte Neuerungen vorführen.

Mit dem IE8 hat Microsoft bei den etablierten Webstandards (insbesondere CSS 2.1) aufgeholt, aber wenig Zukunftsweisendes implementiert. Wenn Sinofsky davon spricht, dass Internet Explorer beim (zugegeben umstrittenen) Acid3-Test „nicht vorne liegt“, ist das eine ziemliche Übertreibung – IE8 kommt auf 24 von 100 Punkten, wo die Konkurrenz bereits Vollzug melden kann oder diesem Ziel zumindest nahegekommen ist. IE9 macht es wenigstens ein bisschen besser: Bisher bringt er es auf 32 Punkte.

Ein Teil dieser Verbesserung dürfte mit der fast vollständigen Unterstützung von CSS3-Selektoren zu tun haben. Bei den Tests von css3.info schafft der Browser laut Microsoft immerhin 574 der 578 Einzeltests, während IE8 229-mal durchfällt. In Bezug auf Acid3 verspricht Dean Hachamovitch, der Projektleiter für den Internet Explorer, dass „der Score noch steigen wird, da wir im IE die Unterstützung für Techniken weiter verbessern, die Website-Entwickler benutzen“. Man darf gespannt sein, ob sich dieses Versprechen auch auf Vektorgrafiken mit Canvas oder mit SVG und SMIL bezieht (die zum Testparcours von Acid3 zählen) – bisher boykottiert Microsoft als einziger Browser-Hersteller diese Standards.

Überraschend deutlich bekennt sich Microsoft dagegen zu HTML5, bei dessen Entstehung sich der Software-Konzern bisher eher zurückgehalten hat. Wo die Spezifikation ausgereift ist, soll sie implementiert werden, heißt es einhellig von verschiedenen Firmensprechern. Microsoft arbeitet dafür sogar an einer Testsuite, die für die bereits stabilen Teile von HTML5 und für Webtechniken aus dessen Umkreis Prüfszenarien aufstellt – ähnlich wie für CSS 2.1 bei der Veröffentlichung des IE8. Bis jetzt sind aus dem riesigen Korpus der in Entwicklung begriffenen Standards nur Web Storage und Cross-Document Messaging (etwa für den Nachrichtenaustausch zwischen Frames) in die Testsuite eingegangen.

Ein häufiger Vorwurf gegen den Internet Explorer ist seine lausige JavaScript-Performance. Trotz der Verbesserungen in Version 8 bleibt auch der aktuelle IE auf diesem Gebiet abgeschlagen hinter den Konkurrenten Opera, Firefox, Chrome und Safari zurück. Von Seiten der Nutzer und der Webentwickler war deshalb der Ruf nach einer neuen JavaScript-Engine immer lauter zu hören – eine Forderung, der Microsoft nachkommen will.

Zwar macht die JavaScript-Performance nach Einschätzung des für die Skript-Engine zuständigen Teamleiters John Montgomery je nach Website „nicht mehr als ein Drittel bis runter zu fünf oder zehn Prozent“ der Gesamtgeschwindigkeit aus, doch gerade bei komplexen, häufig genutzten Online-Anwendungen wie Facebook oder Google Mail machen sich die Unterschiede bemerkbar; außerdem lässt sich die Geschwindigkeit der Skript-Engine sehr gut messen.

Wie die anderen Browser soll der Internet Explorer Skripte künftig zu nativem Code kompilieren, bevor er sie ausführt. Komplett umgebaut haben die Entwickler das interne Objektmodell, dessen Grundlage künftig ein „Object Pattern“ sein soll, eine Art Zeiger auf kleinteilige Datenstrukturen in Form von Arrays, die Eigenschaften speichern. Statt die Positionen dieser Eigenschaften jedes Mal in einer Hash-Tabelle nachzuschlagen, nutzt die Engine polymorphes Inline-Caching.

Außerdem frisieren die Entwickler die Bibliotheken, beispielsweise die für reguläre Ausdrücke zuständige, in der besonders viel Potenzial für Beschleunigung steckt. Beim Kompilieren des Skriptcodes trifft die Engine erst einmal optimistische Annahmen; stellen diese sich als falsch heraus (was aufgrund einiger Konzeptschwächen von JavaScript gelegentlich passieren kann), nimmt sie einen neuen Anlauf.

Die Ergebnisse dieser Operationen sind noch nicht revolutionär, aber achtbar: Bei der SunSpider-Testsuite, einer der angesehensten Messlatten für JavaScript-Leistung, holte Internet Explorer 9 Firefox 3.5 ein und brauchte etwa 15 Prozent mehr Zeit als Firefox 3.6 Beta 1 – der wiederum halb so schnell wie die Beta von Chrome 4 ist. Das deutet darauf hin, dass Internet Explorer 9 in Sachen JavaScript-Performance zumindest in der gleichen Liga spielen dürfte wie die der Konkurrenz.

Ebenfalls mit Geschwindigkeit hat eine echte Innovation des Internet Explorer zu tun: Der Browser soll künftig beim Rendern von Texten und Bildern Hardware-beschleunigt arbeiten, mit anderen Worten: die Leistung des Grafikprozessors anzapfen. Der Weg dorthin führt über die DirectX-Komponenten Direct2D für Grafiken und DirectWrite für Text.

Der Effekt sind flüssig laufende JavaScript-Animationen von Texten, wie Microsoft mit einigen Demos zeigte. Ähnliche Ergebnisse lassen sich beim Rendern von Bildern erzielen, etwa beim Scrollen durch eine Online-Landkarte. Um den Effekt zu verdeutlichen, musste Microsoft für ein Video die Screencasting-Software wechseln, da Standardprogramme nicht genügend Frames pro Sekunde aufzeichnen können. Über das bisher genutzte GDI waren bei der Vorführung etwa 15 fps möglich, DirectX schafft dagegen das Vierfache. Animationen auf Websites könnten damit die Qualität eines Computerspiels bekommen.

Diese Hardware-Beschleunigung bringt auch eine präzisere Darstellung: Da DirectX Subpixel-Rendering beherrscht, lassen sich Buchstaben oder gerundete Ecken viel glatter auf den Bildschirm zeichnen als bisher. „Die Hardware sollte durchscheinen, auch wenn es nur ums Rendern von Standard-Webseiten geht“, meint Sinofsky. Probleme mit Plug-ins (in Microsoft-Sprech: ActiveX-Controls) wie Flash oder Silverlight, die direkt auf die GDI-Schnittstelle schreiben, wollen die Entwickler mit einer Umleitung auf DirectX lösen. Direct2D und DirectWrite sind nur für Windows 7 und Vista erhältlich; möglicherweise wird es also keinen Internet Explorer 9 für Windows XP geben.

Vielleicht hat sich das Thema bis dahin allerdings schon erledigt: Da Microsoft alle 18 bis 24 Monate eine neue Browser-Version herausbringen will, dürfte erst um die Jahreswende 2010/11 mit der Veröffentlichung von Internet Explorer 9 final zu rechnen sein. Man darf gespannt sein, ob er dann, wie Sinofsky verspricht, „der allerbeste Browser für Windows“ sein wird.

Zweifellos werden noch einige Features mehr kommen – Microsoft hält sich traditionell mit Vorankündigungen zurück. Ins Kraut schießen sollten die Erwartungen nicht, denn seiner sorgfältig gehegten Rückwärtskompatibilität und dem vergleichsweise langsamen Erscheinungsrhythmus wird der Konzern mit Rücksicht auf seine Geschäftskunden weiter treu bleiben. Immerhin vermittelt der IE-Produktmanager Pete LePage Hoffnung: „Ich glaube nicht, dass wir etwas nicht machen werden wegen der Vergangenheit. Wir haben unseren Weg gefunden, mit Rückwärtskompatibilität umzugehen.“ (heb)