Flash Builder 4.5の新機能を紹介
Flash Builder 4がリリースされてから1年ほど経ちましたが、ついにメジャーアップデートについてご紹介できる運びとなりました。最新バージョンである「Flash Builder 4.5」には、様々な新機能や強化機能が追加されました。
現在Adobe Labsからダウンロードできるのは、初期プレビューリリースです。Flash Builder 4.5およびFlash Catalyst CS5.5の最終リリースは、5月上旬にダウンロード可能になる予定です。
アドビのプレリリーステスト担当者は、このアップグレードを“なくてはならないもの”と表現しており、アドビはこのアップグレードがFlexデベロッパーとActionScriptデベロッパーにとって最も生産的な開発環境になると考えています。
Flash Builder 4.5では、次の4つのポイントに重点的に取り組んでいます。
- モバイルアプリケーションおよびマルチスクリーン対応アプリケーションの開発
- FlexプロジェクトおよびActionScriptプロジェクトのコーディング作業の高速化
- デザイナーおよびデベロッパーのワークフローの改善
- プラットフォームサポートの更新とパフォーマンスの向上
この記事では、Flash Builder 4.5で導入された新機能、強化機能、ワークフローの概要を説明する他、参考記事も紹介します。お使いいただく際に、ぜひお役立てください。
モバイルアプリケーションおよびマルチスクリーン対応アプリケーションの開発
Flash Builder 4.5は、Adobe Flex 4.5 SDKやActionScriptを使って構築されたモバイル向けAIRアプリケーションの開発、テスト、デプロイメントを広範にサポートするようになります。デベロッパーの従来のスキルや使い慣れたワークフローを活用しながら、Flash BuilderでWeb、デスクトップ、モバイルに対応したアプリケーションを効率よく開発できます。
Flash Builder 4.5では、「Flexモバイルプロジェクト」または「ActionScriptモバイルプロジェクト」のどちらかを設定できるようになりました。いずれかのプロジェクトから、1つまたは複数のモバイルプラットフォームを対象とするアプリケーションをパッケージ化できます。今回のリリースでは、Flexプロジェクトで「Google Androidデバイス」がサポートされ、ActionScriptプロジェクトで「Google Android」と「Apple iOS」の両方のデバイスがサポートされます。Apple iOS用のFlexプロジェクトサポートを追加するFlash BuilderおよびFlex SDKのアップデートは、2011年の夏に提供される予定です。
Adobe Flex 4.5 SDKは、モバイルアプリケーション開発に対応しています。モバイル向けに最適化されたモバイルコンポーネントや、モバイルアプリケーション向けの共通デザインパターンが組み込まれた新しいアプリケーションレベルの構造が提供されています(図1)。Adobe Flex 4.5 SDKを使用したプロジェクトに関して、Flash Builder 4.5のコーディング環境では、コンテンツアシストを通じ、モバイル向けに最適化されたコンポーネントを自動的に提案します。また、デバイスごとに異なる画面サイズや縦横比に対応するため、デザインビューにもモバイルアプリケーション用のレイアウトや、ビジュアルプレビューのサポートが追加されました。

Flash Builder 4.5では、アプリケーションのプレビューやデバッグを「AIR Debug Launcher(ADL)」を使用しながらデスクトップ上で実行することができます。また、接続したモバイルデバイス上で実行することも可能です。また、すべてのモバイルプロジェクトで起動オプションや、デバッグオプションを利用できます。
アプリケーションが完成してデプロイメントの準備が整ったら、Flash Builderで提供されている合理化されたワークフローを使用して、アプリケーションのリリースビルドを書き出します。
Adobe Flex 4.5 SDKおよびFlash Builder 4.5を使用したモバイルアプリケーション開発について、詳しくはAdobe Developer Connectionサイトに掲載されているNarciso Jaramilloの記事をご覧ください。
Flex/ActionScriptプロジェクトにおけるコーディング作業の高速化
よりいっそう生産的なコーディング環境を提供できるように、デベロッパーからの要望に耳を傾けてきました。Flash Builder 4.5には、それらの要望が反映されています。Flash Builder 4で追加されたものに加え、コーディングの迅速化に焦点を当てた25種類以上もの新機能を利用できるようになっています。
Flash Builder 4.5では「コードテンプレート(スニペットとも呼ばれる)」がサポートされ、コンテンツアシストを使って、事前に設定されたMXML、ActionScript、CSSのコードの固まりを自分のコードに挿入できるようになっています。また、パッケージ、クラス、forループ、whileループ、switchブロックの定義など、すぐに使用できる100種類を超える組み込みテンプレートが提供されています。自分で作成したカスタムテンプレートのセットを設定したり、テンプレートをインポート/エクスポートしたりもできるので、開発チームのメンバー全員がプロジェクト用に統一されたテンプレートのセットを使って作業できます(図2)。

「クイックアシスト」を利用すると、コード関連のオペレーションが状況に応じて提供されます。クイックアシストは、Flash Builder 4.5で[Ctrl]+[1]キーを押すと表示されます。ファイルやワークスペースの識別子の名前変更、インポートの整理、ローカル変数のフィールドへの変換、変数への式の値の代入、getter/setterの生成、イベントハンドラーの生成、ラベル関数の生成、変数宣言の分割にも対応しています。また、コード内で未定義の変数、メソッド、クラス、インターフェイスを参照するときに、クイックアシストを使用してスタブコードを生成することも可能です。Flash Builder 4.5にリアルタイムの警告としてオレンジ色の波線が表示されるので、クイックアシストを使用して問題を解決し、進行中の開発タスクを継続することができます。
上記の機能の他にも、メタデータコンテンツアシストが提供されています。コードビューで「[
」(左角かっこ)を入力すると、Flex SDKおよびカスタムメタデータの両方に対するコードヒントが提示されます。また、ActionScript向けの提案のサイクル表示を実現するため、コンテンツアシストが強化されています。つまり、テンプレート、変数、関数、クラス/インターフェイス、パッケージ、名前空間のいずれかだけを表示するように、コードヒントを瞬時にフィルタリングできます。さらに、オーバーライドしたい親クラスのメソッド、または、実装したいインターフェイスのメソッドのスタブメソッドも生成できます。
また、小規模な機能強化を幅広く行うことにも取り組んできました。これらの機能により、全体的なコーディング環境が大きく改善されています。Flash Builder 4.5では、次の機能が強化されています。
- getter/setterによる、Bindableメタデータと送出イベントコードのサポート
- 拡張CSSコンテンツアシスト、ナビゲーション、およびリファクタリング
- MXMLドキュメントのコード書式設定
- MXMLのイベントハンドラーのコンテンツアシストによる既存の関数の表示
- ステート選択時における、コード補完によるステート構文の挿入
- 次/前のサブワードのナビゲーションサポート
- ブロック選択および編集モード
Flash Builder 4.5のコード生成機能について詳しくは、Adobe Developer Connectionサイトに掲載されているSameer BhattとSameer BhattとSreenivas Ramaswamyの記事をご覧ください。
デザイナーおよびデベロッパーのワークフローの改善
Flash Builder 4とFlash Catalyst CS5がリリースされたことで、デザイナーがデベロッパーにデザインアセットとコンポーネントスキンを提供できるようになり、高品質のFlexプロジェクトを開発するためのデザイナーとデベロッパーによる共同作業が実現しました。しかし、デザイナーとデベロッパーの双方向のワークフローに対応するためには、さらに改善が必要でした(※)。
Flash Builder 4とFlash Catalyst CS5では、Flash Catalystで生成したFlexプロジェクトファイルを、Flash Builderで読み込むことはできたが、逆方向、つまりFlash Builder側で編集したものをFlash Catalystで読み込むことはできなかった。
Flash Catalystチームは、新しいリリースのFlash Catalyst CS5.5の開発に熱心に取り組んできました。そして、ついにFlash Builder 4.5で作成、または編集したFlexプロジェクトを読み込むことが可能になりました。

Flash Builder 4.5プロジェクトの読み込みだけでなく、Flash Catalystではコード生成機能も強化されています。また、サイズ調整可能なユーザーインターフェイスがサポートされる他、ユーザーインターフェイスのコントロールから参照できるデベロッパーのコードがデザイナーの作業から保護されます。
Flash Catalyst CS5.5の新機能に対応するために、Flash Builder 4.5にもたくさんの新機能が導入されています。
デザイナーと共同作業をする場合にデベロッパーが考慮しなければならないのは、Flash CatalystでサポートされているFlex機能のサブセットとの互換性を維持することです。しかも、Flash Catalystと互換性のないプロジェクト構成設定も存在します。Flash Builder 4.5では、「Flash Catalyst compatibility checker(Flash Catalyst互換性チェッカー)」をオンにすると、Flash Catalystにインポートする際に問題が発生する可能性を含むコンポーネント、属性、またはプロジェクト設定が存在する場合には警告が表示されます。そのため、そうした問題を解決したり、プロジェクトのパーツをライブラリにリファクタリングしたりしてから、デザイナー向けにプロジェクトをエクスポートすることができます。
Flash Catalyst CS5.5を使用した場合、デザイナーは、デベロッパーが設定したスキン適用可能なカスタムコンポーネントと併せて、前のリリースで導入されたアートワークをコンポーネントスキンに変換するワークフローを利用できます。また、Flash Builder 4.5では、スキンステート、スキンパーツおよびコンポーネントのビジネスロジックを指定できる、必須のActionScriptクラスを生成可能な便利なウィザードが提供されています。
Flash Builder 4.5では、コードの作成とデザインの変更の両方を行うデベロッパー向けに、Flash Catalyst CS5.5を起動して編集するワークフローも使用できるようになっています。両方の製品がインストールされている場合、Flash Builder 4.5でプロジェクトを選択して[Edit in Flash Catalyst(Flash Catalystで編集)]を選択し、Flash Catalyst CS5.5で必要なデザインの変更を行った後、Flash Builder 4.5に戻って更新版のプロジェクトに対して作業を続行できます。これにより、ワークフローを迅速化し、FXPファイルの書き出しと読み込みを完全に避けることができます。
Flash Builder 4.5とFlash Catalyst CS5.5を連携させて使うことに関しては、様々な取り組みが行われています。デザイナー主導型ワークフローとデベロッパー主導型ワークフロー、スキン適用可能なカスタムコンポーネントの作成、および、Flash Catalystプロジェクトに関する制限事項について詳しくは、Adobe Developer ConnectionサイトのJacob Surberの記事を参照してください。
プラットフォームサポートの更新とパフォーマンスの向上
今回のFlash Builder 4.5は、最新バージョンのEclipse(バージョン3.6.1「Helios」)をベースにしています。そのため、Eclipseを使った強化機能およびバグ修正はすべて、Flash Builderユーザーが利用できるようになっています。さらに、Mac OS Xに関しては、Eclipseの「Cocoa」バージョンを使用できるように、Flash Builderをアップデートしました。古い「Carbon」バージョンのサポートは今後中止する方向です。
Flash Builder 4.5は、Adobe Flex 4.5 SDK、Adobe AIR 2.6、Flash Player 10.2など、アドビの最新テクノロジーにも対応しています。モバイルプロジェクト以外のプロジェクトに対して、Adobe Flex 4.5 SDKはSparkバージョンのForm、Image、DataGridといったコンポーネントを導入しており、それらはすべてFlash Builder 4.5でもサポートされています。Adobe Flex 4.5 SDKについて詳しくは、Adobe Developer Connectionサイトに掲載されているDeepa Subramaniamの記事を参照してください。
改善されているにもかかわらず表には出てこないものの1つに、Flash Builderのアーキテクチャとインストーラーに関する強化が挙げられます。「スタンドアロンバージョン」と「プラグインバージョン(Flash Builderを既存のEclipseインスタンスに追加する場合に使用)」という、2種類のインストーラーはもうありません。その代わり、スタンドアロンバージョンをインストールし、ユーティリティディレクトリ内にあるユーティリティを使用して、1つまたはそれ以上存在する既存バージョンのEclipseを使って作業できるように、Flash Builderを設定します。
プラットフォームサポートの更新以外にも、非常に多くの時間をかけてFlash Builderで大規模なカスタマープロジェクトを検証し、パフォーマンスおよびメモリ使用量の改善に努めました。大幅な改善が見込まれる領域として、デザインビュー、リファクタリング、およびプロファイリングの3つを特定しました。後者の2つの領域においては、オペレーションに必要な時間が最大65%短縮されることが分かっています。これにより、ソースファイルを多数含んでいるプロジェクトや、依存関係があるライブラリプロジェクトを複数含んでいるプロジェクトでは、これまでよりも生産性が大きく向上します。Flash Builder 4.5ではデザインビューが大きく見直され、コードビューからデザインビューへの切り替えの時間が短縮され、複雑なプロジェクトをレンダリングするのに十分に堅牢になっています。
その他の改善点
Adobe Ideasサイトに寄せられたユーザーからのフィードバックおよび機能のリクエストを基に、今回のリリースに反映させた機能や小規模な改善点は、その他にもたくさんあります。そうした改善点をいくつかご紹介します。
- MXコンポーネントをまったく使用できない「Spark限定」プロジェクトを設定できます。
- 「ActionScript AIR」プロジェクトを設定できます。
- ActionScriptファイルとMXMLファイルは、ファイルシステムからこれらのファイルタイプを起動できるように、Flash Builderと関連付けることができます。
- デザインビューでは、コンポーネントをドラッグ&ドロップした場合、ビジュアルフィードバックが表示されます。
- 開発中のプロジェクトでデザインビューが必要ない場合は、デザインビューを無効にできます。
- スタンドアロンのプレビューとデバッグ(HTMLラッパーを使用していない場合)については、使用したいFlash Playerを設定できます。
- コードテンプレートを使用して、Flash Builderによって生成されるコードをカスタマイズできます。
- コンテンツアシストを起動するトリガーキーを指定したり、オートコンプリートによる入力データ候補を受け入れるために使用するキーを追加したりできます。
- ファイル/ファイルタイプをビルド出力フォルダーから除外できます。
- デベロッパーは、更新版のFlexUnit SWCをユニットテスト機能と共に使用するように選択できます。
- プロファイラーでは、保持されているヒープが報告され、オブジェクトプロパティが表示され、オブジェクト参照のツリービューが示されます。
Flash Builder 4.5 for PHPの導入
この記事で既に述べた魅力的な機能と改善に加え、PHPデベロッパー向けのFlash Builderの新しいバージョン「Flash Builder 4.5 for PHP」も導入されます。Flash Builder 4.5 for PHPは、Flash Builder 4.5とZend Studio 8を統合したものであり、FlexとPHPを使ったWebアプリケーションやモバイルアプリケーションを構築する開発プロセスを合理化します。利用できる機能には、統合インストーラー、新しいプロジェクトウィザード、改善されたPHPサービスへの接続、統合デバッグワークフローなどがあります。この魅力的な新製品について詳しくは、記事「Introducing Flash Builder 4.5 for PHP(Flash Builder 4.5 for PHPのご紹介)」(英語)を参照してください。
次のステップ
Flash Builder 4.5、Flash Catalyst CS5.5、またはFlex 4.5 SDKの新機能について詳しくは、Adobe Developer Connectionサイトをご覧ください。
このリリースに備わっている魅力的な機能をぜひご活用ください。皆様がFlash Builderを使って優れたアプリケーションを構築されることをプロダクトチーム一同楽しみにしています。