- - PR -
JDK7でクロージャを導入するらしい
1
投票結果総投票数:70 | |||
---|---|---|---|
イラネ | 13票 | 18.57% | |
微妙 | 22票 | 31.43% | |
わくわく | 10票 | 14.29% | |
クロージャって何? | 25票 | 35.71% | |
|
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-08-25 03:28
たまには雑談ネタですいませんが・・・
http://journal.mycom.co.jp/articles/2006/08/23/java7closuer/ ついにJavaにもクロージャが導入されるのでは?と話題になっています。 XMLリテラルも導入するらしいですし、JDK5での言語拡張も合わせて、 どんどん昔のJavaとはかけ離れていきますね。 また勉強かぁ・・・ 皆さんは、クロージャの導入についてどう思っているのでしょう? | ||||
|
投稿日時: 2006-08-25 13:00
おっ!良いですねー、クロージャ。Rubyとかの余波を受けて
期が熟しての提案というのも面白いですね。関数ポインタな んて言う、私にとっては懐かしいワードも久々に出てきた出てきた。 匿名クラスとかstaticで作ったユーティリティメソッド 毎に定義できるといった理解でいいのではないでしょうかね。 でも、第三者が保守する可能性の高いお仕事系の現場では、 しっかり使って良いという風になるに、相当時間が掛かり そうですけどね。読み下す人と説明する人の言語仕様の 理解度が今よりも高くないといけなくなっちゃうでしょうからね。 | ||||
|
投稿日時: 2006-08-25 13:29
Cではコールバックが当然だったし、JavaScriptでも便利に使っていますが、どうも「Javaに…」と聞いて、違和感を感じてしまっています。
根本的に「Javaはシンプル」と思っているからでしょうかね。 sort()にクラスまるごと渡したりするのは、確かにアレだとは思っていたけど。 | ||||
|
投稿日時: 2006-08-25 17:17
私も同じ感想です。 Closure的な書き方ができると便利なのに…。って思うこともありますが、 最近のJavaは言語拡張の頻発でシンプルさを失いかけている気もします。 なので、「微妙」に投票しておきました。 ところで、ローカル関数を使う場合のスタックフレームはどうなるのでしょう? 匿名クラスの場合は、外側のローカル変数へのアクセスをfinalなものに 限定することで中途半端に逃げてましたが。やっぱり同じなんですかね? | ||||
|
投稿日時: 2006-08-25 18:38
いちいち匿名クラスでコールバックされるよりかは、
クロージャでやりたいと思うことも多々ありましたが、 結局は匿名クラスでいいんじゃないかと思います。 どういう実装なんでしょうか。 逆コンパイルの結果が楽しみです。 ところで、エスケープ解析がJDK6から登場しますが、 クロージャの導入によってエスケープ解析が難しくなりそうですが、 この辺もどういう実装になるか楽しみです。 |
1