文字列表現を柔軟に指定できるフォーマッタ
アプリケーションにおいて、画面上に表示されるデータの表現はユーザーが見て分かりやすくなければなりません。また、状況や目的に応じて表現を変える必要があります。そのために必要なフォーマッタとは、あるデータに対する文字列表現を柔軟に指定できるようにした機構です。
■ Flexにおける日付けの表示
例えば、日付けというデータを考えてみましょう。Flexにおける日付けはデータ上、Date型として扱います。これをFlexのデフォルトの文字列表現にすると、以下のようになります。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
ここで、データ上はDate型で扱いつつ、画面上の表示は、例えば「2007/11/11 (日) 18:01」にしたいと思ったときにフォーマッタを利用できます。
■ 日付けのフォーマッタ:DateFormatter
フォーマッタはあるデータの文字列表現への変換方法を定義します。日付けであれば、DateFormatterというフォーマッタが標準で用意されています。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
「2007/11/11 (日) 18:01」という形式で表示するために、formatStringにYYYY/MM/DD (EEE) JJ:NNという値を設定しています。Y、M、D、E、J、NといったアルファベットはDateFormatterで定義された変換方法に基づいて記述することで、Date型から年や日などの情報に置き換わります。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
実際に変換を行うには、DateFormatterのformatメソッドにDateの値を渡すと、変換後の文字列を受け取ることができます。DateFormatterの書式についての詳細は「Adobe Flex 2 ヘルプ DateFormatter クラスの使用 Flex 2.01」を参照してください。
■ 金額のフォーマッタ:CurrencyFormatter
日付以外にも金額や電話番号などを表現するのに適したフォーマッタが用意されています。金額であれば、CurrencyFormatterを用いて、「\」や「$」などの単位表示や、カンマ区切りの有無などの設定ができます。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
“使える”アプリには2重チェックが必要
前述のとおり、クライアント側でデータの検証を行うことにより、サーバリクエストを軽減できます。しかし、クライアント側で検証を行えば、サーバ側での検証は必要ないかといえば、そうではなく、サーバ側での検証はいままでとまったく同じように必要となるでしょう。
クライアントでの検証は補助的なもので、データのフォーマットについて制限を設けるものですが、実質的なデータの内容についての検証はサーバ側で行う必要があるからです。
プロフィール
成瀬 勉(なるせ つとむ)
クラスメソッド株式会社 エンタープライズサービス部門アーキテクト
Macromedia FLASH MX 2004 Developer認定技術者
FlashエンジニアとしてWeb製作を経たのちWebアプリケーション開発に携わる。FlexやWPFなどのRIA開発および技術調査を日々行っている。クラスメソッド株式会社での主な開発実績は、旭化成の電子ファイリングシステム、ひまわり証券のオンライントレードシステム、ベルシステム24の営業支援システムなど。
ブログ(C:\narun)も更新中。
FlexやAIRの開発依頼や転職希望の方はコチラ。最近は会社説明会やセミナーもやっています。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- Flex/AIRの開発環境Flex Builder 3を使ってみよう
現場で使えるFlex実践テクニック(特別編) 今秋に機能確定版がリリース予定のFlex Builder 3。EclipseベースのFlex/AIR開発環境のインストール方法と新機能を紹介 - Eclipseで開発可能になったAdobe Flex 2
リッチクライアント・プロダクトレビュー 今年登場するAdobe Flex 2はEclipseプラグインを開発環境とするリッチクライアントフレームワークに生まれ変わった - Flex2でWebアプリ開発
これまで3週間かかっていたWebアプリのモック開発工程を、3日に短縮できたというFlex2の体験版をダウンロードして簡単アプリを作ってみよう - ・第1回 モックを3日で仕上げるFlex2とは?
- ・第2回 MXMLを理解してFlex 2のUIを定義しよう
- ・第3回 イベントドリブンなアプリケーション構築
- ・第4回 データバインディングでオブジェクト間のデータ受け渡し
- ・最終回 より短いXMLコードでサーバ通信させるFlex2
- Flexのクライアントサイドをオープンソースで制覇する
大規模なWebアプリケーションを大人数で開発するときに便利なFlexのクライアントサイドのフレームワークを紹介 - ・第1回 開発品質を均一化させるCairngormとは?
- ・第2回 Flexのフレームワーク、Cairngormを使ってみよう
- ・第3回 Flexのフレームワーク、Cairngormのアーキテクチャ
- ・第4回 Flexのフレームワーク、Cairngormでサンプルアプリ
- ・最終回 Flexのフレームワーク、Cairngormで検索アプリ完成
- Flashベースのリッチクライアントを体験
XMLタグでFlashベースのユーザーインターフェイスを構築できるMacromedia Flexを6回の連載で体験・評価します - ・第1回 Macromedia Flexのインストール
- ・第2回 Flex開発環境「Flex Builder」のセットアップ
- ・第3回 FlexBuilderで新規アプリの開発に着手しよう
- ・第4回 ドラッグ&ドロップでUIコンポーネントを配置
- ・第5回 Flexならデータ・バインディングもカンタン
- ・最終回 Flexの表現力をActionScriptで強化する