WWDC 2005 総括
2005年6月6日から10日、一週間にわたって開催された、Apple World Wide Developer Conference 2005の総括。特に本プロジェクトに関連する項目について、以下にまとめてみた。
各セッションの内容については、NDA(非公開義務)に抵触しない程度に触れることにする。
(記述に間違いがある場合が大いにあります。もし何か気になる点があれば気軽にメールあるいはコメントをいただけると幸いです。)
IBMのPowerPCから、Intelベースのシステムへの移行が今回のWWDCの最大のトピックであろう。アーキテクチャ的には非常に大きな変更だが、ソフトウェアディベロッパーとしてはそれほどの差異を感じることなく、開発を進められそうだ。Xcode2.1/gcc4.0で適当なアーキテクチャオプションを指定するだけで(基本的には)問題ないらしい。
Developer向けのIntelベースのシステムのレンタルが既に始まっている(990ドルで1年半程度) プロジェクトの期間を考えると最適か。
CoreDataとは、データモデルの作成、データオブジェクトの管理などを一般化したシステム。すでに昨年のWWDCで発表されていたが、Xcode2.0で本格的なデータモデリングツールが登場し、さらにTigerからは軽量でパーソナルユース向けのDBシステム・SQLiteがOSにデフォルトで含まれるようになったことで、ますます実用的になっているように感じた。
Phonetchicaでも、言語とそれに付随する関連情報のデータモデルをCoreDataの仕組みを使って実装するのが現実的に最も効率のよい方法であるように思う(上のモデル図のサムネイルを参照)。CoreDataでは、ファイルの保存方式を、XML, SQLite, Binaryフォーマットの中から選べるが、高速性、Atomicな入出力(ほかのデータ形式だと、セーブする際にはファイルを全てセーブする必要がある)などの特性を考えると、SQLiteが一番良いだろう。PHPのスクリプトと結びつけて、簡易的なWebバージョンのPhonethicaを作ることも念頭に入れておく(例えば、web上から新しい単語の意味と発音などを入力できるインタフェースを作る)。
Quartz Composerは、Tigerで導入された新しい開発者向けアプリケ−ションの一つ。”パッチ”と呼ばれる特定の機能を持ったオブジェクトを、つなげていくことでグラフィカルに様々なビジュアルエフェクトを作ることができる(こうして作られた一つのプログラムを”コンポジション”と呼ぶ)。CoreImage(これもTigerで導入された映像を扱う一連のシステム)との親和性が高く、ImageUnitを自由にコンポジションの中で使うことができる。
従来、OpenGLのプログラミングでやっていたような処理が非常に簡単に、しかも高品質でできることに衝撃を覚えた。Phonethicaのグラフィック表示部分に使える可能性は高い。
ただし、問題がない訳ではない。適当なコンポジションの自作を試みたところ、いわゆるgateやflipflopのような非常に基本的な処理を行うパッチがないことに気づいた。今後、AppleがQCをどのように拡張していくのか、あるいは3rd party製のパッチの交換と行ったユーザコミュニティが発展するのか注意深く見守りたい。
CoreDataやQuartz Composerのような派手さはないが、その重要性と意味で目立っていたのが、Cocoa Biding。Cocoa Bindingは、データモデルとビューの間のコントローラーを簡略化することを狙ったシステム(参照- Model-View-Controllerパラダイム)。いわゆるGlue-Codeを減らせる。 bindingとはオブジェクトのattributeで、別のオブジェクトのattributeに関係づけられているもの。そのため、一方の変更はもう片方に反映される。通常はMVCモデルで使われ、viewへの変更が、そのままmodelに反映され、また別のviewにも同時に反映されるといったことが簡単に実現できる。 実際、Quartz ComposerのコンポジションやCoreDataのデータモデルをCocoaアプリの中で利用する場合には、Cocoa Bindingで、モデル(この場合はコンポジションやデータモデル)とビュー(コンポジションを表示するQCViewやデータを表示するテーブルなど)の間を簡単につなぐことができる。
Cocoa Biding自体は、Pantherからすでに導入されていたのだが、個人的には今まで見過ごしていた。今回をきっかけにこのテクノロジーを利用して、開発の効率をあげたいと考えている。
5. <番外> subversionによるバージョン管理
subversionは、オープンソースのマルチプラットフォームのバージョン管理システム。直接Mac OS XやTigerには関係ないのだが、元Apple社員の一人が開発の中心にいるためか、WWDC2005でもsubversionのセッションがあった。
バージョン管理システムといえば、以前何度かCVSを試したことがあったが、バイナリーファイルやnibファイルなどのの扱いが煩雑で挫折した苦い経験がある。WWDC2005のsubversionのセッションで見る限り、その辺の使い勝手がsubversionでは大幅に改善されているようだ。Xcodeとの組み合わせて簡単に使えるようになっているということもあり、今回のプロジェクトのバージョン管理に使い始めることにした。
Project Phonethica
Combining scientific technology and art, Phonethica is an interdisciplinary project which explores the diversity of the world, through the phonetics of its 6,000 languages.
Search
Archives
- November 2007
- September 2007
- August 2007
- April 2007
- March 2007
- January 2007
- December 2006
- November 2006
- October 2006
- September 2006
- August 2006
- July 2006
- June 2006
- May 2006
- April 2006
- March 2006
- February 2006
- January 2006
- December 2005
- November 2005
- October 2005
- September 2005
- August 2005
- July 2005
- June 2005
- May 2005





No Responses to “WWDC 2005 総括”
Please Wait
Leave a Reply