Benutzer:MathiasB/Flash Silverlight Java Applets
- Am 02.11.2014 wurden Links auf nicht mehr bestehende / mittlerweile gelöschte Seiten (edit-Status) entfernt.--Matthias Scharwies (Diskussion) 05:58, 4. Nov. 2014 (CET)
- Am 14.10.2015 wurden die ToDo-Vorlagen in Hinweise umgewandelt.Matthias Scharwies (Diskussion) 16:58, 10. Okt. 2015 (CET)
Inhaltsverzeichnis
Allgemeines zu Browser-Plugins
Information
Den im Folgenden beschriebenen Technologien ist gemeinsam, dass sie nicht vom Browser selbst dargestellt werden. Moderne Browser beherrschen hauptsächlich HTML, CSS und JavaScript, können mit Flash und Silverlight jedoch selbst nichts anfangen. Wird also beispielsweise eine HTML-Seite aufgerufen, die einen Flash-Film enthält, so kümmert sich der Browser um die Darstellung der HTML-Seite und reicht den Flash-Film an eine andere Software weiter. Diese andere Software ist im Falle von Flash wahrscheinlich der „Adobe Flash Player“.
Der „Adobe Flash Player“ ist ein Browser-Plugin, also eine Software, die mit dem Browser kommunizieren kann. Die meisten heutigen Browser bieten dafür die Programmierschnittstelle NPAPI an, die ursprünglich von Netscape stammt. Die große Ausnahme ist der Internet Explorer, der heutzutage Plugins nur noch über ActiveX unterstützt.
Die folgende Abbildung verdeutlicht, wie Plugins mit dem Browser zusammenhängen:
Wie Sie der Abbildung entnehmen können, werden auch Dateiformate, die gar nichts speziell mit dem Internet zu tun haben, über Plugins verarbeitet, z.B. PDF.
Genau genommen kann jeder, der Programmierkenntnisse besitzt und mit ActiveX und/oder NPAPI vertraut ist, ein Browser-Plugin schreiben. Der entscheidende Punkt bei der Sache ist, wie verbreitet das Plugin ist. Sicherlich möchten Sie keine Webinhalte entwerfen, die nur mit einem Plugin genutzt werden können, das nur eine Handvoll Leute auf ihren Computern installiert haben.
Zusammengefasst: HTML, CSS und JavaScript beherrschen die Browser selbst, für Flash, Silverlight und Java Applets benötigen sie jeweils ein entsprechendes Plugin.
Wer Flash oder Silverlight (oder ein sonstiges Dateiformat, das die Browser nicht selbst verarbeiten) in seinem Webangebot verwenden möchte, der wägt verschiedene Faktoren ab: Was ist mit Flash bzw. Silverlight möglich, das mit HTML/CSS/JavaScript nicht möglich wäre; wieviel Zeit spare ich bei der Entwicklung; wie wahrscheinlich ist es, dass Besucher extra für mein Angebot ein Plugin installieren usw.
Grundsätzliches zu Flash
Flash ist eine Technik der Firma Adobe, mit der man (jedenfalls vom sichtbaren Endergebnis her) mindestens all das machen kann, was auch mit den offenen, standardisierten Techniken HTML, CSS und JavaScript möglich ist. Abgesehen davon liegen jedoch Welten zwischen Flash und Techniken wie HTML, CSS und JavaScript.
Im heutigen Web wird Flash hauptsächlich für blinkende Werbebanner, kleine Spiele (Flash-Games) und zum Abspielen von Audio- und Videodateien eingesetzt. Flash-Inhalte müssen dabei nicht unbedingt eine eigene, unabhängige Insel in einer Webseite bilden, sondern können auch über JavaScript angesprochen werden. Umgekehrt kann man bei der Flash-Programmierung mit ActionScript auch auf die Elemente der Webseite zugreifen. Prinzipiell kann man Flash-Inhalte aber auch direkt an den Browser senden (also eine Datei mit der Endung .swf
).
Flash wird manchmal auch benutzt, um spezielle „Cookies“ auf dem Rechner des Seitenbesuchers zu platzieren. Da normale Cookies vom Browser verwaltet werden und daher leicht zu entfernen sind, weichen manche Webseitenbetreiber auf die so genannten Flash-Cookies aus, die weniger bekannt sind und daher seltener gelöscht werden.
Interessanterweise wird zur Programmierung bei Flash eine Programmiersprache namens ActionScript eingesetzt, die [[Doku:Grundlagen/Technologien/JavaScript|JavaScript]] sehr ähnlich ist (tatsächlich basieren beide auf ECMAScript).
Grundsätzliches zu Silverlight
Silverlight ist der Versuch von Microsoft, eine Plattform zu schaffen, mit der die Programmierung von browserübergreifenden Webanwendungen wesentlich vereinfacht werden soll. Der ursprüngliche Codename „WPF/E“ stand für „Windows Presentation Foundation Everywhere“ und benennt damit WPF bereits als wichtige Grundlage für Silverlight. WPF ist eine Schnittstelle zur Programmierung grafischer Oberflächen für Windows mit Microsofts .NET-Framework. Bei Silverlight kommt eine Teilmenge von WPF zum Einsatz.
Um mit WPF grafische Oberflächen zu erstellen, kommt eine XML-basierte Beschreibungssprache namens XAML (Extensible Application Markup Language) zum Einsatz.
Grundsätzliches zu Java
Java hat im Internet bereits eine bewegte Geschichte hinter sich.
Die Firma Sun Microsystems (inzwischen von Oracle übernommen) entwickelte ursprünglich eine Programmiersprache namens Java. Trotz der Namensähnlichkeit besteht allerdings keine besondere Verwandtschaft zwischen Java und JavaScript.
Ähnlich wie Flash wird auch Java normalerweise nicht direkt vom Browser verarbeitet (außer bei einigen früheren Browsern, die aber heutzutage praktisch nicht mehr verwendet werden), sondern von einem Plugin. Java-Programme, die auf diese Weise zur Ausführung gelangen, heißen "Java Applets", um sie von normalen "Java Applications" zu unterscheiden, die nicht im Browser ausgeführt werden. Für beide Arten von Java-Programmen muss auf dem Computer des Anwenders das so genannte Java Runtime Environment (JRE) installiert sein.
Sie können Java-Applets in HTML-Dateien so referenzieren, dass die Anwendung innerhalb der Web-Seite in einem dazu geeigneten Bereich erscheint. Die Bildschirmausgaben bzw. die Interaktionen zwischen Anwender und Programm finden also im Anzeigefenster des WWW-Browsers statt. Applets sind im Gegensatz zu normalen Java-Programmen in ihren Möglichkeiten beschränkt. Auf diese Weise wird sichergestellt, dass Java-Applets nicht ohne das Einverständnis des Anwenders irgendetwas auf dessen Rechner tun können, z.B. Dateien verändern oder löschen. Java-Applets laufen also in einer so genannten Sandbox, einem Sicherheitskäfig.
Java Applets hatten ihre große Zeit hauptsächlich in den Neunzigerjahren, aber aus verschiedenen Gründen kamen sie bald aus der Mode.
Verfügbarkeit der Plugins
Betriebssysteme und Browser werden oft von Haus aus mit dem so genannten Flash-Player von Adobe ausgeliefert, der sich sich als Plugin in den Browser einklinkt. Der Flash-Player ist kostenlos und kann, wenn er einmal nicht vorhanden sein sollte, schnell nachinstalliert werden. Der jeweils neueste Flash-Player ist für aktuelle Versionen von Windows (x86), Linux (x86 und x86-64) und Mac erhältlich, wobei die Entwicklung manchmal schmerzlich verzögert abläuft. Früher hinkte die Linux-Version hinterher, momentan gibt es bei der Windows-Version keine Unterstützung für 64-Bit-Browser.
Microsofts Silverlight ist derzeit kein Teil von Betriebssystemen, aber das Plugin steht für Windows und Mac OS X kostenlos zur Verfügung. Linux und FreeBSD werden durch das Moonlight-Projekt unterstützt; da Moonlight allerdings nicht von Microsoft stammt, ist es gewöhnlich nicht auf dem neuesten Stand.
Java steht für zahlreiche Betriebssysteme kostenlos zur Verfügung. Bei aktuellen Versionen von MacOS X ist es bereits im System enthalten (TO DO: Ist Java beim Mac immer auf dem neuesten Stand? Hab da schon komische Geschichten gehört.), unter Linux -?- (TO DO: Weiß ich grad nicht. Seit Java freie Software ist, könnte es natürlich defaultmäßig in vielen Distros enthalten sein?!)
Weitere Informationen
Flash und Silverlight werden in der vorliegenden Dokumentation nicht weiter behandelt. Weitere Informationen zu Flash finden Sie auf der Seite des Herstellers Adobe Systems, oder suchen Sie im Internet nach „Adobe Flash“.
Weitere Informationen zu Silverlight erhalten Sie bei Microsoft unter http://www.microsoft.de/silverlight/. Zu der freien Implementierung Moonlight erhalten Sie weitere Informationen unter http://mono-project.com/Moonlight.
Das Java Runtime Environment erhalten Sie kostenlos unter http://www.java.com/de/download/.