Archive

Archive for the ‘ActionScript3’ Category

Flex SDK , Google Dart

11月 19th, 2011

Flex SDKがApacheに寄贈されるらしい。

http://sourceforge.jp/magazine/11/11/17/0456235

これはAndroid等モバイル向けFlash Playerの開発終了とも関連して

http://blogs.adobe.com/conversations/2011/11/flash-focus.html

HTML5でのwebアプリ開発が今後のメインになっていく事を踏まえての事のようですね。
スマホ等モバイル向けAIR実行環境は引き続きサポートされるとの事。

ジョブズご存命の頃必死になってFlash Playerの普及に尽力していた事もあってコストがかかりすぎたんでしょうかねえ。。
でもおかげで、Flex frameworkも相当軽くなりました。ソーシャルゲームのUI開発等に使用すると非常に保守性が高くて便利です。

FlexのMXMLはView上にカスタムクラスをぼこぼこのっけていくタイプ、一方HTMLは、ViewのDomを直接書き換えて操作するタイプなのでxml+scriptですが、若干スタイルが違いますね。

とは言えPC向けFlash Playerは、まだまだ健在です。Stage3Dが追加されGPUでの3D等の処理も行えるようになり(ショックウェーブでもできてましたが)3DのMMORPGなんかもブラウザ上で実現できるようになりました。WebGLが普及すればこの辺もどうなるか分かりませんが。

Flash vs HTML5 なんてのがずっと話題になってたんですが、いまいちしっくりこないなあと思っていたんですが、HTML5ってのはjavascriptやsvgなんかも含んだ定義になっていると考えるとまだ問題を孕んでる感は否めないです。

個人的にはクライアントサイドの「静的言語or動的言語」は、EcmaScript 4th Edition (AS3)の放棄によってすでに片がついてしまったという事になるのであればFlashを擁したくなってしまいます。

EcmaScript 4th EditionについてはAdobe同様Googleも支持していました。
Googleは Flash vs HTML5 抗争のさなかhtml5の普及促進をしつつFlash擁護をしているような状態で、ChromeにFlash Playerを入れてしまったり、Appleと違い、Android端末にもFlash Playerを載せる事に積極的でした。
もちろんhtml5はまだ仕様策定が完了していなかったので、各ブラウザごとに実装が異なり実用性に乏しかったという面もあるかもしれませんが、実のところFlash云々ではなく、保守性の高い静的型付け言語を大規模開発で利用できるメリットを残しておきたかったのかもしれませんね。

Googleが先日dartを発表した裏には、Googleの内部文書

http://markmail.org/message/uro3jtoitlmq6x7t

で言われているようにjavascriptのパフォーマンス上の問題と共に、静的型付け言語の開発効率や保守性についての利便性があるようにも思えます。

クライアント側で本来のパフォーマンスを発揮するにはブラウザがエンジンを実装する必要がありますが、google以外のブラウザでは当面はjavascriptに変換して使用するという利用方法になってしまいます。つまりjqueryなどのフレームワークと同様の扱いになるわけで、それを利用するメリットとなるとスピード等でなく開発効率保守性の高さという部分以外ありません。

シンプルなHello Worldもjavascriptに変換すると17259行にもなってしまう(笑)という事で早速槍玉にあげられてます。
https://gist.github.com/1277224

とは言えFlexなんかもそうですが、大規模開発でコード量が増えるとフレームワークの余剰コードはだんだん相殺されていきますからその分別の大きなメリットがあれば問題ないだろうとは思います。

googleもいろんなサービスやらgoogle waveやらを中途半端にやめてきてますから、この手の新しいものについて懐疑的な人が多いのではないかと思います。
dartを成功させるには、各ブラウザベンダーへの働きかけよりも、javascript変換での利用をまず促す必要があり、そのためには、開発効率や保守性の高さをアピールするのが一番の近道だと思います。

google app engineはもともとpythonでしたが、その後Javaになり、gwtが利用できるようになりました。
gwtというのは、Javaで書いてコンパイルするとjavascriptのコードに変換されるというもので、丁度今のdartと似たような役割なのかなと思います。
gwtの利用者がどのくらいいるのかは知りませんが、これを利用するメリットはやはり保守性の高さではないでしょうか。
(Javaに関してはAndroidでのOracleからの訴訟もあり、使用するのを避けたいという思惑もあったのかもしれません。)

dartの言語仕様やハイプやらにはあまり興味ありませんが、クライアント向けに静的型付け言語が利用できるのが、個人的には一番のメリットだったりします。

あとsvgに関しては、cssの仕様とだぶるところがたくさんある上にそれらの仕様に整合性がとれてない部分があったり、ブラウザの対応もまちまち・・・
この辺はMicrosoftがいろいろ言及してたと思うけど確かに正論を言ってたような。しかし過去が拭い去れない・・・

まあこれら企業は標準化のフォーマット策定にも関っているから、最終的にいいものが残るような形になっていってほしいですね。

admin ActionScript3, Flex

Flex 4.5

6月 5th, 2011

今更ですが、Flex 4.5(4.5.0.20967)を触ってみました。sparkのコンポーネントとかモバイルコンポーネントとか追加されてます。対応Flash Playerは10.2以降との事です。

ベータ版時代の情報見てFlash DevelopでちょこっとAndroidアプリ作ろうと思ったんですがいろいろ仕様が変わってるようでなかなかコンパイル通らなかったw
Flash Developにはまだ4.5のintrinsicsが追加されてないのでコード補完は今のところ使えませんが以下のようにすればコンパイルは通りました。

クラス名が変更されてるようです。(他にもいろいろあるかも)
[Beta] MobileApplication -> [Release] ViewNavigatorApplication
[Beta] TabbedMobileApplication -> [Release] TabbedViewNavigatorApplication

コンパイラオプション( frameworks/airmobile-config.xml を使用するようです )
+configname=airmobile

AIR設定xml [ application.xml ] ( AIR 2.6じゃないと駄目っぽい )
application xmlns=”http://ns.adobe.com/air/application/2.5″
-> application xmlns=”http://ns.adobe.com/air/application/2.6″

これで一応コンパイルは通るようですが、実機で動くかは未確認。

ViewクラスってのがAndroidのActivityに該当するような感じでpushとかpopとかでView間を渡り歩いてついでにパラメータ渡したりできます。

でかいモデルデータ格納はPersistenceManagerっていういかにもなネーミングのクラスがあってそれを使って格納したり取り出したりしていくようです。名前の割りにはこのクラスはSQLiteにデータを保存するわけではなく、FlashらしくLocalSharedObjectに保存するようです。

またView起動時はバックボタンで戻った場合でもviewActivateっていうイベントが発行されるようなのでAndroidより設計が楽そうです。ただAndroidみたいにintentが使えないので非アクティブなViewのデータを書き変えたりできないっぽいです。

モバイル用のクラスはmobilecomponents.swcってのにまとめられてます。

まだあんまり触ってないのでもうちょっといろいろやってみようと思います。

[ 補足 ] Flash Develop 4 アルファ版を使うとコード補完にも対応するみたいです。

admin ActionScript3, Air, Android, Flash, Flex

fx editor

12月 26th, 2010

Facebookでfxgデータをシェアできるアプリです。

Facebook app that can edit and share fxg files.
fx editor

admin ActionScript3, Flash, Flex

FXG Editor output

5月 6th, 2010

wonderflでFXG Editorの出力をいくつか検証してみました。

http://fxgeditor.7jigen.net/gallery/parse/7

http://fxgeditor.7jigen.net/gallery/parse/11

今のところMaskのパースに若干問題あるようです。(なんかGroup内に入れないとコンパイルできないみたい) →そのうち直します。 直りました

他にもコンパイルエラーがでたら教えてください。

コードパネルを開いてMXMLタグボタンを押すとMXMLのコードに変換されるので、それをそのままwondorflのエディタに貼り付ければ画像が出力されるはずです。

admin ActionScript3, Air, Flash, Flex

FXG Editor

5月 3rd, 2010

SVG Editor を若干変更してFXG Editorにしてみました。

http://fxgeditor.7jigen.net/

Flex SDKを使えばそのままmxmlタグの中に入れてコンパイルできます。
(テキスト部分はTLFを使っているので同様にレンダリングされないかもしれません。)
Flex4にcontextMenu絡みのバグがあるので右クリックが利かない場合があります。 ← 直りました。

Filterはこっちの方がたくさんつかます。

Made the FXG Editor from the SvgEditor with a little changes.

Flex SDK should be able to compile the exported FXG tags by placing the code inside a mxml.
( Not sure about the text rendering though. This one just parse the text with TLF. )
And because of the contextMenu bug of the Flex 4, the right click menu may not work properly. Fixed.

This has more filter capabilities than SVG Editor.

admin ActionScript3, Air, Flash, Flex

Runtime FXG Parser

4月 25th, 2010

SVG Parser を FXG Parser に書き換えてみました。

こちらからどうぞ。
http://www.libspark.org/wiki/seven/fxgparser

Runtime FXG Parser is available from here.

admin ActionScript3, Air, Flash, Flex

SvgEditor Introduction video

4月 8th, 2010

You need to a flashplayer enabled browser to view this YouTube video

http://www.youtube.com/watch?v=DtKfIggiTAw

admin ActionScript3, Air, Flash, Flex

Svg Editor Air App

4月 1st, 2010

Svg EditorのAir版です。
こちらはローカルのsvgファイルを読み込んで編集できます。
Air 1.5.3以上が必要です。
↓のアイコンクリックでインストールできます。

This movie requires Flash Player 10

ダイレクト・ダウンロード

オンライン版

こちらもSpark Projectで公開しています。
http://www.libspark.org/wiki/seven/svgeditor
http://www.libspark.org/browser/as3/SvgEditor

admin ActionScript3, Air, Flash, Flex

SVG Editor

3月 31st, 2010

前に作ったSVG Parserに無理やりエディット機能を実装してみました。
SVG Editor

今のところSVGデータを読み込んで、それを編集する機能しかありませんが、もうちょっと編集やプリミティブの機能を実装しようと思います。
変形させて移動させると選択されたアイテムが飛んでいってしまうバグがありますw なおりました!

お絵かき掲示板用というよりは、web2.0だったか4.0だったか忘れましたが(笑) そんな感じでホワイトボード機能的にベクターデータを使いまわして一つの画像をユーザー間で共有して編集するとかの利用に適した、その辺のサービスに簡単に実装できるライブラリにしようかと思います。
(テキストはオンラインで簡単に編集できるけど、画像は共有はできても元データの編集はできないので、この手のサービスにはベクター使いたい場合が多いと思います。)

SVGなら最近の適当なブラウザでそのまま見られるので、SVGベースにしてみましたが、FXGが普及したらそっちでもうちょっと高機能なのを作ろうと思います。実装しやすそうだし。

admin ActionScript3, Flash, Flex, 未分類

SVG Parser

3月 4th, 2010

This movie requires Flash Player 10

Inkscapeで出力されたSVGをパースしやすいパーサを作りました。
Spark Projectで公開してますので、SVNでダウンロードしてください。

http://www.libspark.org/wiki/seven/svgparser
http://www.libspark.org/browser/as3/SvgParser

admin ActionScript3, Flash, Flex