Macintosh Developer Online (MDOnline)


2000年10月26日発行号 - Cocoaのサンプルソース



2日前のPSINetの長時間に渡るダウンは、あちらこちらに影響があったようですね。iモードのダウンが話題にはなりますが、基幹プロバイダの長時間ダウンも大きなニュースだと思います。うちの会社では、12時半くらいからストップしたのですが、いちおう、2回ほどファクスが来ました。「断続的に…」などと書いてありましたけど、みんなは「断断断じゃないか!」と怒っておりました。18時の段階ではまだ開通していなかったのですが、21時過ぎに某ファミレスからアクセスしたらつながっていたので、急いで配信をしたという次第です。その間の接続料なんて、1000円とか2000円とかにしかならないですけど、メールのやりとりができなかったのはとても大きな損失ですね。つまり、MDOnlineの発行ができないというわけです。MDOnlineは社内のサーバから出しているので、回線が止まるともう発行はできないというわけです。だけど、eコマースしている人とかだと被害甚大でしょうね。商店街だといきなり前の道路が工事中になって通行止めになるのと同じですからね。ちなみに、PSINet以外にフレッツ・ISDN回線も入れているので、Proxyを使ってWeb参照だけは何とかできる状態にはしておりました。
いずれにしても、ネットワークは常に一定の状態ではありません。どこかの会社でネットワークの天気予報的なことをやってくれると嬉しいと思いますがいかがでしょうか? もうあるかもしれませんけど。たとえば、どこそこの回線は混雑する可能性があるとかを過去の統計から、1時間単位で出すといった具合です。また、ダウンのあった部分を速報で載せるとかしれると嬉しいですね。もっとも、ダウンしが側だったらそうした情報すら見えないということもありますけど、今どき、複数のアクセスラインを持っていることは当然でしょうから、自分のところのダウン状況も分かるのはいいことではないかと思います。あるいはそういうサイトを御存じでしたら、教えて下さい。
(新居雅行 msyk@mdonline.jp


Interface Buliderを使ったアプリケーション構築のサンプル

Appleが提供するサンプルコードに、「SimpleCocoaApp」が追加されたが、さらにTechnoteにその解説文書も掲載された。Mac OS Xで稼動する開発ツールのProject BuilerとInterface Builderを使って、Cocoa対応の非常にシンプルなアプリケーションの例として示されているものである。ボタンをクリックするとダイアログボックスでメッセージを表示するというものだが、表示されるメッセージをラジオボタンで切り替えることができるというものだ。特に、Interface Builderを使って、ウインドウ上のテキストボックスやボタンと、定義されているオブジェクトをドラッグ&ドロップで結び、オブジェクト間でのメッセージをやりとりする様子や、各クラスのプログラム内容についての説明が書かれている。言語はObjective-Cではあるが、文字とおり非常にシンプルな内容であるので、言語の規則を調べながらプログラムを判読するのもそれほど苦にはならないだろう。Cocoaのアプリケーション開発などを始めようとしているけどもどこからてをつけていいのか分からないという方は、このTechnoteをまずは読んでみてはどうだろうか。また、Developer Toolsを持っている人は、もちろん、実際にいろいろと試すことができるだろう。Cocoa開発関連文書へのリンクも末尾にある。
なお、Mac OS Xでサンプルコードをダウンロードすると、Classic環境でStuffIt Expanderが動いてしまう。ファイルの展開結果としてはProject Builderに適した形式ではないと言えるだろう。その場合、Project Builderで、「SimpleCocoaApp.pbproj」というフォルダを開くと、Project Builderで必要なファイルが開かれる。Interface Builderでは、「English.lproj」フォルダにある「MainMenu.nib」というフォルダを開くと、ユーザインタフェースの編集画面が出てくる。いずれも、FileメニューのOpenから開くファイルを選択するのがとりあえずは確実な方法のようだ。MainMenu.nibはファイルを直接ダブルクリックすることでも開くことができる。

関連リンク:http://developer.apple.com/technotes/tn/tn2005.html
カテゴリ:開発情報, Cocoa


Project Builderのサンプルの利用について

「Interface Buliderを使ったアプリケーション構築のサンプル」という記事の追加として、以下のテキストをお読みいただきたい。
Project Builderの書類は、拡張子が.pbprojで、本来はアイコンで見えている。しかしながら、その実態はフォルダである。もし、Project Builderを一度も起動したことがない状態で、Project Builderのサンプルのファイルを解凍すると、.pbprojの名前のフォルダができてしまい、ダブルクリックでProject Builderで開くことができなかった。しかしながら、一度、Project Builderを起動して使った後に解凍をすると、.pbprojはフォルダではなく1つの項目として見えて、ダブルクリックで開くことができるようになった。
一方、Interface Builderで編集するユーザインタフェースの情報は、.nibという拡張子のファイルに保存される。.nibファイルをダブルクリックすればInterface Builderが起動するのが通常だが、実はこれも実態はフォルダである。いちど、Interface Builderを起動するか、あるいはProject Builderを起動すれば、.nibは1つのアイコンとして認識されるようになる。ただし、その場合でも、Project Builderのファイル一覧にある.nibファイルの項目をダブルクリックしても、Classic環境のStuffIt Expanderが起動してしまう。だから、DesktopのFinderのウインドウで、.nibファイルのアイコンをダブルクリックしてInterface Builderを呼び出す必要があるようだ。
こうした操作状況は環境依存するかもしれないので、常にこのようになるとは限らないとは思われる。まとめると、.pbprojがProject Builder、.nibがInterface Builderの書類であるが実態はフォルダである。フォルダをパッケージとして認識させる作業は、Project Builderなどをいったん起動した後でないと有効にならないと思われるということである。フォルダのままになっていても、ファイルを開くダイアログボックスでフォルダを選択することで開くことができるのである。

カテゴリ:


Cocoaのアプリケーションのサンプルコードが公開

Appleが配付するサンプルコードに、Project Builderを利用したものが公開されている。「SonOfSillyBall」はウインドウ内にいろいろな色の円をランダムな位置にたくさん描くというものだ。スライダで円を描く割り合いを調整できるものだ。「Simon」は簡単なゲームで、ウインドウの各コーナーに色の違うボックスがあって、それらのボックスが順番にブリンクする。その順番と同じようにクリックをするといったもので、数が1から順に増えていく。記憶ゲームと言えばよいだろうか。
いずれも、Project Builderでアプリケーション生成ができるまでのソースや各種の設定が行われている。ウインドウの設計はInterface Builderで行うようになっている。ソースプログラムの言語はObjective-Cであり、どちらも、NSViewを拡張したクラスで必要な表示を行うといった基本的なサンプルである。ソースはもちろんだが、ここまでにするプロセスを知りたいと言う気もするものの、Cocoa開発のサンプルとしては短時間で全体像が分かるという意味では、学習の素材には十分なるものと言えるだろう。

◇Simon
 http://developer.apple.com/samplecode/Sample_Code/Platforms_and_Tools/Project_Builder/Simon.htm

◇SonOfSillyBall
 http://developer.apple.com/samplecode/Sample_Code/Platforms_and_Tools/Project_Builder/SonOfSillyBalls.htm

カテゴリ:開発情報, Cocoa


Mac OS X Public BetaのCD-ROMを見分ける

2000年10月25日にアップルで開催された説明会の後、apeX編集長の森恒三氏が、Mac OS X Public BetaのCD-ROMを持ってきて、「どっちが英語でどっちが日本語か分かりますか?」と問いかけてきた。(apeXは、MACLIFE誌2000年11月号の一番最後の部分にある、雑誌の中にある雑誌で、Mac OS Xにフォーカスしたものだ。MACLIFEに含まれる形で連載されるようだ。)確かに、どこにも、“英語版”“日本語版”といった記述はないが、中心の穴の周りに透明の部分があるとかないとか、あるいは印刷のクオリティの違いなども見られる。(便宜上「英語版」などの表記を行うことにする。)もちろん、一番確実な方法は「Public Beta」と書かれた部分のすぐ下にある製造番号をみることだ。日本のマックユーザだと、Developer向けに送られてきた英語版があり、さらにタカシマヤあるいは日本のAppleStoreで買ってきた日本語版のCD-ROMを入手することになるだろう。だがそのうちCD-ROMが机の上でごちゃごちゃになってしまって、どっちがどっちか分からなくなるかもしれない。もっとも、日本語版は厚紙のケースに入れて大切にしまっておくというのだと区別はつくかもしれない。いずれにしても、筆者の手元にあるCD-ROMの製造番号は次のようになっている。もし、異なる製造番号のものがあれば、お知らせいただきたい。

Mac OS X Public Beta英語版:ZM691-2794-A
Mac OS X Public Beta日本語版:ZM691-2858-A

また、裏面に薄く印刷されている製造国は、英語版はUSA、日本語版はシンガポール製となっていた。製造番号は覚えにくいけど、こちらの識別だったら頭にすぐ入るかもしれない。

カテゴリ:Mac OS X


Mac OS XでAppleScriptプログラムを動かす場合の注意

Mac OSでも、Mac OS Xでも、AppleScriptはサポートされ、多くの部分は共通であるとしている。しかしながら、Mac OSではFinderがアプリケーションとして稼動していたのに対して、Mac OS XではDesktopというアプリケーションが動いているといった大きな違いがある。ざっと見たところでは、DesktopのAppleScriptコマンドの多くは、旧Finderと共通であるようだ。詳細については未調査であるが、いくつか試したところでは、Mac OSで作ったFinderの機能を使っているプログラムがMac OS Xでもそのまま動く。アプリケーションが変化したのだから、tell application "Finder"ではなく、tell application "Desktop"としなければならないはずなのだが…。実は、Mac OS Xの上でスクリプトアプリケーションを動かすと、自動的にFinderがDesktopに切り替わるのだ。コンパイル済みのスクリプトであれば、そうした変換が自動的になされる模様だ。単純な置き換え可能なテキストではあるものの、自動的に変更されるのであれば、それはそれで便利だと言えるだろう。
しかし、注意が必要なのは、そうして変換されてしまったスクリプトプログラムを、Mac OSで動かす場合だ。Mac OSで動かす場合にも、基本的にはDesktopとういう記述が残り、また、コンパイル結果も変更が加えられてしまう模様だ。つまり、Mac OSで起動した場合に動かなくなってしまうという弊害もあるから注意が必要だ。Mac OSとMac OS Xを併用する場合には、Mac OS Xでスクリプトを動かす場合にバックアップを取っておくのがよさそうである。
実は、筆者のシステムフォルダの「起動項目」フォルダには、再起動時にテンポラリフォルダにあるものを削除するためのスクリプトプログラムが入っている。Mac OS Xで起動したとにClassicをしたが、そのときにそのスクリプトが動いてしまった。動いたことは喜びだったが、Mac OSに戻した時にエラーが出るようになって気付いたという次第である。

カテゴリ:AppleScript, Mac OS X


Arena Internet MailのVer.2.0へ、Carbon対応はVer.2.1で

電子メールソフトのArena Internet MailerがVer.2.0にバージョンアップする。また、Carbon対応版はVer.2.1としてその後にリリースされる予定となっている。ArenaのVer.2.0のベータ版は2000年11月7日に公開予定で、正式版は12月後半にリリースされる。アップグレード料金は2,000円だが、7月1日以降の登録ユーザは無償でアップグレードできる。Ver.2.0からVer.2.1へは無償でアップデートできる予定だ。購入価格は\3,800である。Ver.2.0では、Palm対応がなされ、メールをシンクロナイズできるようになったほか、Palm Desktopアプリケーションとの連動の機能も追加された。また、メールボックスの一覧表示、キーボードによるメールボックスへのアクセス、より簡単になったカスタマイズ、バックアップを容易にするなどの変化がある。ArenaはFinderの操作性を持つ、Mac OSを操作する上での親和性の高さや、あるいはカスタマイズなどができる点に特徴がある。また、ユーザの声を積極的に取り入れる開発スタイルなどでも支持を集めている。World PC Expoのセミナーでは、Carbonで稼動するArenaをデもとして見せており、すでにリリースについては技術的にはクリアされているものだと思われる。一方、Finderライクな操作体系というのはMac OSのFinderである。Mac OS XのFinderの操作体系は随所に違いが見られる。こうしたOSのユーザインタフェースの変化をどう取り込むかといった点にも注目ができるだろう。

関連リンク:ARENA Press Info
カテゴリ:Carbon/CF, 電子メールソフト