このページの本文へ

前へ 1 2 次へ

柴田文彦の“GUIの基礎と実践” 第4回

柴田文彦の“GUIの基礎と実践”

拡張子とアプリケーション

2008年02月23日 11時00分更新

文● 柴田文彦

  • この記事をはてなブックマークに追加
  • 本文印刷

ファイルの種類を表す仕組みの変遷

 いまさら当たり前のことながら、コンピューターは保存するデータを「ファイル」として管理している。これはコンピューターがメモリーに入りきらないような量のデータを扱うようになり、外部の磁気テープや磁気ディスクにデータを保存するようになってから、ほとんど変わらない機能だ。ファイルには必ずファイル名がある。どのOSが始めたかは定かではないが、初期のほとんどのコンピューターOSは、ファイルに拡張子を付けて、その種類を表すような仕組みを取り入れていた。

 それはフロッピーディスクなどの外部記憶装置を装備したパソコンにもそのまま受け継がれた。実際にMac以前にアップルの主力製品だったAPPLE IIも、そのDOSと呼ばれるソフトで拡張子によるファイルの分類を採用していた。しかし、パソコンとしては初めて、Macはその拡張子に対して疑問を呈した。それは一般のユーザーにとっては呪文のような記号にすぎず、煩わしいからだ。ユーザーに初めて目を向けたMacならではのこだわりだった。

 そこでMacでは、拡張子なしでファイルの種類を識別するために、ユーザーからは見えないファイルの情報の中に「タイプ」と呼ばれる情報を埋め込んだ。さらに、そのファイルを作成したソフト、言い換えれば、そのファイルをダブルクリックしたときに開くソフトを記録しておくために「クリエータ」という情報もセットにして埋め込んだ。こうしてMacはユーザーからは中身は見えないが、動作としてはわかりやすい仕組みを実現した。

 しかし、これはMac以外のパソコンやコンピューターとは相容れない方式だった。特にパソコンの大勢を占めるようになったWindowsが相変わらず拡張子を採用していたから、それに対応するために「PC Exchange」という機能も導入して迎合を図った。そして現在のMac OS Xでは、ある意味その大勢に押し流されるようにして、拡張子を標準的に採用するに至っている。ただし、現在でも拡張子だけに頼っているわけではない。同じ拡張子のファイルでも、内部情報の違いで異なったソフトで開くことができる。これはWindowsにはとうてい不可能な芸当だ。

 初期のWindowsは、前身であるMS-DOSの上に構築されていたから、ファイル名に関しては拡張子を全面的に採用していた。しかしWindows 3.1までは、「プログラムマネージャ」という機能によって、ソフトやそれを束ねるグループに関しては、ファイル名や拡張子とは無縁の一種の仮想環境を実現していた。ところがユーザーが作成したドキュメントファイルの種類は相変わらず拡張子で識別し、現在と同様に拡張子とそれを開くソフトを「関連付け」て管理していた。一般のファイルは、「ファイルマネージャ」という従来のファイル名、拡張子の世界で管理され、いわば二重構造という煩わしさを持っていたのだ。

 Windows 95以降では両方の世界が統合されたが、今度は拡張子に頼りながらそれをなるべくユーザーには見せないという、ちぐはぐなシステムが出来上がった。そこでも、やはり拡張子とそれを開くソフトは「関連付け」られている。そしてその仕組みは、基本的に現在のVistaまでほとんどそのまま受け継がれている。

Mac OS

Macでは、拡張子は前時代の遺物と考えられタブー扱いだった。そこで、ファイルごとに記録されている「FinderInfo」と呼ばれる特別な情報領域に「タイプ」と「クリエータ」という情報を埋め込んでファイルの種類と、それを作成したソフトを明示した

Mac vs Win

ほかのOSが使う拡張子を認識するため、System 7.5のころから「PC Exchange」という機能を用意し、拡張子をタイプ/クリエータに変換した

Mac vs Win

基本的には拡張子を全面的に採用したMac OS Xだが、拡張子以外でファイルの種類や開くソフトを認識する機能も残っている。同じ拡張子でも別のソフトで開けるのだ


Windows

Mac vs Win

Windows 3.1の「ファイルマネージャ」は、その名の通りファイルを管理する機能を持ったソフト。生のファイル名と拡張子をそのまま扱うものだった

Windows 3.1の「プログラムマネージャ」は、実際のファイルとは対応していない仮想環境だった。それによって長さに制限のない、拡張子もないソフトの名前を実現していた

Mac vs Win

Windows 3.1の時代から、拡張子とアプリケーションソフトは「関連付け」られていた。当然ながら1種類の拡張子には1つのソフトしか指定できない

Mac vs Win

「プログラムマネージャ」と「ファイルマネージャ」を統合したWindows 95でも、拡張子と、それを開くソフトの「関連付け」は必須だった。それはVistaの「既定のプログラム」に受け継がれている

(MacPeople 2008年1月号より転載)


筆者紹介─柴田文彦


著者近影

MacPeopleをはじめとする各種コンピューター誌に、テクノロジーやプログラミング、ユーザビリティー関連の記事を寄稿するフリーライター。大手事務機器メーカーでの研究・開発職を経て1999年に独立。「Mac OS進化の系譜」(アスキー刊)、「レボリューション・イン・ザ・バレー」(オライリー・ジャパン刊)など著書・訳書も多い。また録音エンジニアとしても活動しており、バッハカンタータCDの制作にも携わっている。


前へ 1 2 次へ

カテゴリートップへ

この連載の記事

ASCII.jp RSS2.0 配信中