2010-09-03

隠れたウィンドウは見えない、見えないウィンドウは存在しないも同然

今回のお題は、ウィンドウシステムにおけるアプリケーションウィンドウの配置問題。

なぜ、ウィンドウは重なるのか?

画面は資源、そして資源はいつも不足している

Mac を使っているのであれ、あるいは PC を使っているのであれ、(それが余程古いものでない限り)今のパソコンを使っているユーザの前では、その画面にいくつものウィンドウが開いていることだろう。ブラウザや iTunes を始めとして、twitter クライアントにメールクライアント、などなど。プログラマなら IDE あるいはエディタとターミナルなんかも加わるに違いない。

ここが肝心な点なんだが、それらいくつものウィンドウを広げるには、Mac や PC の画面はあまりにも小さい。それがノート型なら言うに及ばず、デスクトップ型で 20 インチ以上の画面を備えていたとしても十分とは言えない。

画面が小さい結果として、ウィンドウは互いに重なりあう。みな、それが必然だとわかっている。いくつものアプリを同時に立ち上げるためには避けられないのだ、と。誰もがこれを当たり前だと思っている。他に方法はないのだ、と。

まだ、画面は小さいのだろうか?

(一部の研究者を除いて)人々が初めてコンピュータの画面にウィンドウを見たのは 1984 年 1 月 24 日のことだ。それが備えていた 9 インチ、512 × 342 ピクセルの画面は 2010 年の感覚で見ると余りにも小さい。大きさで言えば iPad (9.7 インチ)に近く、画素数で言えば iPad (1024 x 768) の 1/4 以下だ。

あれから 26 年以上たってパソコンの画面も広大になった。いまどきのデスクトップ型なら 20 インチ以上、画素数も 1,920 × 1,080 (iMac 21' [Mid 2010]) 程度を備えるものはざらにある。最初の Macintosh の 4 倍の広さだ。さらに、2 台目のディスプレイをつなげることのできるものもある。そうなれば、画面の広さは倍増する。3 台目をつなげられるものはさすがに限られるが。

単純に考えると、4 倍の広さの画面には元のサイズのウィンドウを 4 つ、重なりあうことなく並べられるはず。ブラウザ、メールクライアント、twitter クライアントに iTunes、これで 4 つ。普段、使うアプリはこの程度に収まらないだろうか? もし、収まるなら、ウィンドウは重ならなくても良いはずだ。なぜ、まだ重なっているのだろう?

ウィンドウもコンテンツもでかくなった

この 26 年で起きたのは、画面の大型化だけじゃない。画面に収まるアプリのウィンドウも、ウィンドウに収まるコンテンツも大型化した。

メニューと比較的小さなツールパレットであとはすべてキャンバス、というアプリウィンドウの原型はもはや原型として十分ではない。ツールバーが生まれ、描画エリアはペインという名の領域に分割され、ツールパレットも大型化するか、そうでなければ分割された。とてもじゃないが、9 インチ、512 × 342 ピクセルには収まり切らない。

26 年前にウェブは存在していなかったけど、誕生以来、すでに 20 年近くが過ぎた(Wikipedia:ja によれば最初のウェブサーバの誕生は 1990 年末)。登場当時は幅 640 ピクセルに収まっていたウェブページも年々横長になり、今では 1000 ピクセルを超えるページも珍しくない。ページという概念を捨ててしまったために、縦に長くなる傾向はもっと大きい。

見えないのと見えるの、どっちが良い?

重なりあったウィンドウと重なることなく並んだウィンドウ、どちらが使いやすいかは考えるまでもない。隠れたウィンドウは見えない。見えないウィンドウに映し出された情報はユーザにとって利用できない情報だ。利用したければ隠れたウィンドウを表に出すしかない。しかし、そうすると別のウィンドウが隠れてしまい、別の情報が使えなくなってしまう。

プログラマはコードを書いたりデバッグしたりする最中に、いくつもの情報を参照する。だから、プログラマが使う IDE と呼ばれる開発環境アプリでは、大きな 1 つのウィンドウがいくつものペインに分割され、それぞれに別の情報が表示される。メインとなるエディタ、ソースコードツリー、オブジェクトのメソッド一覧、デバッグコンソール、スタックトレース、...。ペイン が 4 つや 5 つでは足りないこともあり、その場合はタブのような形で重なるが、可能な限り情報を隠さないようにペインを配置する。見えない情報は利用できないとわかっているから。利用できない情報は存在しないも同然で、プログラミングにおける快適さを向上させることはないと知っているからだ。

マウスやキーの操作でウィンドウを切り替えながら情報を探すのと、視線の移動だけですむのと、どちらが便利だと思う?

見える方が良いと誰もが思うなら、なぜ、ウィンドウは重なっているのだろう?

それは必然ではなくて、誰かの選択

いまある道具がこの形をしている理由は、誰かがそれを選択したからだ(→ 角が丸いのは Mac の伝統!)。そして、その後、誰もその選択を変えなかったからだ。

最初に誰かがウィンドウをオーバーラップさせることを選んだ。もちろん、当時は(前述のように)画面が小さかったからだ。しかし、選択の理由が機器の制約にあったことは忘れられていき、オーバーラップ以外の選択肢があることを意識する者も少なくなっていった(意識し続けた人たちもいる → 日本タイル型ウィンドウマネージャ推進委員会)。画面の大型化は、ウィンドウを整列させる領域の確保にではなく、ウィンドウ自体の大型化とコンテンツの伸長に使われた。

パソコンのアプリが、互いに強調して動作する小さなプログラムではなく、単独で完結する大型プログラムとして進化したのには、単なるプログラマの選択以上の別の理由も存在しそうだけどね。

過去の経緯は別にして、いま手にしている答えを唯一のものだと思い込むことはない。それが誰かの選択ならば別の誰かが主体的に変えることもできる。いまとは別の使い方を工夫することができるはず。

工夫の方針として、こんなものが考えられる。

  • より大きな画面を手に入れる。
  • アプリ内で余分な情報は表示しないようにする。
  • ウィンドウを重ならないように並べる。

つまり、重ならないように並べるために、場所を広く、対象を小さくしましょう、ということだ。

さて、続きは次回に。次回は上記の「工夫」について具体的な方法とともに考えてみよう。

関連リンク

関連記事

0 件のコメント:

コメントを投稿