JavaFX: 今後について (Meet Jeet ブログより)

クライアントソフトウェアグループ副社長 Jeet Kaul のブログ から、JavaFX に関する FAQ が載っていたので翻訳しました。JavaFX の将来について書いてあるので、とても、興味深い内容になっていると思います。(原文は 2008年12月16日にかかれました)

また、Jeet からのコメントで、Martin Brehovsky が blog へのコメントとしていくつか修正をしてくれているそうなので、その部分も翻訳して載せておきました。

# 専門的な話も多く、もしかしたら誤訳があるかもしれません。。。
 見つけたら是非教えてください。

I have been getting a lot of great feedback on JavaFX after the launch and obviously a lot of questions too. Since people don't have the ability to walk across the hallway to question Jai, our PM for JavaFX, and get questions answered; I will do that here. I loved Osvaldo's blog. It contains a great set of questions, so I will respond to them along with a few others that I have encountered.
------------------
JavaFX の発表後、たくさんのフィードバックと同時に、たくさんの質問が寄せられています。ですが、すべての人が、JavaFX のプログラムマネージャである Jai に直接質問をして、その回答を得られるわけではないので、このブログでいくつか回答したいと思います。 Osvaldo's blog には、とても興味深い質問がいくつもあったので、私自身が受けた質問をそれに加えて、回答していきたいと思います。

1. When will Sun publish a complete specification?
Sun is committed to open standards and open source, and specifications are coming soon. We'll be publishing the specifications for FXD, FXZ, FXM and the language spec for JavaFX Script shortly. We have already started working on a draft for the language reference guide for JavaFX Script.
---------------------------
1. JavaFX の完全な仕様を Sun はいつ発表するのでしょうか?
Sun は、JavaFX をオープンスタンダード、そして、オープンソースとしていくことを約束しており、FXD, FXZ, FXM および言語仕様はもうすぐ発表されると思います。JavaFX スクリプトの言語リファレンスガイドはすでに作成が始まっています。

2. Any plans for open source?
There are some dependencies on licensed code that cannot be open sourced. We are working towards decoupling the dependencies so that the non-proprietary portions can be open sourced. Currently the JavaFX compiler, Netbeans JavaFX plugin and Eclipse JavaFX plugin are already being developed in the open source. The scene graph is out in the open. We will put the core runtime out in the open over time.
--------------------------
2. オープンソース化については?
まだ、ライセンスの問題で、いくつかのオープンソースにできない部分があります。現在は、ライセンスに抵触しない部分を分離して、その部分をオープンソースにする作業を進めているところです。現時点では、JavaFX コンパイラ、NetBeans JavaFX プラグイン、そして、Exlipse JavaFX プラグインが既に、オープンソースとして開発されています。また、scene graph も同様にオープンになっています。コアランタイムもじきにオープンになるでしょう。

3. A detailed roadmap
We will be rolling out JavaFX releases fast. The mobile platform will be released by March. You will get to see JavaFX Mobile in action at the Mobile World Congress in February '09. The current Desktop release of JavaFX 1.0 already has a beta runtime for mobile. The mobile release will be for OTA deployments that will allow JavaFX applications to run on existing phones. Following the mobile release, a visual designer tool for JavaFX will be available in mid-2009. Better media support with streaming capabilities will also be added in this release. We will be releasing bug fix releases on a continual basis.
---------------------------
3. 詳細なロードマップについて
私たちはまず JavaFX のリリースを先にしました。モバイルプラットフォームは来年の3月にはリリースされるはずです。2月に実施される Mobile World Congress で詳細が明らかになると思います。現在の JavaFX 1.0 の Desktop release には、既にこのモバイル版のランタイムがバンドルされています。モバイルリリースは、JavaFX アプリケーションが、既存の携帯電話から実行できるための OTA 開発リリースになります。その後、2009 年の中ごろには、JavaFX のビジュアルデザイナーツールをリリースする予定です。このリリースには、ストリーミングをサポートする機能も追加されている予定です。bug fix リリースは、継続的に行われていきます。

4. Where is the public bugtrack?
Developers can currently file issues at http://javafx-jira.kenai.com/secure/Dashboard.jspa. We have linked this bug database from the downloads page at http://www.javafx.com.
--------------------------
4. 公開されているバグ管理ツールは?
開発者の方は、http://javafx-jira.kenai.com/secure/Dashboard.jspa からバグを登録することができます。このバグデータベースは、http://www.javafx.com のダウンロードページからもリンクされています。

5. Do you have plans to reduce the desktop FX runtime's dependency on Swing?
Yes we will be adding new UI controls and widgets that'll be based on the common profile of the JavaFX platform. This will remove dependency on Swing and allow the UI components to be used across all devices. We will, however, also provide a better integration for existing Swing applications separately.
-------------------------
5. FX ランタイムの Swing への依存性を減らす予定はありますか?
はい。JavaFX プラットフォームの共通プロファイルに基づいた、新しい UI コントローラと、ウェジットを追加する予定です。この機能は、Swing への依存性をなくし、すべてのデバイスを通して、利用することが可能になります。しかし、それと同時に、より良い Swing コンポーネントを提供していく予定でもあります。

6. Can you share more details about the FX Mobile platform?
We intend to support CLDC and CDC stacks. Ideally we would like people to build JavaFX Mobile applications on MSA subset to enable compelling solutions, but the JavaFX runtime has a hard requirement on mostly JSR135. At this point of time there are no plans to release a full stack with the OS. We might do that in the future though. Yes we intend to support a thin layer on existing JavaME stacks so existing partners can deploy JavaFX on the OS of their choice. There will be support on Windows Mobile.
----------------------
6. FX モバイルプラットフォームについて、より詳細な情報はありませんか?
CLDC と CDC スタックについてはサポートする予定です。理想的には、JavaFX モバイルアプリケーションを、より高いレベルのソリューションを提供できる、MSA サブセットで開発してほしいですが、JavaFX ランタイムには JSR135 と同等のハードウェアが必要になります。このため、現時点では、OS のフルスタックでのリリースは予定されておりません。しかし、将来的には実現したいと思います。現在のパートナーがどの OS 上でも、JavaFX を配備できるように、既存の javaME スタックの一部をサポートした形をとる予定です。Windows Mobile でもサポートされる予定です。

7. What's the reason to create a new vector graphics format, the FXD?
The FXD file format provides significant advantages such as preservation of layers when a graphic created in Photoshop or Illustrator is exported to FXZ format. And FXZ can handle vectors and rasters as well. This allows developers greater flexibility in manipulating the exported graphics and creating amazing new visual effects.
-------------------
7. なぜ新しいベクトルグラフィックフォーマット、FXD を作成したのですか?
FDX ファイルフォーマットは、グラフィックが Photoshop や Illustrator で作られていた場合に、とても有効な、たとえばレイヤーの保存などを FXZ フォーマットとしてエクスポートする形で提供してくれます。FXZ はベクター、ラスター処理も可能です。この機能は開発者に、エクスポートされたグラフィックを処理する際の自由度を提供し、新しい画期的なビジュアルエフェクトを作成することを可能にしてくれます。

8. Some people complained about ugly security dialogs
The security dialogs are critical in providing applications a secure runtime that allows deeper system access than other technologies. However we recognize the usability issues surrounding this model. Our goal is to make the Java browser plugin completely "invisible" while keeping the powerful security model of the Java browser plugin. Java SE 6u10 is a great step in this direction. Future releases of the Java runtime will further address these issues.
--------------------------------------
8. セキュリティダイアログの見栄えが良くなく不満があります。
ほかのテクノロジーに比べ、より高度なシステムアクセスを実現するセキュアランタイムをアプリケーションに提供することがセキュリティダイアログではもっとも重要です。同時に、このモデルはユーザビリティの問題を抱えていることは認識しています。最終目標は、Java ブラウザプラグインの強力なセキュリティモデルを維持しつつ、完全に、「見えない」Java ブラウザプラグインを作ることです。Java SE 6u10 はこの方向へのよい一歩となっています。将来のリリースでは、この問題についてさらに改善するつもりです。

9. When will the JRE CDS be enhanced to support non-RT libraries?
At a higher level we are working on fixing the startup time for JavaFX and Java simultaneously. One of the initiatives is around the work that Mark Reinhold is doing with OpenJDK 7. Stay posted - we are making big changes.
-----------------------------
9. いつ JRE CDS は、non-RT ライブラリをサポートするのでしょう?
概略的には、JavaFX と Java で試験的に変更を実施しているところです。ひとつの例として、Mark Reinhold が OpenJDK 7 で実施しているものがあります。今後にご期待ください - いろいろ改善中です。

10. Perspectives on performance?
We intend to continually improve performance. It is very high on the priority list. Our current focus is on JavaFX Mobile performance. The JRE provides a great foundation for this.
------------------------
10. パフォーマンス改善の見通しは?
継続的にパフォーマンスの改善は実施していきます。パフォーマンスは最重要事項の一つです。現在は、JavaFX モバイルのパフォーマンス改善に力を注いでいます。JRE がその基礎を提供しています。

11. Do you intend to support other codecs?
The On2 VP6 codec is our cross platform story for media. We also support native codecs. Over time we will expand the number of codecs supported. We are also following OMS closely.
----------------------
11. ほかのコーデックをサポートする予定は?
On2 VP6 コーデックがメディアのクロスプラットフォームサポートの中心です。ほかには、native コーデックもサポートしています。今後は、さまざまなコーデックをサポートする予定です。OMS もサポートする予定です。

12. Will there be Linux support?
Yes there will be Linux and OpenSolaris support. Check out Josh's blog for more detail.
---------------------
12. リナックスサポートは?
Linux や オープンソラリスもサポート予定です。詳細は Josh's blog をみてください。

One of the best places to get answers is the FAQ on javafx.com/faq.
-------------------------------
javafx.com/faq の FAQ もさまざまな「回答」があります。こちらも参照してください。



Martin Brehovsky からのコメント


Hi everyone,
-----------
こんにちは、みなさん、

I'm the guy who came with the FXD/FXD idea and who's team is working on the JavaFX Production Suite. The main reason for creating FXD (and FXZ as compressed version with embedded assets) was we needed a mechanism which would map 1:1 to the FX scene graph APIs. Because of that we couldn't really use SVG directly, as not all elements we have in FX are present in SVG (e.g. advanced filter effects, ) and also not all SVG features can be easily represented in FX (e.g. defs/use mechanism).
--------------
私は、FXD/FXZ の開発をしているもので、JavaFX Production Suite のチームに属しています。FXD (と、アセットを組み込んだ圧縮バージョンである FXZ) を開発したもっとも大きな理由は、JavaFX scene graph API と一対一で対応するメカニズムが必要だったからです。JavaFX のすべての要素を、SVG で表現することができず (たとえば、advanced filter effect など)、また、すべての SVG の機能を JavaFX で簡単に表現することもできなかったので (たとえば、defs/use メカニズム)、SVG を直接利用するすることができませんでした。

Furthermore we are planning to enhance the format over the time as the FX platform evolves - new scene graph elements are coming, high level components (UI controls) are coming, maybe 3D scene graph at some point, etc .... In the case we would be using SVG, we have to follow the standard and all advanced features coming from FX would have to exist in a different namespace and all tools working directly with SVG would obviously ignore them. Not exactly the best solution and definitely not scalable.
---------------------
さらに言うと、JavaFX プラットフォームの今後のリリースで、フォーマットの拡張も検討しています - 新しい scene graph 要素の追加、上位レベルのコンポーネント (UI controls) の追加、または、3D scene graph などです。もし、SVG を使っているなら、標準に準拠し、すべての JavaFX の拡張機能は、別の名前空間に存在しなくてはなりません。また、すべての SVG を直接操作する tool は、明らかにこれらを無視しています。SVG を使うことは必ずしも最良の方法ではないし、スケーラブルではありません。

Also FXD has been designed to always map 1:1 to the FX classes. With SVG or other formats it would be nearly impossible to achieve the same (e.g. group is 'g' in SVG would you like to use class 'g' in FX - I'm not sure about that.).
---------------------
FXD は、常に JavaFX クラスと一対一の対応をします。SVG や他のフォーマットでは、これはほとんど不可能です。(たとえば、SVG では、グループは、 'g' ですが、JavaFX では、'g' クラスを使うこともできます - そういう要求があるかはわかりませんが.)

And finally - FXD/FXZ has been designed as a design-time format. For the time being it is being used as the runtime format as well, but in the future we might introduce a binary runtime format, which would be a way more efficient than the design time. For you developers nothing will be changed, as you will always work with FXD/FXZ and the SDK/tools will be responsible for translating it into a binary form, so the the runtime will be able to read the optimized binary form and the runtime should be able to read that in a way more efficient way (this is important especially for smaller devices such as mobile phones or other embedded devices).
-----------------
最後に - FXD/FXZ はデザインタイムフォーマットとして設計されています。当面は、ランタイムフォーマットとしても使用されますが、将来的には、デザインタイムよりもっと効率的な、ランタイムフォーマットを提供する予定です。開発者の側からはなにも変わりませんが、FXD/FXZ や、SDK/ツール 側が、最適化されたバイナリをランタイムを使用できるような、バイナリフォームを生成し、より効率的な実行を目指しています (これは、携帯電話や、組み込みデバイスなど、小さなデバイスに特に重要です)

Let me know if this explained the reasons why FXD and not SVG or any other existing file format. I'll try to post this also to the official javafx blog.
-----------------
SVG や他のフォーマットではなく、FXD を作り出した理由の説明になっていればと思います。javafx blog にもこの話を投稿しておきます。

投稿されたコメント:

コメント
コメントは無効になっています。
About

kenji

Search

Archives
« 4月 2014
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
今日