Movatterモバイル変換


[0]ホーム

URL:


コンテンツにスキップ
Wikipedia
検索

WebKit

出典: フリー百科事典『ウィキペディア(Wikipedia)』
レンダリングエンジン >HTMLレンダリングエンジン >WebKit
WebKit
2015年時点のロゴマーク。
開発元AppleKDEノキア[1]
最新評価版
Nightly[2]
リポジトリウィキデータを編集
対応OSクロスプラットフォーム
対応言語C++
サポート状況開発中
種別レンダリングエンジン
ライセンスLGPL /BSD-style
公式サイトwebkit.orgウィキデータを編集
テンプレートを表示

WebKit(ウェブキット)は、Appleが中心となって開発しているオープンソースHTMLレンダリングエンジン群の総称である。HTMLCSSJavaScriptSVGMathMLなどを解釈する。

WebKitは、元々AppleのmacOSに搭載されるSafariレンダリングエンジンとして、LinuxBSDといった、Unix系用のレンダリングエンジンであるKHTMLフォークして開発された。現在はその他の多くのプラットフォームに移植されている。

ライセンス

[編集]

WebKitのWebCoreおよびJavaScriptCoreライブラリはGNU Lesser General Public License (LGPL) 、その他の部分は修正BSDライセンスで利用可能である[3]

歴史

[編集]
この節は検証可能参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。このテンプレートの使い方
出典検索?"WebKit" – ニュース ·書籍 ·スカラー ·CiNii ·J-STAGE ·NDL ·dlib.jp ·ジャパンサーチ ·TWL
(2020年12月)

WebKitは元々、macOSのウェブブラウザ "Safari" のレンダリングエンジンとして使用するため、LinuxやBSDといったUnix系用のブラウザ "Konqueror" のKHTMLソフトウェア・ライブラリを基にAppleによって作成され、現在までに、Apple、KDE、ノキア、Google、Torch Mobileなどによって改良が加えられた。

起源

[編集]

LinuxやBSDなどのUnix系用ブラウザとして、1998年KDEプロジェクトHTMLレンダリングエンジン "KHTML" と KDE のJavaScriptエンジン (KJS) が開発された。その後、Appleが2002年にそれらをフォークしてWebKitを開発した。

WebKitはKHTMLをもとにしたHTMLパーザかつレンダラであるWebCoreと、KJSを基にしたJavaScriptエンジンであるJavaScriptCoreを下位ライブラリとして含む。

当初、KHTMLとKJSは、Mozillaプロジェクトによって同じくオープンソースで開発が進められていたGeckoエンジンの基本方針である高いWeb標準への準拠と競合しないよう、Internet Explorerとの高い互換を目指し開発が行われていた。

その後、WebKitでは両ライブラリともパフォーマンス向上やWebサイトの表示の改善、Web標準へのさらなる準拠のために、基となったKDEの実装からかなりの修正が加えられている。

開発・オープンソース化

[編集]

Mac OS X v10.3以降に搭載されているmacOS標準のウェブブラウザ、Safariの基礎を成している。プログラマはわずかな作業でその機能を外部アプリケーションから利用できる。Objective-CからWebKitのAPIにアクセスすることでWebサーバとの通信、Webページの取得および表示、外部プラグインの利用などを扱うことができる。

2005年6月7日、Safariの開発者Dave Hyattは自身のブログ上でAppleがWebKitをオープンソース化し(それまではWebCoreとJavaScriptCoreのみがオープンソースであった)、CVSBugzillaへのアクセスを公開することを発表した[4]。これに関してはBertrand SerletがAppleのWWDC 2005にて初めて公式発表を行っている。また、2006年1月10日にCVSからSubversionに移行した。

2007年初めにはアニメーションなどを含む新たなCSS拡張の実装に着手した[5]。これらの拡張は標準化のため2009年にW3Cにワーキングドラフトとして提出された[6]

2007年11月には、HTML5のメディア機能のサポートを達成したことが発表された[7]。このHTML5に部分対応したWebKitでは、組み込み動画のネイティブ描画とスクリプトコントロールが可能である。

2008年3月26日、WebKit r31356(最初のスコア100はr31342)が、世界で最初に公開されたAcid3ウェブ標準準拠の指標の一つ)に合格したレンダリングエンジンとなった[8]。2008年9月25日、スムーズなアニメーションを含め、Acid3を完全にパスしたと発表された[9]

WebKit2

[編集]

2010年4月8日分離プロセスモデルを採用したWebKit2[10]の開発が発表された[11]。WebKit2の採用例としては、AppleやTizenなどがある。WebKit2ではWebKitから大幅にAPIの仕様が変更されており、互換性が失われている。そのため「WebKit2」という新たな名称を採用し、従来のWebKitとは区別できるようにしている。

2011年7月21日にAppleがWebKit2エンジンであるSafari5.1を公開した[12]iOS向けのSafariでは、iOS 8よりWebKit2が採用された[13]

Blinkとの分裂

[編集]
→「Blink (レンダリングエンジン)」も参照

2013年4月3日、AppleとGoogleが開発方針をめぐって対立したことや、Chromiumを搭載した時期からWebKitエンジン自体が複雑化したことで開発の遅滞が問題視された。このことからGoogleはWebKitをBlinkにフォークさせる事を発表した。直前にChromiumへの参加という形でWebKit採用を発表していたOperaも、それに伴いBlink採用を表明する形となった。翌日の4月4日、AppleはV8の排除、JavaScriptCore以外の使用の排除、Skiaの排除、GoogleのビルドシステムGYPの排除などの計画を表明し[14]、WebKitはGoogleが直接使うエンジンではなくなった。しかし、Linux向けビルドも用意され、依然としてOSSでありSafari専用という訳ではない[15][16]

移植

[編集]

当初macOSのために開発されたため、WebKitを使用したウェブブラウザはmacOS専用のものが多かったが、Google Chrome (同系統のChromiumも同様。ただしそれらは2013年4月以降はWebKitから分岐されたBlinkを使用) など、LinuxやWindows向けウェブブラウザにもWebKitを採用したものが出てきている。Apple自身もWindows版のSafariの開発にも用いている。最近ではWebKitはデスクトップにとどまらず、モバイルプラットフォームでも活用されている。

  • ノキアは、自社のSymbian OS上のインターフェース環境S60 3rd Editionのブラウザ用に、WebKitをS60に移植した (S60 WebKit)[17]
  • アドビは、FlashFlex、HTML、JavaScript、Ajaxの技術を用いて、高度なインターネットアプリケーションを構築するクロスプラットフォームランタイムであるAIR(コードネームApollo)において、HTMLやJavaScriptを処理するエンジンとしてWebKitを採用している[18]。また、Adobe Dreamweaver CS4での採用が発表された[19]
  • Googleは、Google ChromeAndroid標準ブラウザ(4.3以前)、携帯電話プラットフォームAndroidで採用している[20]
  • WebKit/GTK+は、GTK+(現・GTK)向けのポート。様々なWebブラウザやメールクライアント等で利用されている[21]
  • Windows向けのウェブブラウザであるLunascapeは、バージョン5.0αから、WebKitを選択可能なエンジンの一つとして搭載。
  • Iris Browserは、Torch MobileによるWebKitをベースにした、QTとQtopia、Windows Mobile向けブラウザ。1.0.5PreviewよりWindows Mobile 5もサポートされた[22]
  • Opera Softwareは、自社の独自路線を変更し、Webkitの採用を決めたことを発表していた[23]。ただし、前述の通りその後Blinkへ移行している。

コンポーネント

[編集]

WebCore

[編集]

WebCoreは、WebKitプロジェクトにより開発された、HTMLおよびSVGのレイアウト、レンダリング、Document Object Model (DOM)ライブラリである。WebCoreの完全なソースコードLGPLで公開されている。WebKitフレームワークはWebCoreおよびJavaScriptCoreをラップし、C++ベースのWebCoreレンダリングエンジンおよびJavaScriptCoreスクリプトエンジンにObjective-C application programming interface (API) を提供することにより、Cocoa APIベースのアプリケーションから容易に参照することを可能にしている。より最近のバージョンはクロスプラットフォームのC++プラットフォーム抽象化を含んでおり、また様々なportは追加APIを提供している。

JavaScriptCore

[編集]

JavaScriptCoreは、WebKitの実装にJavaScriptエンジンを提供するフレームワークであり、またmacOSのその他の場面で使用される同様のスクリプティングを提供する[24][25]。JavaScriptCoreはKDE's JavaScript engine (KJS) ライブラリおよびPerl Compatible Regular Expressions (PCRE)正規表現ライブラリに由来している。KJSおよびPCREからフォークされてから、JavaScriptCoreは多くの新機能について改良がなされ、パフォーマンスも大幅に向上している[26]

2008年6月2日、発表時点で従来より1.6倍の高速化を果たした、新たなJavaScriptCoreとしてバイトコードインタプリタVM[27]のSquirrelFishが発表された[28]。また、9月18日には、SquirrelFishよりおよそ2倍の高速化を果たしたSquirrelFish Extreme (SFX) が発表された[29]

Drosera

[編集]

DroseraはWebKitのナイトリービルドに含まれていたJavaScriptデバッガーである[30][31]。Droseraの名は食虫植物(つまりバグを食べる)のモウセンゴケ属の学名から付けられた。DroseraはWeb Inspectorに含まれるデバッギング機能によって置き換えられている[32]

SunSpider

[編集]

SunSpiderは、現在および近い将来に想定されるJavaScriptの使用(画面描画、暗号化、テキスト操作など)に関連するタスクのJavaScriptパフォーマンスを測定する目的で作られたベンチマークスイートである[33] The suite further attempts to be balanced and statistically sound.[34]

SunSpiderはAppleのWebKitチームによって2007年12月にリリースされた[35]。SunSpiderは広く受け入れられ[36]、他のブラウザーの開発者もブラウザー間のJavaScriptパフォーマンスを比較するため使用している[37]

WebKitを使用するソフトウェア

[編集]

ウェブブラウザ

[編集]

WebKit2

[編集]

開発終了

[編集]
Chromiumベース
[編集]

その他のソフトウェア

[編集]
  • macOSおよびWindows向け
  • macOS向け
    • メール - macOS付属のソフトウェア
    • Dashboard - macOS付属のソフトウェア環境
  • モバイル向け
    • Android - Googleの提唱する携帯電話用プラットフォーム
    • iOS - 内包され、SafariやMail等で利用されている
    • HP webOS - HPのAccess Linux Platform (ALP) をベースとした携帯電話用プラットフォーム
  • ChromeOS

バージョンの対応関係

[編集]

Google Chrome は 28以降Blink に移行したが、下記表は Blink を含まず、WebKit の対応表。

WebKitSafariMobile SafariGoogle ChromeAndroid
Browser
Chrome for
Android
3DSNew 3DSWii UPS3PS4Vita
5253.1, 3.23.10.4
5284.011.5, 1.6 
5304.0 - 4.0.222.0, 2.1
5314.0.3 - 4.0.54.0.44.10 -1.00 - 1.81
5324.0.53, 4
5334.1, 5.05.0.252.2, 2.3
5345.15.16 - 123.0 - 4.22.0.0-2J - 9.5.0-22J2.1.0J - 3.1.0J
53513 - 1816 - 189.5.0-23J -
5366.06.019, 208.1.0-0J -4.0.0J -1.00 - 1.762.00 - 3.20
5377.07.021 - 274.325 - 272.00 -3.30 -

脚注

[編集]
[脚注の使い方]

出典

[編集]
  1. ^Companies and Organizations that have contributed to WebKit” (英語). trac.webkit.org. 2010年4月15日閲覧。
  2. ^WebKit Nightly Builds”. WebKit.org. 2016年4月3日時点のオリジナルよりアーカイブ2014年5月27日閲覧。
  3. ^Apple Inc.. “Open Source - Internet & Web - WebKit” (英語). 2009年10月8日閲覧。
  4. ^http://weblogs.mozillazine.org/hyatt/archives/2005_06.html#008281
  5. ^CSS Transforms
  6. ^CSS3 Animations
  7. ^HTML5 Media Support by Antti Koivisto,Surfin' Safari blog, November 12th, 2007
  8. ^WebKit achieves Acid3 100/100 in public build
  9. ^Full Pass of Acid3
  10. ^WebKit2
  11. ^[webkit-dev] Announcing WebKit2
  12. ^“Apple、マルチプロセス採用の“WebKit2”を搭載した「Safari」v5.1を公開”. 窓の杜. (2011年7月21日). https://forest.watch.impress.co.jp/docs/news/462091.html 2011年7月24日閲覧。 
  13. ^WWDC 2014 Session 206 - Introducing the Modern WebKit API - ASCIIwwdc”. 2014年12月13日閲覧。
  14. ^webkit-dev Cleaning House
  15. ^The WebKit Open Source Project”. WebKit (2015年11月7日). 2021年3月29日閲覧。
  16. ^WebKit Downloads”. WebKit (2016年3月30日). 2021年3月29日閲覧。
  17. ^ノキア、'Web Browser for S60'エンジンのコードをオープンソース・コミュニティに公開』(プレスリリース)ノキア・ジャパン、2006年5月24日http://www.nokia.co.jp/about/release_060524.shtml2011年7月24日閲覧 
  18. ^Adobe Integrated Runtime (AIR)
  19. ^Adobe Dreamweaver CS3 10 周年記念イベント レポート
  20. ^What is Android?
  21. ^WebKitGtk - GNOME Live!
  22. ^Torch Mobile
  23. ^Stephen Shankland (2013年2月14日). “Opera、ブラウザエンジンにWebKitを採用へ”. CNET News. https://japan.cnet.com/article/35028206/ 2013年2月14日閲覧。 
  24. ^The WebKit Open Source Project – JavaScript
  25. ^KDE-Darwin mailing list, "JavaScriptCore, Apple’s JavaScript framework based on KJS", 13 June 2002.
  26. ^The Great Browser JavaScript Showdown” (2007年12月19日). 2009年10月8日閲覧。
  27. ^SquirrelFish – WebKit – Trac
  28. ^Surfin’ Safari - Blog Archive  » Announcing SquirrelFish
  29. ^Introducing SquirrelFish Extreme
  30. ^WebKit.orgDrosera wiki article
  31. ^Introducing Drosera”. Surfin’ Safari. 2009年10月8日閲覧。
  32. ^Commit removing Drosera”. 2009年10月8日閲覧。
  33. ^Muchmore, Michael (2008年6月18日). “Review: Firefox 3 Stays Ahead of Browser Pack”. http://www.foxnews.com/story/0,2933,368182,00.html 2008年9月6日閲覧。 
  34. ^SunSpider JavaScript Benchmark”. 2008年9月6日閲覧。
  35. ^Announcing SunSpider 0.9” (2007年12月18日). 2008年9月6日閲覧。
  36. ^Atwood, Jeff (2007年12月19日). “The Great Browser JavaScript Showdown”. 2008年9月6日閲覧。
  37. ^Resig, John (2008年9月3日). “JavaScript Performance Rundown”. 2008年6月9日閲覧。
  38. ^HTML5対応のWebKit版ブラウザ | 株式会社ACCESS
  39. ^NetFront Life Browser 和製PDA用WebブラウザがAndroid端末に登場”. アンドロイダー. TriWorks Corp. JAPAN (2010年11月15日). 2010年11月15日閲覧。
  40. ^ニンテンドー3DS用インターネットブラウザーLGPL適用オープンソースについて アーカイブの中にWebKitのソースコードが入っている
  41. ^ACCESS、情報家電向けブラウザの新製品「NetFront® Browser NX」を発表
  42. ^インターネットブラウザーの主な仕様
  43. ^Wii U インターネットブラウザーの主な仕様
  44. ^任天堂の新ゲーム機「Wii U」に ACCESSの「NetFront® Browser NX」をブラウザエンジンとして提供 | 株式会社ACCESS

関連項目

[編集]

外部リンク

[編集]
バージョン
iOS logo
派生OS
iPadOS
アプリケーション
廃止
機能
廃止
サービス
終了
その他
バージョン
macOS logo
アプリケーション
廃止
ユーティリティ
廃止
テクノロジーおよび
インタフェース
非推奨
廃止
開発ツール
開発中
開発終了
レンダリングエンジンの比較英語版
機能
ウェブ標準
関連項目
デスクトップ
KHTML,WebKit,Blink
Chromium系
自由ソフトウェア
(開発継続中)
フリーウェア
(開発継続中)
(開発終了済)
すべて▲
Gecko &Servo
(Firefox系)
(開発継続中)
(開発終了済)
すべて▲
Trident &EdgeHTML
Edge, IE系
(開発終了済)すべて▲
Presto
  • Opera (Version 12.18以前)▲
Goanna
テキスト
その他
モバイル
WebKit/Blink
Gecko
Trident/EdgeHTML
Presto
その他
テレビ · ゲーム機
WebKit/Blink
Gecko
Presto
その他
  • ▲印のブラウザは開発終了
全般
解説
開発
OS英語版
ソフトウェア
ホスティング
団体
標準化団体
開発支援団体
ライセンス
指針
主要例
その他
課題
特性上の課題
対立と論争
その他
一覧
スタブアイコン

この項目は、FLOSSに関連した書きかけの項目です。この項目を加筆・訂正などしてくださる協力者を求めていますPortal:FLOSS)。

https://ja.wikipedia.org/w/index.php?title=WebKit&oldid=103633072」から取得
カテゴリ:
隠しカテゴリ:

[8]ページ先頭

©2009-2025 Movatter.jp