メイン

2006年10月06日

Flash開発ツールZINC

Flash開発ツールとして最近よく目にするようになった「ZINC」。
いわゆるRADな開発環境を提供してくれるアプリケーションです。
.exe形式の、自己実行スタンドアロンプロジェクトのファイルをコンパイルしてくれる。

オンラインマガジンなど、定期的な発行が必要な案件にはこういうものがあると便利だ。
嬉しいことにこの手のツールには珍しくWindows版、Mac版、両方揃っている。
もちろん.appも吐ける。

おもしろいのが、単純なAPIで描画される矩形のインターフェイスだけではなく、透過マスクを使ったカスタムシェイププロジェクトが作れる機能。楽しそう。

世の中はブラウザをプラットフォームとしたAjax的なアプローチの開発案件が幅を利かせている。その対局にある小さなファイルサイズで美しいインターフェイスを持った専用アプリという手法もいいかもしれない。なによりこういったツールはダウンロードベースで提供するサービスが多いはずだし。
特にブランドイメージが確立されている企業の専用サービスツールとして、提案してみる価値はありそうだ。
たとえばスポーツチーム提供のリアルタイムバーチャルゲームとかオンラインマガジンの専用リーダとか、
それこそGoogleなんかのAPIを使って専用ツールを作るアイディアもできそう。

それはそうと {mdm}Script ってなんだ?

Flash 9アップデートに対応済み! と早くもうたっているあたりにもやる気が感じられてよろし。

2006年09月21日

ActionScript 3 cookbookを予約だけしてみる

そろそろActionScript 3に向けて準備を。
…と思ってたらタイミングよくオライリーからcookbookシリーズがでるとのことで予約受付中です。

ActionScript 3.0 Cookbook: Solutions And Examples for Flash Developers

ActionScript 3.0 Cookbook: Solutions And Examples for Flash Developers

  • 作者: Joey Lott, Darron Schall, Keith Peters
  • 出版社/メーカー: Oreilly & Associates Inc
  • 発売日: 2006/10
  • メディア: ペーパーバック

著しているのはFlash 8 Cookbookと同じJoey Lottさん。

実行環境も10倍(!)速くなったから、できることがもっともっと増えるぞ。

2006年09月19日

サンドボックス

ActionScriptやJavaScriptからプログラミングの世界に入ると、ときどき不思議な用語に出会う。
ActionScriptのチュートリアルを読んでいた時に登場した「サンドボックス」というのもそんなコトバのひとつ。

幼稚園や公園にある砂場(サンドボックス)がどうしてプログラミング用語になったのかは知らないけど、「保護すべき領域」というイメージ通りの意味で使われている。外部から受け取ったプログラムを保護された領域、「箱」の中に閉じ込めてから動作させたり、「箱」の外へ悪影響が及ぶのを防止するセキュリティモデルのことを指す。

ActionScriptのチュートリアルでは、下記のような一文が頻繁に出てくる。


「このチュートリアルでは、パブリック Web サービスを使用しているので、インターネット接続が必要です。また、チュートリアルはサンドボックスの制限によりブラウザでは動作せず、Flashオーサリングまたはローカル環境で動作します。」

読めばなんとなく意味はわかるけどね。
近所の公園にある砂場は、猫の糞やタバコの吸い殻だらけでサンドボックス制限がまったくかかってないことを考えると、セキュリティの難しさをまさしく例えているわけだな。

2006年09月14日

ソースコード検索エンジン

システム開発者のためのコード検索エンジン「krugle」。
サイトの名前で萎えてしまって食わずぎらいだったけど、試してみるとけっこう充実している。
ActionScriptをいくつか試してみた。
代表的な予約語で検索すると、ヒット件数が多くなりすぎて面食らってしまうこともある。
ほとんどカスタムクラス形式のソースコードで、ガイドコメントも多い。
いくつかランダムに眺めているだけで、とてもいい勉強になる。

「こういう動きを実現させたい」といったお助け的な使い方には実はあまり向いてなく、むしろ開発者同士のコミュニティ的な使い方の方がいいかもしれない。

ActionScriptというかFlashのコミュニティというと「Flashkit」を昔からよく使っている。Flashディベロッッパー専門サイトだけにこちらはどちらかというとグラフィック系の話題やソースがほとんど。ページの見た目も暑苦しくて、疲れている時にはうんざりしてしまうこともある。

2006年09月11日

JSライクにsetTimeout()

ActionScript2でsetTimeout()関数が使えるということに今更ながら気づいたw。
ヘルプ見ても書いてないのに…。
どうやらFlash8のコンパイラーから実装できるようになったらしい。

シンタックスは、
setTimeout (function:Object , delay:Number , arg:Object)

んで、こんなふうに、
var delayed:Number = setTimeout(hoge, 1000, getTimer() );
function hoge(startTime:Number):Void {
trace ("delayed:" + delayed);
var milices:Number = getTimer()-startTime
trace ("measuretime:" + milices);
}

一度限りで指定ミリ秒だけ遅らせたいときに便利に使えそう。
delay秒の精度はあまりよくないようだ。

2006年09月10日

AdobeのApollo計画

マイクロソフトやサンに憧れてソフトウェアベンダーからアプリケーション開発コミュニティを取り込んだ開発プラットフォームベンダーになろうと模索しているAdobeさん。
HTMLレンダリング、Flash Player、PDFリーダの機能を統合したApollo計画が少しずつ明らかになってきて、楽しみになってきた。
旧Macromedia時代にCentralという似たような戦略があったことを思い出さずにはいられない。

開発コードApollo。

名前の付け方は、Adobeらしいストレートなもの。「墜落」だけは気をつけてください。

2006年08月18日

条件演算子の簡易シンタックス

FLASHのActionScriptの条件演算子はふつう、

var numOne:Number = 8;
var numTwo:Number = 5;
if (numTwo > 0) {
trace(numOne / numTwo); // 1.6
} else {
trace("carrot");
}

…と、if....else を使って書くことが多い。

これをもっと短く、、条件 (?:) 演算子を使った簡易スタイルで記述すると、

var numOne:Number = 8;
var numTwo:Number = 0;
trace((numTwo > 0) ? numOne/numTwo : "carrot");

…という記述になる。たしかに短い記述で簡潔だ。
しかしマニュアルではこの書き方を強く避けるように口を酸っぱくして何度も言っている。
「ActionScript が読みにくくなります。」
「簡易シンタックスは読みにくくなるので、お勧めできません。」
「どうしても使う場合はをカッコで囲むなどして読みやすくしてください」
「自分や、この ActionScript を使用する他の人が間違えることも考えられます」
などなど。

構文を知らなければ、確かになんのことやらな話になるだろう。
しかしある程度構文を知っていることが前提になる ActionScript は短くて簡潔ならそれでいい、という考え方はダメなんだろうか。
どちらの書き方も確かに一長一短があるし、書き方を統一していればそれほど極端に毛嫌いするように「使うな」と言わなくてもいい気がする。
すくなとも、コードのキレイさでは、簡易スタイルのほうがキレイだと思う。
「三項演算」なんていう名前もよくない。これはしかたないけど。

2006年08月02日

動くFlash版Amazon Search

amzlsh
動くのは面白いけど、それも最初だけ。文字組が汚いのでちょっとマイナス。FLASHだから読んでいるうちにバナーが動いてちょっとイラッとなるのもマイナス。サムネール画像ももうちょっとキレイにならないかな。
せっかくFlashを使っているのだから、デザインカスタマイズが細かく設定できるとウケうると思う。

Amazonの商品をページの内容に応じて自動的に選んでくれるFlashガジェット。Amazonの商品をページの内容に応じて自動的に選んでくれる。
Blogなどのテンプレートに組み込めば、ページごとに商品を紹介する手間を省くことができるという仕組み。
つまり「Amazon SearchのFlash版」です。
Google Adsense の Amazon+Flash版と考えていただくとわかりやすいかもしれません。

サポートblogの動きが最近停滞しているのは、安定&定着したサービスになったということなんでしょう。
広告だらけのアフィリサイトでこれ使ったら、とんでもないことになりそうです。
そういう意味では、使い方、使い場所の見極めが難しいサービスかもしれない。

すいません。ちょっと辛口になってしまいました。

2006年07月15日

Flash 矩形を数値で入力

Flashで矩形を描画するとき、[option]+クリックで矩形の設定パネルが表示される。
幅と高さ、そして角丸の角度を数値入力で指定できる。
いままでこの機能を知らなかった。Adobeのアプリケーションでは一般的なTipsなので、合併記念的にMacromediaの最後の開発チームが採用したのだろう。

ちなみにこの小ワザ、Fireworksで同じ機能は搭載されておらずダメでした。

2006年07月10日

Flashの9スライス

Flashで何か動きをつけるときに、いかにもFlashらしいベクター系のオブジェクトを動かしてしまうというのはありがちなパターンなので極力使わないようにしている。
ビットマップを多様する傾向にあるのも、ベクター系のモーションを嫌ってのことかもしれない。
Flash MX2004までは、ビットマップを扱うにはいくつかのTipsが必要だった。ピクセル単位での意図しないズレや歪みを出さないための工夫の数々があった。

9 スライス機能が登場してからは、これらのTipsのいくつかは確実に不要になった。

この機能を知ったときには大笑いしたけど、使ってみるとホントに便利で手放せない機能だ。9 スライス機能をオンにしておくだけで、オブジェクトを自動的に9つのパートに分割してくれる。拡大や縮小しても、角の部分はきれいなまま。つまり9 個の領域はそれぞれ独立して拡大/縮小されるので、外線の幅が均一に保てるという仕組み。
この機能を考えた人に拍手したい。