Swing Application Framework その1:概要


Swing Application Frameworkとは

Swing利用のアプリケーション開発を簡単にするフレームワークで、Java 7に含まれることが予定されていましたが、http://www.infoq.com/jp/news/2009/10/java7_m5によると延期されたとのことです・・。半年ぐらい前にメモしていた内容ですが、記念にさらしときます。
現在は、java.net の appframework プロジェクトのページから入手できます。
https://appframework.dev.java.net/

Swing Application Frameworkの構成

ApplicationクラスとApplicationContextクラスがSwing Applocation Frameworkの中心クラスとなります。Applicationクラスはアプリケーションのライフサイクルに関する機能を提供します。ApplicationContextはリソース管理・タスクサービスとモニタ・イベント管理・セッション状態の永続化などのサービスを提供します。

Swing Application Frameworkによるアプリケーション構築

アプリケーション構築時には、Applicationクラスを継承したサブクラスを作成するか、SingleFrameApplicationのサブクラスを作成します。SingleFrameApplicationはApplicationのサブクラスで、デフォルトのGUIフレーム、リソースの埋め込み、セッション状態の永続化等の機能を提供します。
ApplicationとApplicationContextは、1対1の関係となり、ApplicationつまりはApplicationを継承したサブクラスを作成し、このサブクラスからApplicationContextのサービスを利用する形となります。

SingleFrameApplicationはApplicationのサブクラスで、通常のフレームが1つのアプリケーション構築時に使用し、デフォルトのGUIフレーム、リソースの埋め込み、セッション状態の永続化等の機能を提供します。

Swing Application Frameworkによるアプリケーション

最も簡単な使用例は以下のようになります。このアプリケーションは、フレームにラベルを表示します。

  public class MySingleFrameApplication extends SingleFrameApplication {

    @Override
    protected void startup() {
      show(new JLabel("SingleFrameApplication"));
    }

    public static void main(String[] args) {
      Application.launch(MySingleFrameApplication.class, args);
    }
  }


Swing Application Framework その2:ライフサイクル - etc9に続く