@IT に WidgetFX の記事を書かせて頂きました

JavaFXでデスクトップを遊ぶ「WidgetFX」


WidgetFXJavaFX Script で開発されたデスクトップ・ウィジェット・プラットフォームです。
今回は前編として WidgetFX の紹介が主になっています。
後編ではサンプルプログラムを使ってウィジェットの作り方をご紹介します。
どうぞお楽しみに。

JJUG CCC 2009 Fall の上原さんの発表資料

JJUG CCC 2009 Fall での上原さんのセッション「Groovyの現在、そしてその未来〜明日から使えるJava開発者のスキルアップとして〜」
の発表資料がアップされていました。僕は仕事で参加できなかったので、資料だけでも見れてラッキー。


JJUG 2009 Fall発表資料「変容する言語Groovy」 - uehaj's blog


その中のインスタンスごとのメタクラスをちょっと試してみたのですが、メタクラスに対して何かしらの変更がされたタイミングで、インスタンスごとに個別のメタクラスが割り当てられるみたいです。

println "".metaClass
println "a".metaClass

"".metaClass.exec = { println "This is empty"}
"a".metaClass.exec = { println "This is character 'a'"}

"".exec()
"a".exec()

println "".metaClass
println "a".metaClass

こんなスクリプトを実行すると

org.codehaus.groovy.runtime.HandleMetaClass@1ec41c0[groovy.lang.MetaClassImpl@1ec41c0[class java.lang.String]]
org.codehaus.groovy.runtime.HandleMetaClass@1ec41c0[groovy.lang.MetaClassImpl@1ec41c0[class java.lang.String]]
This is empty
This is character 'a'
org.codehaus.groovy.runtime.HandleMetaClass@19f76a5[groovy.lang.ExpandoMetaClass@19f76a5[class java.lang.String]]
org.codehaus.groovy.runtime.HandleMetaClass@266b44[groovy.lang.ExpandoMetaClass@266b44[class java.lang.String]]
こんな結果が出力されます。
パフォーマンスに配慮しつつ、望むとあらば動的にインスタンスを変更できるということですね。


序盤は Groovy の特徴・性格的な話で、中盤から終盤にかけてはアレなプログラマーが惹かれるであろう Groovy の新しい漲るパワーが紹介されています。

「80%の領域をカバーする言語」について思ふこと

あらゆることに使える完璧な言語(the one true language)が存在しないことは明らかである。

たとえば、Rubyがどんなにすばらしい言語でも、Ruby自身はRubyでは記述されていない。 また、OSなどRubyで記述するには向かない分野はいくらでもある。 そもそもRubyが向かないプログラマーもいるようだが、その点には今回は触れない。

しかし、100%を考えるから、完璧な言語は存在しないわけだが、 仮に80:20則にしたがって「80%の領域をカバーする言語」について 考えると、そのような言語はどのような性質を持つのが望ましいだろうか。

「80%の領域をカバーする言語」として一番近いのはやはり現在のところ Java だと思う。
「the 0.8 true languageはなんらかの形で内部DSLを支援するべきだと思う」という Matz さんの定義にはまらないけど、その役目にもってこいの Groovy とはとても親和性が高い。因みに特定目的言語(DSL)の JavaFX とも馴染みやすい。

ところで最後の方で述べられているけど Ruby の並列処理は(いつ?)改善されるのだろうか。ロードマップとか全然見てないけれど。


そう言えば最近こんなの読んだ。
http://dl.getdropbox.com/u/132573/groovy_scala/index.html
Scala と Groovy は比較されることが多いけど、比べてもそんなのあまり意味が無い。両者が向いている領域はそれぞれ異なっている。この話は両者を混在して使うことについても言及している。


と、ネタ切れの苦し紛れの感もやや。。。

「Java並行処理プログラミング ―その「基盤」と「最新API」を究める― 」復刊の日は近いか

Java プログラマ 必読の本「Java並行処理プログラミング ―その「基盤」と「最新API」を究める―」の復刊の交渉が開始された模様です。

http://blog.book-ing.co.jp/fukkanrepo/2009/09/post-76fd.html

いやいや嬉しいです。けれどまだ復刊が決まった訳ではないので、一日も早い復刊を望んでおります。
プログラマとしての成長を目指される方は、是非以下のページから一緒に一票を投じてくださいな。

http://www.fukkan.com/fk/VoteDetail?no=46255&tr=b

Java並行処理プログラミング ―その「基盤」と「最新API」を究める―

Java並行処理プログラミング ―その「基盤」と「最新API」を究める―

ウィジェット・ライブラリにウィジェットが急増

前回のエントリから一ヶ月が経過。
ずーっとさぼってました。
先月までコンテストが行われていたこともあって WidgetFXウィジェット・ライブラリに、ウィジェットが大分増えてます。
お試しあれ。

http://widgetfx.org/portal/library

WidgetFX の NetBeans 6.7.1 用プラグインを作ってくれたそうです

すごーい。これは嬉しい。


http://blogs.sun.com/katakai/entry/widgetfx_plugin_for_netbeans


さすが id:masakikatakai さん。
ありがたく使わせていただきます。(もちろん自己責任において)