Apples Weg aus der Abhängigkeit von großen Softwarehäusern wie Adobe und Microsoft heißt SproutCore – es geht um die Entwicklung von plattformübergreifenden Webapplikationen im Cocoa-Design und vielleicht darüber hinaus.
Bei jeder WWDC steckt Apple in einem Dilemma: Behält der Hersteller neue Techniken für sich, so verpasst er die Chance, dass Entwickler früh auf den Zug aufspringen und für eine rasche und nachhaltige Verbreitung sorgen. Stellt er seine Ideen aber in einer der Sessions vor, dann kann er sich fast sicher sein, dass zumindest einige Details an die Öffentlichkeit geraten – trotz NDA (Verschwiegenheitsabkommen) und aller Bitten und Drohungen.
SproutScore: Framework hinter MobileMe
Auch die Pläne mit SproutCore waren sicherlich nicht für die Öffentlichkeit bestimmt – und sind nun doch zum Gesprächsthema geworden. Spektakulär dürfte vor allem Entwicklern am Mac erscheinen, was Apple da mit ihnen vorhat: Mit SproutCore sollen sie Web-Applikationen am Mac entwickeln, die so aussehen wie Desktop-Programme und sich auch so anfühlen. Die neuen MobileMe-Applikationen in der Nachfolge von .Mac hat Apple bereits mit SproutCore entwickelt, die .Mac-Webgalerien basierten bereits zuvor darauf. Hinter der Plattform-übergreifenden Open Source-Technik steckt ein JavaScript-Framework. Der Vorteil: Mit SproutCore entwickelte Webapplikationen könnten auf allen Plattformen nach Mac OS X aussehen und dabei ausschließlich Web-Standards wie HTML, JavaScript und CSS. Google macht das genauso: für Google Mail, Docs und weitere Online-Anwendungen benötigt der Anwender kein Plug-in und keine proprietäre Technik, er bewegt sich außerhalb des Betriebssystems. In einem offenen und Standard-gemäßen Web kann kein Hersteller eines Betriebssystems Apple ausstechen, kein Softwarehersteller macht Cupertino mehr erpressbar. Dabei erfindet Apple keinesfalls das Rad neu: Ähnliche Frameworks gibt es auch außerhalb von SproutCore schon lange, Jquery und Prototype beispielsweise. Spektakulärer als die Technik sind die wirtschaftliche Entscheidung als Fragment eines Gesamtkonzeptes und die Folgen, die sich möglicherweise daraus ergeben könnten.
Womit entwickelt man Rich Internet Applications?
Adobe mit AIR, Microsoft mit Silverligt und Mozilla mit Prism: Online-Applikationen gelten als äußerst zukunftsträchtig und eine Reihe von großen Herstellern haben Techniken in Vorbereitung, um Web-Applikationen zu erstellen, optisch zu gestalten und auf dem Desktop auszuführen. Mit Außenseiter Apple hat bislang kaum jemand gerechnet. Dabei sprechen mehrere Indizien bereits seit Monaten dafür, dass Apple sein eigenes Süppchen kocht: Das iPhone beherrscht kein Flash und Apple-Chef Steve Jobs hat mehrfach erklärt, die Adobe-Technik sei für das Handy nicht geeignet. Auf der Apple-Seite finden sich auch deshalb keinerlei Flash-Inhalte, vielmehr setzt der Mac-Hersteller auf JavaScript und mehrere quelloffene JavaScript-Frameworks, die kein Browser-Plug-in benötigen. Safari indes verarbeitet JavaScript-Code immer schneller, mit Version 4 des hauseigenen Browsers will Apple die Geschwindigkeit mit Hilfe einer neuen JavaScript-Engine noch einmal signifikant steigern.
Web-Standards und sonst nichts
SproutCore geht auf den Entwickler Charles Jolley von SproutIt zurück, erklärt AppleInsider : Der Programmierer habe das Framework für seine E-Mail-Online-Applikation entwickelt. Es realisiert das MVC-Muster: Applikationen werden demnach flexibel in drei Einheiten entwickelt (Model, View, Controller), der Code soll später einfacher zu pflegen sein. Apple hat SproutCore in der Vergangenheit nicht nur verwendet, um MobileMe zu programmieren, sondern sich auch mit Hochdruck an der Weiterentwicklung beteiligt, das Framework ausgebaut, für mehr Geschwindigkeit gesorgt und Funktionen hinzugefügt. Anzunehmen ist, dass der Hersteller in absehbarer Zeit eine Version des SproutCore-Framworks zur Verfügung stellen wird, das visuelle Elemente im Cocoa-Stil zur Verfügung stellt. Entwickler sollen ihre Web-Applikationen im Vergleich zur Programmierung in JavaScript dank der Frameworks nur mit wenig Code erstellen können, lediglich die Kommunikation zum Datenaustausch mit einem Server findet per Ajax statt. Es ist anzunehmen, dass Apple mit Snow Leopard Server auch eine Reihe von Schnittstellen für Web-Applikationen zur Verfügung stellt. Abzuwarten bleibt, inwiefern Apple die Technik in die eigene Entwicklungsumgebung integriert und es Programmierern ermöglicht, auch Applikationen mit der Haptik und Optik eines Mac-Programm für Windows und andere Betriebssysteme zu entwickeln – als Web-Applikationen, die dort lediglich einen Browser benötigen würden.
Apple setzt ein Zeichen
Was Apple darüber hinaus mit MobileMe vorhat, bleibt reine Spekulation. Das RoughlyDrafted Magazine ist der Meinung, der Hersteller könnte in Zukunft eine Art App Store für Web-Applikationen eröffnen und Entwickler dazu einladen, ihre Lösungen dort zu präsentieren. In welchen Bereichen Web-Applikationen sich überhaupt verbreiten werden, lässt sich aber noch gar nicht absehen. Bislang ist SproutCore vor allem eines: ein Signal, dass nicht nur Microsoft, Adobe und Mozilla das Web auf den Desktop holen wollen, sondern Apple ganz eigene Pläne hat.