POSEIDONさんのところにも解説があったけど、うちでもちょっと書きます。
NeXTSTEP(NEXTSTEP, OPENSTEP, or OpenStep、以後 NeXT で統一)を知っている人なら知っていると思うが NeXT ではディレクトリを拡張子(".App", ".Config" 等)で判別してファイルのように扱う機能がある。今度 Mac OS 9 で導入されるパッケージ機能は Mac OS X を見越して NeXT のパッケージ機能をよりエレガントに実現したものと言える。
NeXT ではこのパッケージ機能を使って複数の CPU や言語表記に対応していたわけである。それを考えると Mac OS 9 のパッケージ機能でもそれらのことが実現しやすくなると考えられる。
Mac で複数の言語表記を実現するケースを考えてみよう。まずリソースに複数の言語を入れておくことが考えられる。しかし、リソースにはディレクトリのような機能がないので、あらかじめリソースIDを決めておくことになるだろう。そうすると言語の追加のためにプログラムを変更したりと非常にめんどうなことになってしまう。別の方法は言語リソースをアプリケーション・ファイルとは別に用意することだが、これではファイル構成が複雑になるし、何よりめざわりである。
昔の Mac はアプリケーション・ファイルを一つドラッグコピーするだけでよかった。しかし、機能が豊富になるにしたがってフィアル構成が複雑になり、インストーラが必要だったり、フォルダの中からアプリケーション・ファイルを探して起動しなければならなくなった。パッケージ機能は複雑になった Mac のアプリケーションを、ユーザから見て昔のシンプルなスタイルに回帰してくれるだろう。
システムフォルダもそうである。今のシステムフォルダや機能格闘、もとい機能拡張フォルダを開いてみると目眩がしてくる。QuickTime 関連、OpenTransport 関連がそれぞれ一つのパッケージになったと想像してもらいたい。非常にすっきりするはずである。Technote 1188 にはアプリケーションに関してしか書かれていないが、将来は機能拡張などもパッケージになると思われる。
ちょっと気になるのは StandardFile ダイアログがパッケージに対応していないことである。いまだに古い StandardFile ダイアログを使用しているアプリケーションも多いわけだし、パッケージの中身が一般ユーザに見えてしまうのは書割りの舞台裏をうっかり見てしまうみたいで興醒めである。