キーボードは長年Happy Hacking Keyboard(HHK)なのですが、ここのところApple Wireless Keyboardです。ワイヤレスはいいですね、ケーブルが絡まりませんから。でもフィーリングはHHKのほうがずっと…というわけで、HHKのBluetooth版をどうかご検討いただけませんでしょうか? > PFUさん

さて、今回は「WebObjects」について。最近OS Xを使い始めた層には聴き慣れない単語かもしれないが、OS Xと同じNeXT Stoftware社生まれのプロダクトであり、発表当時には衝撃をもって受けとめられたAppleのWebアプリケーションサーバフレームワークだ。その製品のこれまでと、現状についてまとめてみよう。

WebObjectsという存在

WebObjectsという存在を簡潔にまとめると、「動的にWebページを生成するためのエンジンとその開発フレームワーク」となる。Webサイトの基盤部分を構成するプロダクトであり、エンドユーザが直接コントロールする機会はほとんどないと言っていい。

WebObjectsは、1996年にNeXTにより発表された。NeXTマシンの販売が不振に終わり、ハードウェア製造から事実上撤退してソフトウェア専業(社名もNeXT Softwareに変更)に衣替えしたあと、当時急速に伸びつつあったWeb関連市場を取り込むべく投入された肝入りの製品だ。データベースとの接続性に優れ、ページを動的に生成できるWebサイト構築環境が一式揃うことは、当時高く評価されていた。独立したマシンで稼働させ、他のマシンで動作する複数のWebサーバから共有できるといった柔軟な運用が可能なことも、注目を集めた理由だったと記憶している。

AppleのWebサイトにあった、WebObjectsの紹介ページ(現在は削除されている)

ただし、それはエンタープライズ分野での話。WebObjectsの無制限運用ライセンスは当初5万ドルに設定されていたため、OPENSTEPでWebObjects環境を揃えようとすると、1千万円近い投資が必要だった。その後WebObjectsの価格は669ドルに引き下げられ、翌年にはOS X Serverへの同梱により実質的に無償化されているが、製品としての性格上、エンドユーザにとって縁が薄い存在であることに変わりはなかった。

WebObjectsは、iTunes StoreやApple Online Storeのバックエンドとして採用されるなど、大規模サイトにも導入事例を持つが、WebObjects 5でObjective-CからJavaに書き換えられたことが、後の開発計画に影響を与える。Appleは2006年にCocoa-Javaブリッジの廃止を表明、この仕組みを利用して実装されていたWebObjectsの開発ツールも開発終了となったからだ。

iTunes Store/App Storeも、WebObjectsを利用して構築されている

現在のWebObjectsと知られざるTIPS

そのような経歴を持つWebObjectsだが、往時の輝きは色褪せてしまった。開発ツールの開発はオープンソースコミュニティ(EclipseのWOLipsプラグイン)に委ねたが、もはやXcodeは利用できない。Appleによる(フレームワーク部分の)アップデートも低頻度で、最新版のv5.4.3がリリースされたのは2008年のことだ。2009年頃には、AppleのWebサイトからWebObjectsの事例紹介ページも消えている。

しかし、前述したとおりiTunes Storeなど複数のサービスはいまなおWebObjectsベースであり、Appleのオンラインサービスの根幹を担っている。その意味では、いまだ第一線にある製品なのだ。

現在、それらWebサイトのURLは、一見ではWebObjectsベースと見抜けないシンプルな記述スタイルに変更されている(かつては「...WebObjects/XXXXX.woa/wa/...」などと独特だった)。「Apple Store for Reselles」など、一般ユーザがアクセスしないサイトは以前のままのようだが、iTunes Storeは「https://itunes.apple.com/jp/app/telas/id558345812?mt=8」といったスタイルに改められている。これは、Apple Online Storeについても同様だ。

しかし、実際にはWebObjectsで運用されているため、従来のスタイルも利用できる。前述のURLでいえば、「http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=558345812&mt=8」も同じことだ。

余談だが、URLに一定の形式の記述をくわえると、iTunes Store内のアプリや音楽を検索することができる。以下の記述例は「telas」というキーワードで検索するものだが、これを適当にイジってみてほしい。iTunesを起動するよりスピーディーに、ブラウザからアプリを検索できることがわかるはずだ。

http://itunes.apple.com/WebObjects/MZSearch.woa/wa/search?entity=software&media=software&submit=seeAllLockups&term=telas

Mac App Store(OS X版Keynote)のページのソースを表示したところ。WebObjectsらしいURLを見てとれる

上述のURLにアクセスすると、iTunesが起動して検索条件に一致するアプリが表示される