こんにちは。きんくまです。
この記事はAdobe AIR Advent Calendar 2013の18日目の記事です。
AIRの記事を書こうとしたのですが、AS3の話題でもギリギリセーフかなと思いMVC入門記事を書こうと思います。
一応、その前にAdvent CalendarのAIRの方も触れておきます。
AIRネタ
お仕事でモバイル(iOS/ Android)のAIRアプリを作ってます。
AIRはあんまり知らない人もいると思うので、基本的なことを書くと
デスクトップ(mac / Win) / モバイル (iOS / Android)向けに1ソースで作れます。
(実際は最適化の必要があるので、部分的な切り分けは必要です)
モバイルの場合は、デスクトップと比べてパフォーマンスを気にする必要があります。
何も気にしないと、すんごく遅く表示されて「何これ、使えね!」となります。
なので、まず表示リストをどちらでいくのか決めます
・従来のAS3 Display List(Sprite, MovieClip)
・Stage 3D
■従来のAS3 Display List
・これまでWebページでずっと使われてた
・激しい動きのないもの(ツール系など)に向いている
・レンダリングモードはGPUがいいかも
(CPU,Directモードはコンテンツによっては最適だったりするので、試してみて速かったらそちらにするという感じがいいと思います。)
・Flashのタイムラインを使った開発ができる
■Stage 3D
・GPUを使って描画を速くする
・ゲーム系に向いている
・レンダリングモードはDirect
・Flashのタイムラインを使った開発がしづらい
・レイアウトは基本プログラムで行い、テクスチャを作って絵を読み込む
・ライブラリは2D -> Starling. 3D -> Away3Dが有名
という感じです。Stage 3Dは早いのですが、その分開発に若干時間がかかります。あと、ツール系は苦手です。
で、従来の方だとツール系アプリを作るときに、UIまわりを自前で作ってもよいのですが、もしiOS, AndroidのネイティブっぽいUIを作りたいときは、ライブラリの候補としてMadComponentsがあります。
この間、何かいいのないかなーと探していたら見つけました。実際にちょっと前の端末のiPhone4(Sでなく)で動かしてみたところ、30fpsぐらいは出ていたので、1ソースでiOS/Android両対応のアプリを作りたいのだとしたら、現実的な落としどころだと思います。
正直Stage3DのUIを作るライブラリのFeathersは、あんまり好きになれなかったのですが、こちらはぱっと見の印象として頑張ってみようかなという気になりました。実際に使ってみた後、またブログに書こうと思います。
あ、そうです。iOSにはAppストアに出さずに、企業内の閉じた環境でだけアプリを配ることができるEnterpriseライセンスというものがあります。
この間、これを使って納品まで済ませましたので、そういった業務で使うアプリの開発も大丈夫です。
と、ここまでがAIRの話題でした。
MVCって何?
さてここからがMVCの話題です。