タブブラウザのUIに関するメモ。FirefoxとOperaのタブの位置が違う理由。

UIによるブラウザの種類。

ブラウザはUIによって3種類に分けられる。

[http
//ja.wikipedia.org/wiki/Single_Document_Interface:title=Single Document Interface方式]:Internet Explorer 6までに代表される、Webページ一つにつき一つのウィンドウを必要とするブラウザが該当する。最近は劣勢。
[http
//ja.wikipedia.org/wiki/Multiple_Document_Interface:title=Multiple Document Interface方式]:Operaに代表される、ウィンドウ内に複数のウィンドウを表示する方式。ウィンドウをタブで管理していることからタブブラウザの分類に入っている。
[http
//en.wikipedia.org/wiki/Tabbed_document_interface:title=Tabbed Document Interface方式]:Firefoxに代表される、ウィンドウをタブでまとめる方式。世間一般で語られるタブブラウザはこのTDI方式のもの。

MDI方式とTDI方式の違い。

MDI方式とは。

SDI方式が複数のウィンドウを必要とする*1ために、

  1. 作業中のウィンドウを管理する
  2. 作業するためのウィンドウを管理する
  3. デスクトップにウィンドウがあふれるためウィンドウ自体を管理する

という3つの作業が必然的に生じる。これを解決するために、MDIというひとつの大枠となる親ウィンドウが実際に作業を行う子ウィンドウをまとめる方式が誕生した。MDI方式は子ウィンドウを管理するときにタブを用いることがある。

TDI方式とは。

TDI方式はMDIの概念を利用して誕生したもの。MDI方式との違いは、MDIが親ー子によってウィンドウ管理をまとめたものであるに対して、TDIはSDI方式をタブでまとめたものである。

大雑把な話。

厳密に話すのは難しいなぁ。IE6をタブ化するツールにWindows Live Toolbarっていうのがある。使えばわかるけど、このツールはIE6を無理やりタブ化している。FirefoxはVer.1.0までがSDI方式で、タブが通常仕様になってからはタブブラウザっていう認識になったでしょ?こういうのはTDI方式のもの。Operaはタブごとでウィンドウの大きさを変えられるし、タブをD&Dでウィンドウの外に持っていけば独立したウィンドウを表示するでしょ?こういうのはMDI方式のもの。
そこら辺で、一概にタブブラウザと言っても結構違うもんだよってことなのね。

Firefoxのアドレスバーがタブより上にあって、Operaのアドレスバーがタブより下にある理由。

設計思想の違いと一言で済ませることもできるけども、あえて長々と書きますね。

Firefoxのアドレスバーがタブより上にある理由。

Firefoxはシングルウィンドウ(SDI方式)をタブでまとめたタブブラウザ(TDI方式)っていうことから、ウィンドウひとつひとつをまとめるためにアドレスバーを核としてタブでまとめている。つまり、Firefoxはアドレスバーをバインダーにしているんだな。そういう風に考えるとタブを増やせば増やすほどメモリ使用量が増えるっていうのは納得できるでしょ?*2
もうちょっと書き足すと、ブックマークやダウンロード、アドオン管理画面は独立して表示されるよね。その理由はTDI方式だからだと言えるのだ。それについては次の項目で。

Operaのアドレスバーがタブより下にある理由。

OperaはMDI方式をとっていて子ウィンドウを管理するためにタブを用いた。ためしにタブ上で右クリック→元のサイズに戻すをやってみてほしい。親ウィンドウの中でで子ウィンドウが表示される、これがMDI方式だ。そして子ウィンドウはそれぞれで作業ができないといけない。だから子ウィンドウ一つ一つにアドレスバーが表示されるし、またOperaMail*3でメールを見るときにタブで表示されて、ダウンロードするときにもタブで表示される。
何もかもをタブにしているのではなくMDI方式であるからこそタブで表示されている。タブの下にアドレスバーが表示されるのはOperaがMDI方式であるからだと改めて理解できるだろう。


もうちょっとだけ。Operaってタブをどこにでも―たとえば縦置きだったり―置けるでしょ。あれはMDI方式であるからこそなんだね。Operaのタブは子ウィンドウをまとめるためのものだからタブはどこに置いてもいいようになっているんだよ。

UIの違いのまとめ。

OperaはMDI方式のブラウザです。「Operaのタブには慣れない」という人はOperaの設計思想がMDIを基本にしているということを知らないからだと思っているよ。
FirefoxはTDI方式のブラウザです。タブブラウザはページをタブでまとめているという概念を持つことがよくわかります。

あとがき。

Opera Software ASAに言わせればタブブラウザを作ったつもりなんてなかったはず。Opera Software ASAはMDI方式のブラウザを完成させただけだったのに、2002年あたりからMozilla1.0がNetscape7.0がTDI方式を採用して2004年にFirefox1.0が"タブブラウザ"として登場してからは、Operaがタブブラウザの先駆者として迎えられちゃったっていうだけの話。*4ちなみにOperaのMDI方式はVer.2.00から(それ以前のMultiTorg Opera 1.0からも)続いていてる。
タブの下にアドレスバーに慣れない、気持ち悪いっていう人がいるけど、それは単にMDIっていう"アプリケーションが複数の作業を行えるように整えられた"方式に慣れないっていうことだと思うんだ。だからIEが完全にタブ化しちゃったらFirefoxである理由はなくなると思うよ。Firefoxを使う理由は拡張入れたら何でもできるっていうくらいだしね。IEは定食って言った理由はそういうことよ。*5
ちなみにWordやExcelもMDI方式なんだけど、OperaよりとっつきやすいのはOperaみたいにいろんな機能を詰め合わせたものっていうより、操作面で文書作成・表計算に特化させているからだと思う。

*1:ひとつの作業するためにはひとつのウィンドウが個別に必要となるから

*2:原因はほかにもあるのだろうけれど、単に例えただけなので、あまり意味はない。

*3:Operaに搭載されているメールクライアントの名称;旧称M2

*4:参考:http://foxkeh.jp/downloads/history/history-standard.pdf

*5:この話はタブの機能について限定的に話している。