2007年5月アーカイブ

ColdFusion 8 のベータ版が Adobe labs に公開されました。(ColdFusion 8 @Labs

主な新機能は以下の通りです。英語ですみません。

  • Server monitoring to help identify server bottlenecks, allowing for tuning and improved performance.
  • Step through code debugging in a new Eclipse plug-in debugger.
  • Adobe Flex™ and Ajax features that let ColdFusion power personalized, multimedia-rich applications to enhance users' experiences on the web.
  • High-quality, dynamically created on-demand multimedia presentations.
  • PDF document and form integration for a printable, portable way to intelligently capture and share information.
  • Image creation and manipulation with more than 50 new CFML tags and functions.
  • Native support for .NET objects to easily integrate ColdFusion applications with enterprise data and infrastructure services.
  • Significant application runtime and server performance improvements.

AS3 は元来動的言語ですので、改めて勧めるというのも変な感じですが、今回はさらっと読んでいただければと思います。

AS2 と AS3 のコンパイル時の型チェック

まずは何も属性もメソッドも定義されていないクラスを定義してみます。

class Foo { }
 

次に、上のクラスを使って以下のような記述をします。2 行目で存在しないメソッドを呼び出しています。

var foo:Foo = new Foo();
foo.nonExistingMethod();  // 存在しないメソッドの呼び出し
 

このコードをコンパイルしたとき、AS2 ではコンパイル時にエラーが出力されます。一方 AS3 ではコンパイルエラーにはなりません。この結果から、AS3 のほうがコンパイル時のチェックがゆるい言語だということが分かります。

そんな結果にはならなかった!という人は strict というオプションを付けてコンパイルをしているからです。

Flash を使っている場合はパブリッシュ設定パネルの AS3 設定パネルに、Flex Builder であればプロジェクトのプロパティパネルのコンパイラの設定パネルを開いてみると、”strict” あるいは ”厳密な型” という言葉が含まれれるラベルの付いたチェックボックスがあると思います。これを見つけたら選択を解除しましょう。この状態が本来の AS3 コンパイラの動作です。

不要になったオブジェクトへの参照が残っていると、そのオブジェクトの使用しているメモリを開放することができません。特に複数の参照を持つオブジェクトに対しては、参照の消し忘れによるメモリリークが発生しないよう注意が必要です。

イベントリスナを登録すると、イベントのターゲットになるオブジェクトとイベントリスナを持つオブジェクトの間で参照ができます。AS3 では下のような記述になります。

eventTarget.addEventLisener("type", eventHandler);
 

このコードを実行すると eventTarget と this の間に参照がつくられます。(eventHandler は this オブジェクトのメソッド)

ところが、これは明示的な参照の追加ではありません。そのため、参照の削除が必要な場合でも見落としてしまいそうですよね。

というわけで、今回はイベントリスナ追加時の参照の扱い方についてです。

参照の方向

参照には方向性があります。つまりオブジェクト間の参照は一方向のみ可能ということです。例えば以下のようなコードがあったとします。

昨日 Apollo mini Camp@Tokyo においでいただいた皆様、お疲れ様でいた。何かのご参考になれば幸いです。

さて、引き続き 7/10 (火) に Apollo Developers Night というイベントがあります。場所は EBIS303 で午後 6 時開始予定です。

定員は 600 名で申し込みも始まっていますので参加ご希望の方はお早目に。今回は有償です。(3,000 円)

詳細及び申し込みはイベントサイトからどうぞ。(Adobe Apollo Developers Night) なぜかイベント名に Developer が付いてますが、どなたでもご参加いただけます。

Flash/Flex のアプリケーションを開発していると (たまには) メモリリークとか気になることもあるかと思います。今回は Flash Player 9 のガーベジコレクションについてです。詳細な実装レベルだと、Flash Player のアップデート時に、ガーベジコレクション周りでも多少の変更が行われたりしていますが、いまのところ基本的なモデルは変わっていません。今回はこの "基本的なモデル" を紹介します。

Flash Player 8 以前は少し違ったモデルになっています。以下の記述内では Flash Player とあったら Flash Player 9 のことだと思ってください。

Flash Player のメモリ確保

Flash Player のメモリ確保時の動作は特にユニークなものではありません。が、話の基本になるのでとりあえず以下概要です。

メモリの確保は負荷の高い部類に属する処理です。そのため、Flash Player がメモリを確保するときは、必要になるたびに毎回確保するのではなく、一度にある程度大きなメモリ領域を確保しておいて、それを小さなブロックに分けて使用します。メモリの割り当てが必要になるごとにブロックを一つ一つ使用していきますが、これらのブロックは既にメモリ上に確保されています。すなわち、メモリの割り当てを行うけれども、実際のメモリの確保は必要は無い状態になるわけです。全てのブロックを使い切ると、次の大きなメモリ領域を確保します。

ちょっと、"たんす" と "引き出し" の関係に似ています。買うのは "たんす" 単位、使うのは "引き出し" 単位、ということで。

なお、ビットマップデータのように大きなデータは個別にメモリの確保が行われます。

メモリ参照の削除

さて、今度は一旦確保したメモリ領域を開放するときの動きです。

Kuler (Kuler@Labs) の Apollo 版が公開されましたのでご紹介しておきます。編集機能は無いので、結局ブラウザも使うことになります。今後、機能が追加されていくのでしょうか?

air ファイルのダウンロードは kuler desktop@Labs から、Apollo ランタイムは Adobe Labs Downloads/Apollo Runtime からです。

Adobe Visual Communicator 3 のプレビュー版が Adobe Labs に公開されました。(Adobe Visual Communicator 3@Labs

Visual Communicator は昨秋の Serious Magic 買収により Adobe の製品に加わったものです。Visual Communicator 3 を使うと、簡単に映像によるプレゼンテーションを作成して、Flash ビデオとして公開することができます。

US での出荷はこの夏を予定しています。既に Adobe US のサイトには製品ページも公開されています。(Adobe Visual Communicator

プレビュー版のダウンロードが Adobe Labs から可能です。8月31日まで試用可能です。(Adobe Labs Downloads/VC3) サイズが大きいのでダウンロードは多少余裕のある環境で行うのがよさそうです。

Spry のプレリリース版が 1.5 になりました。(Spry framework for Ajax@Labs) 先日発表された Dreamweaver CS3 では既に Spry のサポート機能が追加されていますので、Spry の正式版のリリースももう一息といったところでしょうか。

1.4 からの変更としては、バグフィックスの他 JSON Data Sets や Nested Data Sets やいくつかのウィジェットが追加されています。詳しくはドキュメント (Spry Documentation@Labs) をご参照ください。

ダウンロードページはこちらです。(Adobe Labs Download Spry

公式な発表はまだですが、FreeHand の開発終了意向表明が出されるようです。今後は新規機能追加やバグフィックス等は行われなくなりますが、販売は続けられます。(日本での販売形態の詳細についてはまだ未確認) サポートは従来のものが引き続き提供されます。

Illustrator CS3 では FreeHand 形式のファイルが扱えるなどの改善がされていて、FreeHand ユーザには Illustrator への移行が推奨されることになりそうです。FreeHand であればどのバージョンからでも Illustrator CS3 に特別アップグレードが可能になるとのことで、これも未確認ですが元ネタ (FreeHand no longer updated) によれば Adobe Store では 24,762 円を予定となっています。

Vista 以外ならまだまだ使えるのですけどね。

今月 Apollo のエバンジェリストの Mike Chambers が来日します。それにあわせて 5 月 23 日(水) 18:00-20:00 に大崎ゲートシティホールで Apollo mini camp@Tokyo が開催されることになりました。(Apollo mini camp@Tokyo

セミナー自体は無償ですが事前登録が必要です。セミナーの特設サイトからお申し込みください。(Apollo mini camp@Tokyo 事前登録) 定員は 150 名ですのでお早めに。

FLVCheck のアルファ版が Adobe Labs に公開されました。(Adobe FLVCheck tool@Labs

FLVCheck は Adobe 製品以外で作成された flv ファイルのフォーマットが仕様にしたがっているかどうかをチェックします。誤ったフォーマットの flv ファイルが存在して、FMS からのストリーミング再生時に問題を起こしていることが分かったために、公開前にファイルの検査ができるようこのツールは開発されました。

FLVCheck は内部タイムスタンプ、メタデータ、メッセージヘッダーに問題が見つかるとそれを修正して書き出すことができます。その際オリジナルは別ファイルとして保存されます。映像や音声のデータ本体が正しくない場合はエラーの通知のみで修正は行いません。

FLVCheck は Labs のダウンロードページから入手できます。(Adobe Labs Download/Adobe FLVCheck tool) チェックボックスをクリックするとダウンロードのリンクがアクティブになります。ダウンロードファイルには簡単なドキュメントも含まれています。

今回のアルファ版は Windows 版のみで、コマンドラインツールになっています。使用手順は以下のとおりです。

  • まずは flv ファイルを用意します
  • (初回のみ) ダウンロードした zip ファイルに含まれている vcredist_x86.exe を実行してランタイムをインストールします
  • Windows のコマンドプロンプトのウインドウを開きます
  • プロンプトから FLVCheck を実行 - このとき必要に応じてパラメータを指定します (パラメータは -h を付けて実行するとリストが表示されます)

本日、CS3 日本語版が発表されました。

従来の Macromedia Studio に相当するのは Web Standard (Web Standard の機能) で、Dreamweaver, Fireworks, Flash, Contribute がパッケージされています。これに Photoshop や Illustrator が加わると Web Premium (Web Premium の機能) というパッケージになります。

出荷はまだ少し先で6月下旬予定です。After Efffects や Premiere を中に含む Master Collection と Production Premium は7月中旬以降に出荷の予定です。

出荷に先立ってお披露目イベントも予定されています。6月8日(金)の午後 1 時半から品川プリンスホテルです。詳しくはこちらのページをご覧ください。(Adobe Creative Suite 3 発表記念イベント) 無償ですが事前登録が必要ですので参加予定の方はお早めに。

それから、既に Web 上では Adobe スゴロク CS3 が公開されています。結構はまります。携帯サイトにもいくつか入手可能なアイテムがあるようですよ。

なお、今回からアップグレードポリシーが 3 世代までに変更されましたのでご注意ください。(アップグレードポリシー変更について) ややこしいので Web 関連だけアップグレード情報をまとめておきますと、

Web Standard については旧マクロメディアの MX 以降の製品が対象で、いずれかの Macromedia Studio か Dreamweaver もしくは Flash をお持ちの方がアップグレード可能です。ちなみに Adobe Store の価格では Studio もしくは Dreamweaver + Flash Professional (MX は普通の Flash で可) をお持ちの場合は 49,800 円、Dreamweaver または Flash 単体をお持ちの場合は 102,800 円です。

Web Premium はこれに加えて、CS 以降の Suite, Photoshop, Illustrator もしくはPhotoshop 7 か Illustrator 10 もアップグレード対象製品になります。Adobe Store の価格では Studio もしくは CS1/2 Premium/Standard をお持ちの場合は 111,000 円、それ以外は 202,000 円です。

アップグレードの詳細のページ (アップグレードの詳細) の中ほどにある "アップグレードツール" タブをクリックすると、アップグレードに必要な条件をチェックするツールが使えます。よろしければこちらもお使いください。

Flex Module for Apache and IIS が地味にアップデートされました。(Flex module for Apache and IIS@Labs) 主な変更項目は以下のようになっています。

  • PowerPC サポート追加
  • Windows Vista サポート関連の修正
  • キャッシュによるコンパイル速度の改善
  • JRE 1.4.2 互換性関連の修正
  • IIS 6 で誤った content-length が送られる件への対応
  • IE の自動キャッシュ機能への対応
  • Windows の PATH 変数関連の対応
  • template を若干変更
  • Apache 1.3.7 / Windows サポート追加

Flex 2.0.1 以降と JRE 1.4.2 以降をお持ちの場合は、以下のインストーラをダウンロードしてください。

無い場合は SDK & JRE 込みのインストーラをどうぞ。

ライセンスアグリーメントは次の URL にあります。(Software License Agreement@Labs

Solaris プラットフォーム用の Flash Player 9 プレリリース版のアップデートが公開されました。Adobe Labs からダウンロードできます。 (Flash Player 9 Update

2014年1月

Sun Mon Tue Wed Thu Fri Sat
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
レンタルサーバー

月別 アーカイブ

Powered by Movable Type 4.261