Webkomponenten und offene Standards


Wenn Sie Entwickler fragen, warum sie Webkomponenten für ihr Projekt ausgewählt haben, können Sie solche Argumente häufig hören


  • Dies ist ein Webstandard, der von einer offenen Community erstellt wurde, nicht von einem privaten Unternehmen.
  • Webstandards beeinträchtigen die Abwärtskompatibilität nicht und müssen sich in Zukunft nicht mehr um Ihren Code kümmern
  • Alle modernen Browser halten sich in ihrem Verhalten an den Standard, weniger Überraschungen beim browserübergreifenden Testen

Die Argumente sehen in der üblichen Situation logisch und fair aus, aber bei Webkomponenten gibt es Nuancen, die ich in diesem Artikel offenbaren möchte.


Offener Standard


Die Offenheit des Standards impliziert, dass er unter Einbeziehung verschiedener Interessengruppen verfasst wurde. Das Ergebnis ist ein zufriedenstellendes Ergebnis. Was ist in diesem Fall passiert? Wir öffnen das Dokument und sehen seine Autoren


  • Dimitri Glazkov, Google
  • Hayato Ito, Google
  • Dominic Cooney, Google

Alle arbeiten in Google. In der Geschichte der Commits für dieses Repository ist die Situation ähnlich. Probieren Sie ein Diagramm mit Mitwirkenden aus, um eine Person zu finden, die nicht von Google stammt. In den ersten fünf sind dies definitiv nicht.


, 100% . , , ? .



. - CSS, . - Shadow DOM, , . , , , Javascript , try/catch.


, .


, . , .


, 6 , , . , , .



, , ? . .


- . , <button> :


customElements.define('cool-button', CoolButton, { extends: 'button' });

, Safari. webkit , , . custom-attributes custom-elements, .


Firefox - ( is=””) ,


- , , " , , "



, . .


- . - HTML-. , - .


Firefox . , Javascript- .


, Chrome, Google Polymer, . Polymer HTML-, – -.


Shadow DOM, , .


, " – " - .


, , - - . , , , - .


-


, Shadow DOM v0 .


adoptedStylesheets. . , , . -, , , "Collection of Interesting Ideas" – Editor Draft – -.


, , . , , . :


  1. ,
  2. production-ready
  3. , .

, , - Github: https://github.com/wicg. , WHATWG W3C, , WICG :


Community Groups are proposed and run by the community. Although W3C hosts these conversations, the groups do not necessarily represent the views of the W3C Membership or staff.

:


. W3C, W3C.

, "" , , , .


. . Opera Chromium, Edge. , . caniuse, 3 6 , Mozilla , .



Ich hoffe, dieser Artikel ermöglicht es Ihnen, eine fundierte Entscheidung über die Verwendung von Webtechnologien zu treffen. Der Artikel drückt ausschließlich meine persönliche Meinung aus, enthält jedoch genügend Verweise auf Quellen, so dass jeder sie lesen und seine eigenen zusammenstellen kann.


Wenn Sie nach all dem immer noch der Meinung sind, dass Webkomponenten eine gute Lösung für Ihr Projekt sind, ist dies großartig. Aber wenn das einzige Argument "für" "gut, das ist der Webstandard, sie können nicht verwechselt werden" war, dann ist es besser, Ihre Schlussfolgerungen zu überdenken und aufzuhören, diesen Kaktus zu essen.

Source: https://habr.com/ru/post/undefined/


All Articles