Blinken (Browser-Engine) - Blink (browser engine)
Entwickler | Das Chromium- Projekt und Mitwirkende |
---|---|
Erstveröffentlichung | 3. April 2013 |
Repository | |
Geschrieben in | C++ |
Typ | Browser-Engine |
Lizenz | BSD und LGPLv2.1 |
Webseite | Chrom |
Blink ist eine Browser-Engine, die im Rahmen des Chromium- Projekts (seit 2013) mit Beiträgen von Google , Facebook , Microsoft , Opera Software , Adobe , Intel , IBM , Samsung und anderen entwickelt wurde. Es wurde erstmals im April 2013 angekündigt.
Benennung
Die Benennung von Blink wurde durch das nicht standardmäßige blinkende HTML-Element beeinflusst , das von Netscape Navigator eingeführt und bis August 2013 von Presto- und Gecko- basierten Browsern unterstützt wurde. Blink hat das Element im Gegensatz zu seinem Namen nie funktional unterstützt.
Geschichte
Blink ist ein Fork der WebCore- Komponente von WebKit , der ursprünglich ein Fork der KHTML- und KJS- Bibliotheken von KDE war . Es wird in Chrome ab Version 28, Microsoft Edge ab Version 79, Opera (15+), Vivaldi , Brave , Amazon Silk und anderen Chromium-basierten Browsern und Frameworks verwendet .
Ein Großteil des Codes von WebCore wurde für Funktionen verwendet, die Google Chrome anders implementiert hat, z. B. Sandboxing und das Multiprozessmodell . Diese Teile wurden für die Blink-Gabel geändert, und obwohl sie etwas sperriger sind, ermöglicht sie eine größere Flexibilität beim Hinzufügen neuer Funktionen. Der Fork veraltet auch CSS- Herstellerpräfixe ; vorhandene Präfixe werden auslaufen und neue experimentelle Funktionen werden stattdessen auf Opt-in-Basis aktiviert. Abgesehen von diesen geplanten Änderungen blieb Blink zunächst WebCore relativ ähnlich.
Gemessen an der Commit-Anzahl hat Google seit Ende 2009 den größten Beitrag zur WebKit-Codebasis geleistet.
Einbauten
Die Blink-Engine hat die folgenden Komponenten:
- DOM- , HTML-DOM- und CSS- Rendering-Engines
- Web-IDL- Implementierung
- Skia Graphics Engine – ruft eine zugrunde liegende Grafikbibliothek (wie OpenGL , Vulkan , DirectX usw.) auf, die von der Plattform abhängt
- V8- JavaScript-Engine
Frameworks
Es gibt mehrere Projekte, um Chromiums Blink in ein wiederverwendbares Software-Framework für andere Entwickler zu verwandeln :
- In derzeit unterstützten Versionen des Android-Betriebssystems (seit Version 4.4 ) basiert die WebView-Komponente auf Blink statt auf WebKit.
- Chromium Embedded Framework wird häufig in Software von Adobe Systems , Streaming-Media- Diensten wie Spotify , Videospieldiensten wie Battle.net und Steam usw. verwendet.
- NW.js (früher bekannt als Node-Webkit) ist das ursprüngliche Node.js- basierte Framework und wird von Intel entwickelt .
- Electron ist ein von GitHub entwickeltes Node.js- basiertes Framework .
- Im Qt 5-Framework ersetzt das Qt WebEngine-Modul das vorherige QtWebKit- Modul. Im Jahr 2013 ersetzte Qt WebEngine die von Apple entwickelte WebKit- Engine durch Blink aufgrund ihrer plattformübergreifenden Funktionen (wie WebRTC , WebGL , WebSockets , Systemaufrufe usw.) , die sofort einsatzbereit sind . Qt-Entwickler fanden es einfacher, es zu warten und zu testen.
- Microsoft Edge WebView2 ist ein Framework, das es Entwicklern von Windows-Apps ermöglicht, eine Desktop-App mithilfe von Webtechnologien zu implementieren und die älteren EdgeHTML- oder Trident- basierten WebView- und WebBrowser-Steuerelemente zu ersetzen.
- DotNetBrowser ist eine proprietäre .NET Chromium-basierte Bibliothek, die verwendet werden kann, um Chromium-Funktionen in einer Vielzahl von .NET-Anwendungen zu verwenden, einschließlich Desktop- und Serverlösungen.
Plattformen
Chromium Blink wird auf sechs Plattformen implementiert: Windows, macOS, Linux, Chrome OS, Android und Android WebView.
Blink wird auch inoffiziell von FreeBSD und OpenBSD unterstützt .
iOS-Versionen von Chromium verwenden weiterhin den WebKit WebCore-Renderer.