WebKit とは


HOME > TIPS > はじめてのブラウザのつくりかた > はじめてのブラウザのつくり方 10.2

WebKit とは

2003 年のWorld Wide Developer Conference (WWDC) では、Safari 1.0 と WebKit SDK が発表された!一言でいうと、これでSafari のレンダリングエンジンを、自分のアプリケーションで使える環境が整ったんだ。このドキュメントでは、この WebKit の使い方を解説しよう。

だけど、ちょっと待って。WebKit っていう言葉の他に、WebCore っていうのもあったよな。それと、Safari ってオープンソースなんでしょ?WebKit もソースが見れるの?どうも、Safari については、いろんな用語が飛び交っているので、誤解も生じているようだ。だから、まずSafari の構造とWebKit の位置づけについて説明しよう。

1.1 Safari の構造


Safari はWebKit というフレームワークを利用している。つまり、Safari アプリケーションのソースコードと、WebKit から構成されている。そして、WebKit の内部は、次のような4 つのパートに分けることが出来るんだ。

■WebKit
Web ページの画面への描画や、アプリケーションへのインタフェースを担当。

■WebFoundation
ネットワークからのリソースのダウンロードを担当。Foundation フレームワークの一部。

■WebCore フレームワーク
HTML のパース、レンダリングを担当。オープンソース。

■JavaScriptCore フレームワーク
Java Script の実行を担当。オープンソース。

ということで、WebKit フレームワークのうち、オープンソースであるのは WebCore、JavaScriptCore の部分なんだ。WebKit のすべてが公開されているわけではないので、注意してくれ。

Safari とWebKit の関係は、次の図のような感じだ。

safari.jpg

1.2 WebKit を使ったアプリケーションとは

上の図から分かることは、Safari の本体とWebKit フレームワークは別々に存在し ているんだ。つまり、Safari の本体にあたるような、WebKit を利用するアプリケー ションを作れば、自分用のブラウザが作れるんだ。WebKit.framework のうち、アプ リケーションから使うことが出来るのは、WebKit とWebFoundation のAPI だ。

Safari 本体に含まれるのは、ウィンドウの表示、URL の入力受付、ブックマークの管理とかだ。これらを作ってやればいい。

あ、でも心配しなくていい。Interface Builder を使えば、簡単にこれらは作ることが出来るから。つーか、一行も書かなくてもできるから。

じゃ、次の章から作り方の解説を始めよう!

これで、準備はオッケー。早速ブラウザをつくり始めよう!