Die jüngste Ankündigung, dass Windows 8 über Hilfsmittel für das Schreiben von Apps unter Verwendung von HTML5-Technologien verfügen wird, wird den Wandel im Entwicklungsbereich weiter festigen. Stellt sich die Frage, wie man damit umgeht? ZDNet zeigt, welche Technologien Entwickler lernen sollten, um mit den Veränderungen aufgrund von HTML5 Schritt halten zu können.
Wer die Entwicklung nicht genau verfolgt hat, wundert sich leicht, warum und wie Internet-Technologien plötzlich die Rolle von Entwicklungsplattformen für Desktop-Anwendungen einnehmen konnten. Im HTML5-Standard, der erst noch fertiggestellt werden muss, gibt es eine Reihe neuer Elemente, die die existierende Dokumentenauszeichnung von HTML um echte Funktionen für die Anwendungsentwicklung ergänzen. In der Vergangenheit waren für recht einfache Funktionen umfangreiche JavaScript-Frameworks und Browser-Plug-ins erforderlich.
HTML5 ändert das, indem Unterstützung für Dinge wie Videostreaming, Multithread- und asynchrone Verarbeitung (über das „Web Workers“-Nachrichtenaustauschsystem), direkte Kommunikation über Sockets und anderes mehr ergänzt wird. Die Vorstellung, dass ein Standard für ein Dokumentenformat über diese Funktionen verfügt, mag für manchen wohl erschreckend sein, doch ist dies die Richtung, in die die Entwicklung von HTML geht, und Apple, Microsoft, Google, Mozilla, Adobe und andere mehr leisten Unterstützung dabei. Darüber hinaus machen es die verschiedenen vorhandenen Frameworks sehr einfach, Webanwendungen direkt mit Backend-Webdiensten zu verbinden. Das Ergebnis ist, dass HTML5 jetzt für viele Aufgaben so leistungsfähig ist wie Technologien wie Silverlight, Flash, Flex/AIR und JavaFX (auch wenn es immer noch Dinge gibt, die diese Technologien besser können).
Folgende Technologien sollte man für den Einstieg lernen:
HTML5: HTML5 ist zwar noch kein komplett fertiggestellter Standard, doch ändert er sich in dieser Phase nicht mehr stark. Er ist jetzt einsatzfähig und in ordentlichem Umfang in Browsern implementiert. Es bietet sich jetzt an, HTML5 zu lernen.
CSS: Wenn man noch nicht mit CSS vertraut ist, ist jetzt ein guter Zeitpunkt, es zu lernen. Die Unterstützung durch Browser wird ständig besser, und der Internet Explorer 6 hat inzwischen einen so geringen Marktanteil, dass viele Entwickler kein Problem damit haben, ihn zu ignorieren.
Webdienste: Jede bedeutende serverseitige Entwicklungssprache verfügt über ein Framework oder ein Paket von Bibliotheken für die problemlose Erstellung von Webdiensten, wie zum Beispiel Windows Communication Foundation (WCF) in .NET. Es wird nicht schwierig sein, die Grundlagen zu verstehen. Man sollte speziell lernen, wie JSON-Ausgaben erzeugt werden, denn JSON entwickelt sich schnell zur Verkehrssprache von Webwendungen. Außerdem sollten RESTful-Webdienste verstanden werden. Es erfordert zwar möglicherweise mehr Arbeit sie zu verarbeiten, als SOAP-Dienste in einer modernen Entwicklungsumgebung, dafür sind sie aber viel universeller zugänglich.
JavaScript: Die neuen Paradigmen im Bereich der Anwendungsentwicklung erfordern viel mehr JavaScript-Wissen als die Entwicklung in herkömmlichem ASP.NET oder Ähnlichem.
jQuery: jQuery ist zum clientseitigen Entwicklungsframework der Wahl geworden. Es scheint alles zu können. Wenn man einen Kniff für die Client-Benutzeroberfläche ausprobieren muss, stehen die Chancen gut, dass jQuery mit seinem umfangreichen Paket von Plug-ins das für einen erledigen kann.
Diese Technologien bilden heute die Grundlage für eine Reihe unterschiedlicher Entwicklungssysteme. Mobile Websites sind eine gute Möglichkeit, die meisten mobilen Anwender mit der geringsten Anstrengung zu erreichen. Werkzeuge wie Titanium von Appcelerator bieten die Möglichkeit, Internet-Technologien innerhalb ihres Systems auf einer Reihe von Plattformen, wie zum Beispiel Handy und Desktop, zu nutzen. Andere Systeme, wie Agile Platform von OutSystem packen Bibliotheken wie jQuery ein, um die Entwicklung von Web-Apps für Desktop- oder mobile Anwender extrem einfach zu machen. Auch wenn die Einzelheiten noch unklar sind, sieht es so aus, als ob Windows 8 den Internet Explorer 9 (oder welche Version bis dahin aktuell sein wird) als Laufzeitumgebung für HTML5-Technologien nutzen wird, die als lokale Anwendungen außerhalb eines erkennbaren Browserfensters fungieren. Man könnte annehmen, dass diese Apps höhere Privilegien haben werden, Zugriff auf lokale Ressourcen und andere Möglichkeiten, um sich mehr wie native Anwendungen zu verhalten.
Es ist durchaus sinnvoll, sich die oben aufgeführten zentralen Technologien anzueignen, und nach dem BUILDevent im September sollte man genug über die Pläne von Microsoft zu Windows 8 in Erfahrung gebracht haben, um die Feinabstimmung der Strategie vorzunehmen und herauszufinden, was an weiterem Wissen noch erforderlich ist.
Der Cybersecurity Report von Hornetsecurity stuft 2,3 Prozent der Inhalte gar als bösartig ein. Die…
Die Hintermänner haben es auf Zugangsdaten zu Microsoft Azure abgesehen. Die Kampagne ist bis mindestens…
Cloud-Plattform für elektronische Beschaffungsprozesse mit automatisierter Abwicklung elektronischer Rechnungen.
Mindestens eine Schwachstelle erlaubt eine Remotecodeausführung. Dem Entdecker zahlt Google eine besonders hohe Belohnung von…
Nur rund die Hälfte schaltet während der Feiertage komplett vom Job ab. Die anderen sind…
Security-Experten von Check Point sind einer neuen Angriffsart auf die Spur gekommen, die E-Mail-Schutzmaßnahmen umgehen…