Swing Application Framework その2

Swing Application Framework
JSR 296: Swing Application Framework

仕事に使うことになるかもしれないので本気でドキュメントを見ているのだが、拙作のフレームワークと設計の観点で共通する部分があり、親近感が沸く。
例えばActionクラスとGUIを結びつける部分、そのためのアノテーションが用意されている点や、アプリケーションのライフサイクルに合わせてイベント(メソッド)が実行される点などが似ている。(まあ、それだけポヒュラな手法でありいろいろな所で使われているということなのだが)逆に、アノテーションの属性で非同期処理のブロッキングを制御できる点は拙作のそれには無いので非常に参考になる。
全体的にはコード量も少なく必要最低限の実装なのがシンプルで見通しが良く素晴らしい。
なお、JCPではJSR-296: Swing Application Frameworkだけではなく、データバインディングやプロパティの同期が簡単に実装できるJSR-295: Beans Bindingや、エンティティのバリデーションを実装するためのJSR-303: Bean Validationといった仕様の策定も行われているので、これらを統合することで.NET WindowsForm向けのと機能レベルで同等のフレームワークを作ることもできそうだ。※

※そう考えるとやはりWindowsFormの完成度は高いな。