金曜日 12 26, 2008

技術評論社の連載記事「ついにベールを脱いだJavaFX」の第7回が公開されました。
 
  第7回 クラスを作る
 

技術評論社さんのサイトでの年内の記事の更新は、これで最後になるようです。冬休み中は(も?)、櫻庭さんの個人ブログでJavaFX関係の追加情報が得られるのではないかと思います。

おっと、今ブログを見たら、何やらNetBeansのJavaFXプラグインについての苦情が書かれていますねぇ。(^^;
あの~、私が見つけた範囲では極力フォローしますが、できればNetBeans側に直接バグを登録していただきたく・・・よろしくお願いいたしますっ! :-)
 

実は、私はまだNetBeansにバグ登録したことがないので、登録方法も何も分かりません。(^^; これから「elseの改行が変」とか「必要な行を勝手に消すな」等、調べて未登録のバグであれば登録し、ここで手順を紹介していきたいと思います。
 

とりあえず、皆さまは、記事の方をお楽しみください!!


水曜日 12 24, 2008

技術評論社の連載記事「ついにベールを脱いだJavaFX」の第6回が公開されました。JavaFX 1.0に興味をお持ちの方にはお薦めです。
 
  第6回 Swingのコンポーネント
 

この連載は、Sunのサイト上で公開している訳でも、Sunの人間が書いている訳でもありません。が、内容の充実ぶり&確かさで、JavaFX 1.0プログラミングのMUST READドキュメントだと思います。
 

特に書く必要もないと思い、書いてなかったのですが、私ともう一人、JavaFXの開発に携わっている日本人エンジニアが公開前に原稿をレビューさせていただいています。必要に応じて社内でいろいろ情報提供を頼んだりしてきたので(開発エンジニアとテクニカルライター達、そしてL10Nチーム・・・皆協力的です)、日本語で充実した記事が書かれていることは、JavaFXプロジェクトを率いているNandiniをはじめ、海外のJavaFX関係者達にも知られています。で、自分達ではできない部分をカバーしてもらっていることを、とても有り難く思っています。

(それも、JavaFX 1.0を正式リリースしてからチュートリアル等の和訳版を公開するまでにだいぶ遅延があることを考慮して、少しでも早く充実した技術情報(日本語)を日本の開発者さんに提供するために、ものすごく速いペースで連載を進めていただいています。
櫻庭さん&技術評論社さん、どうもありがとうございます!! m(_ _)m )
 

今のところ、JavaFXは、(信じられないことに)Specがありません(公開されていません)。(^^; 唯一の頼みの綱であるはずのLanguage Referenceは抜けばかり。こんな状態でよく記事なんて書けるな~すごすぎる~と、私なんかは思ってしまいます(というか、自分では処理出来そうもない、ものすごい厄介事を押しつけてるみたいで、櫻庭さんに対して申し訳なく思っています・・・もう二度と同様の記事書きはやってもらえないに違いない・・・ (^^;; )。この連載記事は、本当に貴重な情報源です。


水曜日 12 17, 2008

技術評論社の連載記事「ついにベールを脱いだJavaFX」の第5回が公開されました。
 
  第5回 演算子と構文
 

この回は特に必見、ブックマックしておく価値ありだと思います。というのは、私の知る限り、どこを探してもJavaFX 1.0の演算子のことをここまでちゃんとまとめたドキュメントは他に存在しないからです。少なくともうちの公式ドキュメント(英語)にはありません。(^^;

記事中の表1を作るには、あのアクセスしづらいLanguage Reference(まだ索引もないんです...)に散らばった情報を逐一拾い出さねばならず、また実際に動かしてみなければ分からないこともあり、かなり手間がかかったことと思います。丁寧な記事づくり、どうもありがとうございます。
 

ところで、今回の記事中にはfor文のバグ(JFXC-2504)の話が出てきます。javafx-jiraバグデータベース中では報告者がRobertになっていますが、もとはこの記事を執筆中に櫻庭さんが気づいて知らせてくださったものです。
落とし穴になりそうなところなので、修正されるまでは注意が必要でしょう。バグの詳細については、上記記事かバグレポートをご覧ください。


金曜日 12 12, 2008

JavaFX Language Referenceへのリクエスト募集」というブログを2日前に書いたのですが、ご自身で登録される場合、新しいバグをまっさらから登録していただくより、既に登録されている
 
  http://javafx-jira.kenai.com/browse/JFXC-2325
  (バグレポートは、ログインしないと見ることができません。ユーザ登録の方法についてはこちらをどうぞ。)
 
のSub taskとして登録していただく方がずっと楽ですし、担当者も喜びそうです。
 

Sub taskの作成は、新規でバグレポートを作成する方法とちょっと違います。javafx-jira中でメインのバグレポート(この場合、JFXC-2325)の下の方にある「Add Sub-Task」をクリックし、リクエストを簡単に「Summary]フィールドに書いて「Add」ボタンを押すだけ。詳細を書く欄はなく、ファイルも添付できません。
 

ちなみに、現時点で Language Reference 用のリクエスト(Sub taskとして登録されているもの)はこんな感じです:

 
消されているのは、JavaFXの次バージョン用に修正済みのものです。
 

ということで、リクエストのある方はよろしくお願いいたします。m(_ _)m


技術評論社の連載記事「ついにベールを脱いだJavaFX」の第4回が公開されました。
 
  第4回 シェイプで遊ぶ
 

第3回の記事はJavaFXスクリプトのデータ型の説明(対応するLanguage Referenceの章はこちら)で、正直ちょっと退屈でしたが(※こういう部分は誰が書いても面白くならないと思います (^^; )、第4回は素直に面白いと思います。いよいよJavaFXスクリプトでのGUIプログラミングの始まりです。

右の図は、上述の櫻庭さんの記事で使われているサンプルをかすかに改造したものです。こういうのの作成が、本当に簡単に楽しめますよ!
 

ところで・・・データ型の説明がどうやったら面白くなるか(一部の人にだけでも受けるようになるか)、ちょっと考えてみました。
知った時には結構びっくりしたんですが、最近は元素も擬人化(というか萌えキャラ化)してるんですね。:) JavaFXのデータ型にもそれぞれキャラが居るといいのかもしれません。誰か作ってください。(私個人としては、萌えキャラでなく、「もやしもん」みたいなのでいいんですが・・・。)


水曜日 12 10, 2008

JavaFX Script Programming Language Reference(英語)は、JavaFXスクリプトでプログラミングをしたければきっと目を通さざるを得なくなるドキュメントです。難しげな英文が延々と続く Language Reference(以下、LRと記述)を避け、API Doc(英語)と二つのチュートリアル(coreGUI)(英語)中のサンプルプログラムだけを参考にしてプログラミングするツワモノはきっと沢山居るのでしょうが、もう少し深い部分まで理解したければ LR は避けて通れないでしょう。
 
櫻庭さんの連載記事「ついにベールを脱いだJavaFX」はとても有用そうですが、なんといってもまだ第3回。主要な項目を全部網羅して完了するのは一体いつ頃でしょうか。櫻庭さんが持っている別の連載(Javaについてのもの)は、もうかれこれ2年以上続いているような・・・。:-) やっぱり LR は無視できそうにありません。
 

しかし!
この LR、実はまだ書きかけなんです。中を見ていただくと「To do: ここに○○を書く」みたいなコメントが書かれていたり、空っぽの章があったり・・・。(ということは、当分和訳は出ないかも。)
バージョン1.0を正式リリースしといてドキュメントが書きかけってどーなのよと当然思ってしまいますが、これを書いているのは実際に開発をやっているエンジニアですし、そこら辺は勘弁してあげてください。
 

ともかく、まだ書きかけということもあって、完成後よりもずっとリクエストを受け付けやすい状態にあると言えます。「こういう項目が欲しい」などリクエストがおありでしたら、私に教えてください。内容を評価してリーズナブルだと思えたら javafx-jira に登録しておきます。もちろん、自分で登録してくださるなら、そっちの方が大歓迎です(手順はこちら)。
ちなみに、LR は Spec ではありません。「JLS のJavaFX版」という訳ではないので、JLS 的なものをイメージしてリクエストされても応えられないことはありそうです。

最近 LR を書いてる人とメールのやりとりをした結果、とりあえずリクエストとして登録されたのが

  • キーワードの一覧を入れる。
です。この他、以下の2つはこれから登録することになっています。
  • 値 null の節を設ける。(今、null の説明は2章の「Types and Values」に埋もれていて、探すのが結構面倒。)
  • 索引をつける。
あと、櫻庭さんにも言われたのですが、演算子の分かりやすい優先順位表が欲しいですね。他にも何かあるかな。


技術評論社の連載記事「ついにベールを脱いだJavaFX」の第3回が公開されました。
 
  第3回 基本的な文法を理解する
 

ところで、この連載、JavaFXで検索してもあまり上位に出てきませんね。(^^; JavaFX 1.0正式版ではあまり役に立ちそうもない古い情報ばかりが検索結果の上位に来てしまうのはちょっとまずいかなと思います。どうすればいいんでしょう?


火曜日 12 09, 2008

実際に、さっきJavaFXコンパイラのバグを自分で登録してみました。
今回私が使ったのは、社内のJavaFX開発グループのメンバーとしてのアカウントではなく、1つ前のエントリーで書いた方法でユーザ登録した、個人としてのアカウントです。つまり、ユーザ登録さえすれば、どなたでも同じことができるはずです。

JavaFXのバグを登録する手順は、Javaのバグを登録する手順よりずっと簡単です。例によって英語オンリーな世界ですが、しきいはずっと低いと思います。
 

javafx-jiraのトップページからログインした後、

  1. 画面上部のメニューから、「CREATE NEW ISSUE」を選択。
  2. Project プルダウンメニューで、「JavaFXコンパイラ」「アプリ」「ランタイム」の三択。
  3. その下のIssue Type プルダウンメニューで、「バグ」「(新)機能」「機能拡張」など七択。選択肢がちょっと多めですが、この三つ以外はあまり使わないかと思います。
  4. Next>>」ボタンをクリック。ここで画面が変わります。
  5. Summary フィールドに、概要を書きます。どう書けばいいか悩むという人は、「Unexpected compilation error」とか「Strange behavior」とか適当に書いてしまいましょう。もちろん具体的に書くにこしたことはないのですが、必要に迫られれば誰か(おそらく担当者)が直すでしょう。(^^;
  6. Component/s プルダウンメニューから、「Unknown」「コンパイラ」「デモ」など今回登録する対象のコンポーネントを九択。選択肢は多いですが、ここはそれほど悩まないと思います。
  7. Affects Version/s プルダウンメニューでは、対象バージョンを選択します。今なら「1.0」を選ぶことが多いでしょう。
  8. Description フィールドには、登録したい事柄の詳細を書きます。英語で説明を書くのが面倒という場合、言いたいことを代弁してくれそうなJavaFXスクリプトのプログラムや画像ファイルを二つ下のAttachmentフィールドで添付できれば、だいぶ楽できます。私も、英語での説明に自信がない時にはよくやります。;-)
  9. Environment フィールドには、実行環境の概要を書きます。
  10. Attachment フィールドには、このレポートに添付したいファイルを指定します。
  11. Create」ボタンをクリック。
で完了です。登録が済むと、メールが送られてきます。

Javaの方だとあまりにも必須入力項目が多くて結構大変な時があるのですが、javafx-jiraはシンプルでいいです。ハードコピーなしでも大丈夫そうなので、あえて文字だけで説明してみました。


Javaのバグはsun.com上のバグデータベースで管理されていますが、JavaFXでは別のサイト(javafx-jira)を使っています。
今、JavaFXの次バージョンに向けての作業をやっていますので、「1.0のバグで困っている」「こういう機能拡張をしてほしい」などご意見ご要望をお持ちの方は、ぜひ登録お願いします。
 

javafx-jiraを使うには、最初にユーザ登録が必要です。トップページ
    Not a member? Signup for an account.
Signup(またはこちら)をクリックしてください。


 

次の画面で、各フィールドに「javafx-jira内でのユーザ名」「パスワード(2回)」「フルネーム」「メールアドレス」を入力してください。登録したメールアドレスに「件名:[JIRA] Account signup」のメールが届けば、ユーザ登録は無事完了です。


 

ところで、JIRAは「ジラ」と読みます。つい「ジャイラ」と言ってしまうんですけど。

※ NetBeans用のJavaFXプラグインのバグは、NetBeansのバグデータベースで管理されています。ちょっと複雑です。


土曜日 12 06, 2008

技術評論社の連載記事「ついにベールを脱いだJavaFX」の第2回が公開されました。
 
  第2回 JavaFXで作る初めてのアプリケーション
 


金曜日 12 05, 2008

This bug was found in Japanese locale, but it looks applicable to other locales.
  http://www.netbeans.org/issues/show_bug.cgi?id=154303

If you are developing a JavaFX program using NetBeans 6.5 and JavaFX plugins in non-English locale, non-English text messages which are embedded in your JavaFX program may be garbled. That is because your platform's default encoding (MS932 on Japanese Windows) is used by JavaFX compiler, while NetBeans' default encoding (UTF-8) is used to save your JavaFX program.

You can solve this problem by changing the value of source.encoding in project.properties and saving your file using the new encoding.

  Example:
    On Japanese Windows:
      source.encoding=windows-31j
 

Notes:

  1. This is merely a workaround. Next JavaFX release will solve this problem in a different way.
  2. This entry was originally written by Yuichi Sakuraba in Japanese. I'm responsible only for translation. If you find something incorrect, please let us know.


どうもこんにちは。このブログを更新しなくなって久しい神谷です。相変わらずJava SEとJavaFXの開発をやっています。

Sun Tech Days 2008では、何人もの方から「ブログどうしちゃったの?」と質問されました。(覚えてくださっていて、どうもありがとうございます。(^^; )更新しないどころか実は古いエントリーの“処分”までしちゃったのですが、JavaFX 1.0の紹介のため、暫定的にブログを復活させました。最近はごみネタを書く場所を別に持っているので、ここには真面目なことしか書かないと思います。(それって「ここはろくに更新されないと思います」とほぼイコールかも。(^^;; )
 

昨日、SunはJavaFX 1.0の正式版をリリースしました。さぁどうか使ってやってくださいっ!!と書きたいところなのですが、

  • 公式な日本語情報が今は皆無 (翻訳の公開までまだちょっと時間が・・・。)
  • 日本語関係のバグが・・・。

などいろいろありまして、JavaFXについて日本語で情報を提供したり、使ってくださっている方の意見を聞いたりできる場所が必要だと思ったのでした。
 

そういえば、さっき、技術評論社のサイトに
 
  ついにベールを脱いだJavaFX  第1回 JavaFXの概要と基本
 
という記事が載りました。執筆者は、“Java in the Box”の櫻庭さんです。
第1回では、JavaFXの歴史や特徴について書かれています。第2回からはいよいよプログラミング編だとか。いったい何回まであるのか(まだ)聞いていませんが、JavaFXを使ってくださる皆様にとって有益な情報がたくさん提供されるよう願っています。
 

おっと、今、上述の日本語バグの回避策が櫻庭さんの個人ブログで紹介されましたっ! これはNetBeansでJavaFX 1.0のプログラムを書く方にはほぼ間違いなく重要な情報です。ぜひご参照ください:
 
  Everyday JavaFX: NetBeans の JavaFX Plugin の文字化けのバグ
 

ところで、私はリリース前から社内で英語ドキュメントをチェックしていたのですが、その時、「この情報を日本語ですぐに出せないのは残念!」と思ったことがいくつもありました。そのうちのひとつが、すでにインストールされているNetBeans 6.5へのJavaFXプラグインのインストールです。JavaFX 1.0のダウンロードページから“NetBeans IDE 6.5 for JavaFX 1.0”というのがダウンロードできるのですが、NetBeansが英語版なのでなにかと不便です。
私が予想してた通り :-) 片貝さんがこれについて日本語で書いてくださいました。記事公開の早さだけは、予想が外れました。予想よりずっと早かったです。こちらもどうぞご参照ください:
 
  NetBeans IDE 6.5 用 JavaFX プラグイン公開
 

使っていただくと分かるのですが、JavaFX 1.0正式リリース版はインタプリタ版やプレビュー版とはだいぶ違っています。「昔はあったのに正式リリース版にはない」ものが少なからずあります。
JavaFXは、これからまだまだ成長していくものです。温かく見守っていただければと思います。