Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?

WebKit wird 10 Jahre alt

Fast untergegangen wäre heute der Geburtstag der Browser-Engine WebKit, auf den Apple-Entwickler Matt Drance in seinem Blog hinweist. Die WebKit-Engine wird heute 10 Jahre alt, obwohl der erste auf WebKit aufbauende Web-Browser Safari erst Anfang 2003 auf der Macworld in San Francisco vorgestellt wurde. Bis WebKit zum echten Open-Source-Projekt wurde, vergingen aber noch einmal zwei Jahre. Als Steve Jobs den Browser erstmals der Öffentlichkeit vorstellte, machte er aber dennoch kein Geheimnis aus den Wurzeln von WebKit, welches auf dem zu damaligen Zeit noch jungen KHTML-Projekt basierte. Mittlerweile ist WebKit gar nicht mehr aus dem Browser-Markt wegzudenken und hat in unzähligen Browser-Formen einen zweistelligen Marktanteil erarbeitet. So kommt WebKit nicht nur in Safari zum Einsatz, sondern unter anderem auch in Adobe AIR, Android, BlackBerry OS, Chrome, iTunes, Steam, Symbian und WebOS. War das Verhältnis zwischen KHTML und WebKit zunächst sehr angespannt, weil Apple die Source-Änderungen von WebKit nur in unzureichender Form an das KHTML-Projekt weiter reichte, hat sich mittlerweile eine rege Zusammenarbeit heraus kristallisiert. Offen bleibt allerdings, ob KHTML nicht vielleicht irgendwann in WebKit aufgehen wird, so dass die Entwicklung konzentriert an einer Browser-Engine fortgesetzt werden kann.

Weiterführende Links:

Kommentare

Retrax25.08.11 15:35
Gibt es in der Mozilla Community nicht Diskussionen WebKit anstelle der Gecko-Engine zu verwenden?

Wäre zu begrüßen, oder?

0
fluppy
fluppy25.08.11 16:30
Nee das wäre schlimme Monokultur, da kann nichts gutes dabei rauskommen. Chrome basiert ja auch mehr oder weniger auf Webkit.

Dann gäbe es nur noch IE und Webkit (und Opera).
0
fluppy
fluppy25.08.11 16:36
Ausserdem wird Firefox 7, der ja schon als Beta da ist, angeblich der Knaller.
0
Sagrido
Sagrido25.08.11 16:40
fluppy: Der ja leider nicht auf WebKit basiert - also noch immer nicht so wirklich interessant - von der Cocoageschichte mal ganz zu schweigen.
0
Aronnax25.08.11 17:05
Retrax
Gibt es in der Mozilla Community nicht Diskussionen WebKit anstelle der Gecko-Engine zu verwenden?
Es gab mal welche, aber nun schon lange nicht mehr und wurde auch nie ernsthaft in Erwägung gezogen.
Wäre zu begrüßen, oder?
Nöö
0
Aronnax25.08.11 17:11
fluppy
Nee das wäre schlimme Monokultur, da kann nichts gutes dabei rauskommen. Chrome basiert ja auch mehr oder weniger auf Webkit.
Wieso mehr oder weniger? Es basiert komplett auf Webkit.
Aktuell arbeitet Google sogar deutlich intensiver an Webkit als Apple - siehe z.B. sehr viele der letzten gefixten Sicherheitsbugs in Safari/Webkit, die fast alle von Google geflickt wurden.
0
sierkb26.08.11 05:13
Als Steve Jobs den Browser erstmals der Öffentlichkeit vorstellte, machte er aber dennoch kein Geheimnis aus den Wurzeln von WebKit, welches auf dem zu damaligen Zeit noch jungen KHTML-Projekt basierte.

"noch jungem KHTML-Projekt" ist wohl etwas fehlinformiert. Denn:

KHTML und den darauf aufbauenden Webbrowser Konqueror des Linux-/Unix Desktops KDE gab's zu dem Zeitpunkt, als Apple sich dafür zu interessieren begann und dann später beherzt zugriff, bereits schon ein paar Jahre und hatte bereits viele Sympathien bei den KDE-Nutzern eingeheimst:

Wikipedia (en): KHTML :
KHTML
Origins

KHTML was preceded by an earlier engine called khtmlw or the KDE HTML Widget, developed by Torben Weis and Martin Jones, which implemented support for HTML 3.2, HTTP 1.0, and HTML frames, but not the W3C DOM, CSS, or scripting.

KHTML came into existence on November 4, 1998, as a copy of the khtmlw library, with some slight refactoring and the addition of Unicode support and changes to support the move to Qt 2. Waldo Bastian was among those who did the work of creating that early version of KHTML.

Re-write and improvement

The real work on KHTML actually started between May and October 1999, with the realization that the choice facing the project was "either do a significant effort to move KHTML forward or to use Mozilla" and with adding support for scripting as the highest priority. So in May 1999, Lars Knoll began doing research with an eye toward implementing the W3C DOM specification, finally announcing on August 16, 1999 that he had checked in what amounted to a complete rewrite of the KHTML library — changing KHTML to use the standard W3C DOM as its internal document representation. That in turn allowed the beginnings of JavaScript support to be added in October 1999, with the integration of Harri Porten's KJS following shortly afterward.

In the closing months of 1999 and first few months of 2000, Knoll did further work with Antti Koivisto and Dirk Mueller to add CSS support and to refine and stabilize the KHTML architecture, with most of that work being completed by March 2000. Among other things, those changes enabled KHTML to become the second browser after Internet Explorer to correctly support Hebrew and Arabic and languages written right-to-left — before Mozilla had such support.

KDE 2.0 was the first KDE release (on October 23, 2000) to include KHTML (as the rendering engine of the new Konqueror file and web browser, which replaced the monolithic KDE File Manager).

Wikipedia (en): KDE Konqueror :
Konqueror
Konqueror came with the version 2 of KDE, released on October 23, 2000. It replaces its predecessor, KFM (KDE file manager). With the release of KDE4, Konqueror was replaced as a file manager by Dolphin.
[..]
Web browser

Konqueror has been developed as an autonomous web browser project. It uses KHTML as its layout engine, which is compliant with HTML and supports JavaScript, Java applets, CSS, SSL, and other relevant open standards. An alternative layout engine, kwebkitpart, is available from the Extragear.

While KHTML is the default web-rendering engine, Konqueror is a modular application and other rendering engines are and have been available. Especially the WebKitPart that uses the KHTML-derived WebKit engine has seen a lot of support in the KDE 4 series.
[..]

Ebenso auch KJS, die JavaScript-Engine des Konquerors, welche Apple für WebKit übernahm bzw. darauf aufbaute und sie dann umbenannte in JavaScriptCore:

Wikipedia (en): KJS (KDE) :
KJS is KDE's ECMAScript/JavaScript engine that was originally developed for the KDE project's Konqueror web browser by Harri Porten in 2000.

On June 13, 2002, Maciej Stachowiak (Maciej was involved with the SCWM, GNOME and Nautilus projects for Linux before joining Apple ) announced on a mailing list that Apple was releasing JavaScriptCore, a framework for Mac OS X that was based on KJS. Through the WebKit project, JavaScriptCore has since evolved into SquirrelFish Extreme, a JavaScript engine that compiles JavaScript into native machine code.

Wikipedia (en): WebKit :
WebKit:
Origins:

The code that would become WebKit began in 1998 as the KDE project's HTML layout engine KHTML and KDE's JavaScript engine (KJS). The name and project 'WebKit' were created in 2002 when Apple Inc. created a fork of KHTML and KJS. Apple developers explained in an e-mail to KDE developers that these engines allowed easier development than other technologies by virtue of being small (fewer than 140,000 lines of code), cleanly designed and standards-compliant. KHTML and KJS were ported to Mac OS X with the help of an adapter library and renamed WebCore and JavaScriptCore. JavaScriptCore was announced in an e-mail to a KDE mailing list in June 2002, alongside the first release of Apple's changes. WebCore was announced at the Macworld Expo in January 2003 by Apple CEO Steve Jobs with the release of the Safari web browser. JavaScriptCore was first included with Mac OS X v10.2 as a private framework which Apple used within their Sherlock application, while WebCore debuted with the first beta of Safari. Mac OS X v10.3 was the first major release of Apple's operating system to bundle WebKit, although it had already been bundled with a minor release of 10.2.

However, the exchange of code patches between the two branches of KHTML has previously been difficult and the code base diverged because both projects had different approaches in coding. One of the reasons for this is that Apple worked on their version of KHTML for a year before making their fork public.
[..]

Split development

At one point KHTML developers said they were unlikely to accept Apple's changes and claimed the relationship between the two groups was a "bitter failure". Apple submitted their changes in large patches that contained a great number of changes with inadequate documentation, often to do with future feature additions. Thus, these patches were difficult for the KDE developers to integrate back into KHTML. Furthermore, Apple had demanded developers to sign nondisclosure agreements before looking at Apple's source code and even then they were unable to access Apple's bug database.

During the publicized 'divorce' period, KDE developer Kurt Pfeifle (pipitas) posted an article claiming KHTML developers had managed to backport many (but not all) Safari improvements from WebCore to KHTML, and they always appreciated the improvements coming from Apple and still do so. The article also noted Apple had begun to contact KHTML developers about discussing how to improve the mutual relationship and ways of future cooperation.

Since the story of the fork appeared in news, Apple has released changes of the source code of its KHTML fork in a CVS repository. Since the transfer of the sourcecode into a public CVS repository, Apple and KHTML developers have had increasing collaboration. Many KHTML developers have become reviewers and submitters for WebKit SVN repository.

The WebKit team had also reversed many Apple-specific changes in the original WebKit code base and implemented platform-specific abstraction layers to make committing the core rendering code to other platforms significantly easier.

In July 2007, the Ars Technica website published an article reporting that the KDE team would move from KHTML to WebKit. Instead, after several years of integration, KDE Development Platform version 4.5.0 was released in August 2010 with support for both WebKit and KHTML, and development of KHTML continues.

Open-sourcing

On June 7, 2005, Safari developer Dave Hyatt (before Apple, Hyatt worked at Netscape Communications from 1997 to 2002 where he contributed to the Mozilla web browser. While at Netscape, he also created Camino (then known as Chimera) and co-created Firefox (originally called Phoenix) with Blake Ross. ) announced on his weblog that Apple was open-sourcing WebKit (previously, only WebCore and JavaScriptCore were open source) and opening up access to WebKit's CVS tree and the bug Database tool. This was announced at Apple's Worldwide Developers Conference 2005 by Apple Senior Vice President of Software Engineering Bertrand Serlet.
[..]
WebKit's JavaScriptCore and WebCore components are available under the GNU Lesser General Public License, while the rest of WebKit is available under a BSD-style license.
[..]

Die beiden Wikipedia-Einträge bzgl. Maciej Stachowiak und Dave Hyatt und deren Biographien und Werdegänge im Browser- und Open-Source- bzw. Linux-Business, bevor sie zu Apple gegangen sind, sind ebenfalls interessant und eine Randnotiz wert.
0

Kommentieren

Sie müssen sich einloggen, um die News kommentieren zu können.