Ich las dies und ein Satz fiel mir auf (meine Betonung):
Ian Hickson, der größte Kritiker von XHTML, hat HTML 5 entwickelt, eine actionorientierte Spezifikation für Kleinkinder, die erst 2022 das Erwachsenenalter erreicht , obwohl einige davon heute verwendet werden können.
Ist das wahr? Ist das wirklich der HTML 5-Entwicklungszyklus? Warum dauert das so lange? Was macht es so schwierig, es richtig zu machen, dass es erst in 11 Jahren endgültig ist?
Antworten:
Der für den Finalisierungsprozess genannte Termin wurde so weit in die Zukunft verschoben, da der Standardprozess für die HTML-Spezifikation so eingerichtet wurde, dass eine breite Akzeptanz der Spezifikation gewährleistet ist.
Hintergrund: Es gibt zwei Normungsgremien, die sich mit Entwürfen zu dem befassen, was wir allgemein als "HTML5" bezeichnen: das World Wide Web Consortium (W3C) und die Arbeitsgruppe Web Hypertext Application Technology (WHATWG). Vor Juli 2012 arbeiteten beide Gruppen (meistens) zusammen, um HTML zu entwickeln.
Der Hauptprozess bestand darin, eine Reihe von Meilensteinen zu durchlaufen:
Der LCWD-Meilenstein begann im Jahr 2011 und die Phase der Kandidatenempfehlung sollte im Jahr 2014 relativ bald beginnen. Es war der letzte Meilenstein, die Empfehlung, die zwei vollständige Implementierungen der Spezifikation erforderte, die mehrere Jahre gedauert hätten und der Grund für das Jahr 2022 sind Datum.
In diesem Modell war der LCWD der erste echte Meilenstein, der Inhaltsautoren betraf (nicht Ersteller von Benutzeragenten wie Browser), da die Spezifikation größtenteils finalisiert werden sollte. Nach Fertigstellung des LCWD hätte HTML5 den Meilenstein der Kandidatenempfehlung erreicht, und es wäre eine endgültige Spezifikation mit Ausnahme des Namens gewesen: Sie hätten es ungestraft umsetzen können, wie dies der letzte Meilenstein, die Empfehlung, getan hätte haben keinen Einfluss auf den Inhalt des Standards und sind für Autoren von Inhalten weitgehend uninteressant.
Im Juli 2012 legten das W3C und die WHATWG jedoch eine Aufteilung der Art und Weise fest, wie der HTML5-Entwurf entwickelt werden soll. Diese Aufteilung, die seit ein paar Jahren funktioniert, erstellt zwei verschiedene HTML- "Spuren":
Ein Lebensstandard, der von der WHATWG entwickelt wurde und einfach "HTML" genannt wird, wobei die Spezifikation niemals vollständig ist. Es besteht ein angemessener Konsens für den Standard, es ist jedoch nicht erforderlich, alles umzusetzen.
Periodische, stabile Schnappschüsse des vom W3C als HTML5-Spezifikation entwickelten Standards. Ab September 2012 schlägt das W3C vor , den Meilenstein der Empfehlung für "HTML 5.0" im Jahr 2014 zu erreichen, wobei alle zwei Jahre Punkt-Snapshots erstellt werden sollen (z. B. "HTML 5.1" im Jahr 2016).
Aufgrund des ersteren ist HTML5, so wie wir es verstanden haben, jetzt verwendbar . Da es sich um einen lebendigen Standard handelt, ist es leider erforderlich, die Implementierung jedes Benutzeragenten zu verstehen, um es als Inhaltsautor zu verwenden.
quelle
Die einfache Antwort: Design by Committee
Der Vorteil der Menschenmenge, die sich das Design ansieht, besteht darin, dass die gesamte Gruppe verschiedene Aspekte vorstellt, an die der ursprüngliche Designer nicht gedacht hat. Das ist ein Plus.
Wenn der Designer eine große Menge ist, haben sie alle unterschiedliche Agenden und Haustierdinge, die sie aus irgendeinem Grund in den Standard aufnehmen möchten. Manchmal widersprechen sich die Merkmale, manchmal gibt es politische Gründe für Entscheidungen usw. Es dauert lange, bis sich eine große Gruppe von Menschen einig ist. Das ist ein Minus.
Das W3C hat sich entschieden, seine Standards auf diese Weise zu entwickeln.
quelle
Weil es wichtig ist, dass es stimmt.
Es braucht Zeit, um Abhilfe zu schaffen - Der einmal festgelegte HTML5-Standard wird noch lange bestehen. Es muss das Beste sein, was es sein kann, und es muss richtig sein. Dies erfordert Expertengespräche, Versuche und Irrtümer, Beiträge von Benutzern und Entwicklern sowie statistische Analysen
Wenn sich ein Standard ändert, bricht irgendwo jemandes App - Standards müssen beim ersten Mal stimmen. Mit jeder Änderung an einem Standard bricht irgendwo auf der Welt eine App mit der neuen Version. Dafür müssen wir als Entwickler Abhilfe schaffen, was Zeit und Geld kostet. Es muss beim ersten Mal richtig sein.
Unbestimmtheit muss beseitigt werden - Es ist einfach zu sagen, dass das Canvas-Tag dies tut, wenn sich nur das Canvas-Tag auf der Seite befindet, aber was ist, wenn es sich in einem anderen Tag befindet? Was ist mit Tag-Kombinationen? Wie sollen sie rendern? Wie sollen sie mit X-Stilattributen gerendert werden, die in bestimmten Kombinationen festgelegt sind?
Bonus: Werfen Sie einen Blick auf die HTML5-Spezifikation in ihrer aktuellen Form und Sie werden sehen, was darin steckt.
quelle
Lange? Es dauerte fast 8 Jahre, bis Microsoft einfaches CSS2 in IE7 zum Erliegen brachte, während die DOM1-Unterstützung in Javascript in IE8 immer noch fehlerhaft ist. Das ist die Spezifikation von 1998.
Aus diesem Grund wird HTML5 in den nächsten 20 Jahren nicht in großem Umfang in Multimedia-Anwendungen eingesetzt. Es ist sehr kompliziert, unvollendet, Leistung saugt. Auch einfache Dinge wie Websockets sind aus Sicherheitsgründen ausgeschaltet.
Manche Dinge funktionieren nicht als offene Standards. Machen Sie Spiele oder MMs in einer Umgebung, die auf Thin Clients funktionieren und eine vollständige Verschlechterung unterstützen sollen? Das ist Wahnsinn.
BEARBEITET: Ja, zuerst ist Überkomplikation. Sie haben ein Flash-Plugin, das in jedem Browser gleich ist und jedes Mal auf die gleiche Weise funktioniert. Das ist eine einfache und effektive Lösung. Eine Benutzeroberfläche, Sie nehmen die Änderung einmal vor, kompilieren sie neu und viola - Sie haben ein Plugin für alle Browser auf dem Markt, indem Sie eine Zwischenschicht zwischen Browser und Plugin verwenden.
Auf der anderen Seite haben Sie 10 Browser und möchten diese zB hinzufügen. Multimedia- / Filmunterstützung. Das bedeutet, dass jedes Unternehmen den Media Player von Grund auf neu implementieren muss und dass jeder etwas anderes möchte. Apple wünscht sich H.264, damit Website-Besitzer Lizenzgebühren für den Codec für das Abspielen von Filmen zahlen können. Google und Mozilla wollen VP8, damit ihr Unternehmen nicht von Apples Patenten usw. betroffen ist.
Es endet also damit, dass Dinge implementiert werden, die jeder möchte (während VP8 oder H.264 dies zunächst tun würden).
Bevor sie also ihre Unterschiede überwinden können, wird Adobe H.264 in Flash implementieren. Verwenden Sie ihren bereits verfügbaren Streaming- und DRM-Stack und ... es ist fertig. 3-4 Monate und Sie haben eine funktionierende Technologie mit einer Akzeptanzrate von 98%.
Ganz einfach, ein Unternehmen entscheidet, so dass es schnell massive Änderungen vorantreiben kann und nicht die "Ideen" von 20 anderen Mitgliedern des "Standardisierungsgremiums" hinzufügen muss. Neben HTML5 liegt Flash in Multimedia vielleicht 10-15 Jahre zurück. Die Lücke wird nur größer. In der letzten Version von MAX Avant wurden Gamecontroller unterstützt und 3D-Renn-Apps im Vollbildmodus, die auf Flash mit voller Geschwindigkeit und Unterstützung für Hardwarebeschleunigung usw. ausgeführt wurden. In der Zwischenzeit kann Mozilla jetzt H.246-Videos abspielen, ohne den Browser zum Absturz zu bringen, sondern nur abspielen. Zusätzliche Funktionen (wie Vollbild, Streaming, schneller Vorlauf) fehlen noch!
Außerdem denke ich, dass W3C nur Ressourcen verschwendet, indem es versucht, HTML5 zu einer halbherzigen Kopie von Flash zu machen. Es wird nicht funktionieren ... es ist wie der Versuch, eine Kopie von HTML zu erstellen. Wird nicht funktionieren.
quelle
Grundsätzlich ist es ziemlich schwierig, eine Gruppe von Menschen dazu zu bringen, sich auf etwas zu einigen. Ganz zu schweigen davon, dass es verschiedene Probleme zu lösen gibt. Zum Beispiel gibt es (war?) Viele Diskussionen darüber, welcher Codec für Videos verwendet werden soll.
Ob gut oder schlecht, die meisten Spezifikationen brauchen eine Weile, bis sie fertig sind.
quelle
Mark Pilgrim spricht darüber in seinem "Dive Into HTML5" hier: http://diveintohtml5.org/past.html Scheint, dass viele Leute die Buchversion nicht mögen, weil sie nicht technisch genug ist, aber in diesem Abschnitt die Editorial ist ziemlich gerechtfertigt.
(Bearbeiten: Ich wollte nur eine Referenz für meinen Kommentar zu Leuten bereitstellen, die die "gesprächige" Qualität des Buches nicht mögen: Überprüfen Sie die Rezensionen auf Amazon . Ich persönlich habe es jedoch genossen, es zu lesen und fand es informativ, so dass die Laufleistung variieren kann. )
quelle
Ein Teil des Problems ist, dass die Spezifikation erst finalisiert wird, wenn mindestens zwei Hauptimplementierungen der Spezifikation vorliegen - mindestens zwei separate Browser, die sie vollständig unterstützen. Die Spezifikation muss also für die vollständige Implementierung vollständig genug sein, dann muss sie tatsächlich implementiert werden, und dann kann sie finalisiert werden.
quelle
Teil des Problems: Ich möchte ogg theora im Browser. Sind Sie einverstanden? Nein, Sie wollen H.264. Aber stimme ich zu? Nein. Das ist das Problem bei Google, Mozilla, Microsoft, Apple, Adobe und allen Unternehmen, die hinter HTML 5 stehen. Sie versuchen, ihre Einnahmen zu maximieren und Monopolist zu sein. Sein intensiver Wettbewerb. So wird es länger zu vervollständigen.
quelle