Politik, traurig. Flash war/ist HTML in fast jeder Hinsicht überlegen (siehe unten), aber es gab eine Reihe von nicht-technologischen Faktoren, die seinen Untergang einleiteten. Unten sind ein paar, die in den Sinn kommen:
1) Anzeigen. So lernten die meisten Leute Flash-Inhalte zu erkennen. Wenn es auffällig und nervig war, war es wahrscheinlich Flash. Das war bedauerlich, da nicht die Technologie selbst das Problem war, sondern der Einsatz. (Die Tatsache, dass Flash für diese Art von Inhalten so oft verwendet wurde, sagt etwas darüber aus, wie effektiv Flash diese Art von Inhalt erstellt hat).
2) Volle Flash-Websites/Spiele. Auch dies war nicht so sehr ein Problem mit Flash, sondern diejenigen, die damit den Inhalt erstellt haben. Entwickler produzieren oft Inhalte auf Maschinen, die wesentlich schneller sind als die durchschnittlichen Benutzer und die meisten, wenn nicht alle, lokal testen.
3) Das erste iPhone war ziemlich langsam im Vergleich zu denen, die heute existieren, und es war langsam im Vergleich zu den meisten Computern. Es ist daher nicht verwunderlich, dass eine Technologie, die auf Multimedia spezialisiert ist und in einer virtuellen Maschine läuft, Probleme haben kann, auf einem solchen Gerät zu laufen. Allerdings würde man sagen, dass etwas negatives über das Gerät gesagt wird, und dass die Technologie nicht zu 100% dafür verantwortlich gemacht wird. Die Erfahrung des Durchschnittsverbrauchers mit meinen vorherigen Punkten hat diese Taktik leicht gemacht.
4) Adobe gab nach dem Verlust der PR-Schlacht auf. Es gab viele Dinge, die sie hätten tun können, um Flash zu speichern, wie zum Beispiel: die Android-Unterstützung nicht fallenzulassen, die Flex-Unterstützung nicht fallenzulassen, die Flash Builder-Unterstützung zu löschen und die schwindende Flash-Entwickler-Community nicht zu ignorieren.Es gibt keinen Grund, warum das iPhone Flash heute nicht laufen lassen konnte (und es gut laufen lässt), und es gibt keinen Grund, warum Adobe keinen Transcompiler erstellen konnte, um Inhalte zu konvertieren. Ich habe das schon gemacht (flash api, volle as3 Sprachunterstützung, e4x, etc.), aber es ist noch nicht Open Source. Wenn ein Ingenieur das tun könnte, könnten sie sicherlich haben!
5) Übertriebene Publicity von Flash-Schwachstellen. Kritische Sicherheitslücken gibt es immer wieder in Programmen, Browsern, Betriebssystemen (ja, sogar OS X) usw. Aber aufgrund der wachsenden Unzufriedenheit von Flash in der Öffentlichkeit wurden Probleme in Flash so behandelt, als ob Flash das einzige Programm wäre Dadurch wurden Menschen Schwachstellen ausgesetzt.
Technologie: Ist/war Flash tech superior? Absolut, HTML5 war eigentlich ein großer Schritt zurück, und hier ist warum:
1) Flash war stabil. Wenn Sie Ihre App zum Laufen gebracht haben, wäre es fast garantiert, dass sie nicht nur in allen Browsern und Betriebssystemen gleich funktioniert, sondern auch identisch aussieht. Möchten Sie eine HTML5-App entwickeln? Verwenden Sie entweder eine JavaScript-Bibliothek, um alle/die meisten Browser-Inkonsistenzen zu beheben, oder begrüßen Sie sich in einem Albtraum des Debuggens. Natürlich fügen Sie diese Abstraktionsebene hinzu, aber was passiert nun, wenn Sie noch ein Problem haben? Nun, jetzt müssen Sie durch diese Schicht graben.
2) Flash/AS3 macht es besser. Möchten Sie pixelperfekten Text für alle Geräte erhalten? Flash, ja. HTML5, nein. Möchten Sie REAL-Klassen, Typisierung, Vektoren, schwache Referenzen, Schnittstellen, Objekte als Schlüssel, Namespaces, private Variablen, Asset-Einbettung usw.? Flash, ja. HTML5 .. Während es möglich ist, eine Kompilier-zu-JavaScript-Sprache zu erstellen, um das meiste davon abzuziehen, müssen Sie jetzt mit dieser Ausgabe umgehen, wenn Sie debuggen. Wie wäre es mit komplexen, verschachtelten Animationen? Wie einfach/schnell ist das in Flash ... Sicher, Redakteure können dafür sorgen, dass das Äquivalent in HTML5 ausgegeben wird, aber die meisten streamen nicht wie Flash und haben im Vergleich zu Flash erhebliche Einschränkungen.
3) Die Flash-API. Die Flash-API war gut dokumentiert, leistungsstark und recht einfach zu verwenden. Vergleichen Sie dies mit der Freude, online nach Kompatibilitätslisten und Herstellerpräfixen für HTML5 zu suchen.
4) todo ... da ist noch einiges mehr.
HTML5 ist besser nur in der Tatsache, dass es 100% offen ist (und es ist kein Plugin, die Menschen neigen dazu, nicht mögen). Die SWF-Spezifikation ist offen, und es gab einen Open-Source-Flash-Player (das Tamarin-Projekt); Es ist also nicht so, als ob Flash komplett geschlossen wäre, wie manche vermuten würden. persönlich würde ich jeden Tag die Offenheit von HTML5 für Stabilität und Konsistenz eintauschen.
Wenn jedoch Offenheit eine der Hauptsorgen ist, dann würde man den Rückschritt in der Leistungsfähigkeit und Effizienz wahrscheinlich als wert betrachten.
BTW: Ich schreibe eigentlich alle meine HTML5 und NodeJS Code in Flash/AS3 und kompilieren zu HTML5/JS. Ich kann immer noch Flash zum Debuggen verwenden (und meinen Goldstandard, wenn du willst), was fantastisch ist.
Weil Flash die Röhren runterging. Mangel an Unterstützung für mobile, langsame Ladezeiten, Mangel an SEO, etc. – epascarello
Dies ist keine Frage für Stackoverflow. Flash im Internet ist in der Tat jetzt legacy, und es sollte (warum ein Plugin von einer Drittpartei, die Software in Ihrem Browser ausführen, wenn es nicht notwendig ist?). AIR ist jedoch immer noch relevant und deine Fähigkeiten können dort verwendet werden. Für Web-Lieferung, aber nicht Flash, finden Sie eine gute JS-Framework und verwenden Sie das (CreateJS/Pixie etc.) – BadFeelingAboutThis
ah, ja, vergessen zu erwähnen, Menschen allgemeine Abneigung für Plugins. Auch hier geht es nicht wirklich um die Sprache oder den Funktionsumfang, den Flash im Vergleich zu HTML5 bietet. (Beachten Sie auch den Vorschlag, ein JS-Framework zu verwenden ... in AS3 war dies nicht nötig, aber in der JavaScript-Entwicklung ist es ein Muss) – user2800679