2003-11-20

> [ブラウザ] 見た目に騙されるな

Safariと同じ感覚でFirebirdのブックマークバーの項目を削除しようとドラッグアウトしたらそのページが開いてしまった。Caminoでも同じ事やってしまった記憶が。

Safariのブックマークバーって、ブックマークバー内での移動なのかブックマーク管理ペインへの移動なのかそれとも削除の為のドラッグアウトなのかを判定する必要がある訳で、おかげでドラッグ操作にコツが必要になるのが難点。

> [特撮] ゴジラ的トリビア

知っている人は知っている事だろうけど、こう言う企画は悪くない。

> [Nucleus] NP_SearchHighlight

検索エンジンからのジャンプがNucleusにも来る様になったのは良いのだけど、これを使うとハイライト表示してくれる代わりに何故かp要素の中身を消してくれる。多分日本語周りの問題なのだろうけど、仕方ないので外した。

> [Cocoa][Java] Identifier

Mac OS Xでは、アプリケーションに一意的な名前を与える仕組みがあり、BundleタイプのアプリケーションではInfo.plistにCFBundleIdentifierとして記述されている。 一番判りやすい利用例は設定の保存(Library/Preferences)だろう。

このIdentiferはJavaのパッケージ命名規則に従うべきだとされている。で、そのJavaのパッケージ命名規則については、元Java Conferenceのパッケージ名登録/利用サービスについてにこう書かれている。

Java 言語においては,異なる作者によるパッケージの名前が衝突することを避けるために,インターネット・ドメイン名 (以下単にドメイン名と記述します) を利用して世界的に一意なパッケージ名をつけることが推奨されています。

"jp.gr.java_conf.foo" のように,ドメイン名のピリオド (".") で区切られた各識別子を逆順に並べ替えたものに,ドメイン内における一意性をそのドメインの責任において保証した識別子を連結したものをパッケージ名とすることにより,世界的な一意性を保証することができます。

つまり、Preferencesフォルダに並んでいるcom.appleで始まる名前のファイルはapple.comのドメインを持つAppleのプロダクトが管理しているファイルである、と言う意味になる。もっとも、OS 9との互換性の問題もあるので全てのプロダクトがこのIdentifierを使ってPreferencesフォルダにアクセスしている訳ではない。実際Identifier無しでもアプリケーションは動くし、その場合はアプリケーション名が初期設定ファイルの名前になる。

ただ、どうも最近「そんなドメインを持っているのか?」と思えるようなIdentifierを付けているプロダクトが散見される。結構有名なフリーウエアでも存在しないドメイン名を使っている場合があって、ひょっとしてJavaのパッケージ命名規則は開発者には浸透していないのではなかろうか? まぁこの規則はあくまで衝突を避ける為のものなので、多少従わないプロダクトがあったとしても衝突しなければ実害は無いのだが、この規則に関してAppleはもう少しアナウンスを強めても良いと思う。