- PR -

Javaにイベントとプロパティは必要なんですか?

1
投票結果総投票数:16
必要 11 68.75%
不要 5 31.25%
  • 投票は恣意的に行われます。統計的な調査と異なり、投票データの正確性や標本の代表性は保証されません。
  • 投票結果の正当性や公平性について、@ITは一切保証も関与もいたしません。
投稿者投稿内容
MUSE
常連さん
会議室デビュー日: 2003/04/06
投稿数: 42
投稿日時: 2006-12-23 11:19
Javaには言語機能としてイベントとプロパティがありません。
しかし、JavaBeansにはイベントとプロパティがあります。
Javaにイベントとプロパティは必要なんですか?
unibon
ぬし
会議室デビュー日: 2002/08/22
投稿数: 1532
お住まい・勤務地: 美人谷        良回答(20pt)
投稿日時: 2006-12-23 18:41
以下、言語仕様かどうかということではなく、また、Java に限ったわけではなく VB などを使っていても思うのですが、出来の悪いミドルウェアだと、メソッドとして備えなければならないようなものまでプロパティーになっていたりして、使う側としては混乱することもあります。ならば、いっそプロパティーという仕組みがないほうがいいなあ、と思うこともあります。ただ、そうするといわゆる「プロパティーウィンドウ」が作れなくなって、これはこれで困ります。

イベントは言語仕様としてはないほうがすっきりすると思います。ライブラリーの仕事だと思います。VB みたいに言語仕様の中にイベントがあると、ちょこっと書くには便利ですが、イベントの実装方法などもイマイチ不鮮明で、使っていて不安になります。

--
unibon {B73D0144-CD2A-11DA-8E06-0050DA15BC86}
nagise
ぬし
会議室デビュー日: 2006/05/19
投稿数: 1141
投稿日時: 2006-12-25 11:10
この設問ではイベントは必要だと思うけどプロパティは不要と考える人、
プロパティは必要だけどイベントは不要と考える人はどう投票するんでしょうかね?
と駄目だ出ししたところで・・・

プロパティに関してはJDK7で組み込まれる噂ですね。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=35595&forum=12&6

世の中の大概のものはメリットとデメリットが並存しますから、
バランスを見て必要/不要を判断する必要があります。
たとえ自分が不要と思っていても、実在するのであれば
それは違うシチュエーションではメリットが大きいのかもしれません。
逆もまた然り。
MUSE
常連さん
会議室デビュー日: 2003/04/06
投稿数: 42
投稿日時: 2007-01-03 18:13
unibon様

大変、貴重なご意見、ありがとうございます。

引用:

unibonさんの書き込み (2006-12-23 18:41) より:
以下、言語仕様かどうかということではなく、また、Java に限ったわけではなく VB などを使っていても思うのですが、出来の悪いミドルウェアだと、メソッドとして備えなければならないようなものまでプロパティーになっていたりして、使う側としては混乱することもあります。ならば、いっそプロパティーという仕組みがないほうがいいなあ、と思うこともあります。ただ、そうするといわゆる「プロパティーウィンドウ」が作れなくなって、これはこれで困ります。



それでは、どのようにすれば良いとお考えでしょうか?
「プロパティーウィンドウ」を作る為には・・・。
興味深いご意見です。詳しく教えていただけますか。

引用:

イベントは言語仕様としてはないほうがすっきりすると思います。ライブラリーの仕事だと思います。VB みたいに言語仕様の中にイベントがあると、ちょこっと書くには便利ですが、イベントの実装方法などもイマイチ不鮮明で、使っていて不安になります。



イベントがライブラリーの仕事というのは、具体的にはどのような意味なのでしょうか?
もう少し詳しく教えてください。大変、興味深い話です。
MUSE
常連さん
会議室デビュー日: 2003/04/06
投稿数: 42
投稿日時: 2007-01-03 18:16
イベントは必要だと思うけどプロパティは不要、プロパティは必要だけどイベントは
不要、と考える方は「不要」に投票してください。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-01-03 21:37
引用:

unibonさんの書き込み (2006-12-23 18:41) より:

以下、言語仕様かどうかということではなく、また、Java に限ったわけではなく VB などを使っていても思うのですが、出来の悪いミドルウェアだと、メソッドとして備えなければならないようなものまでプロパティーになっていたりして、使う側としては混乱することもあります。ならば、いっそプロパティーという仕組みがないほうがいいなあ、と思うこともあります。


それは、作成者のセンスの悪さに発端した問題ですよね...
しかし、気持ちは良くわかります。
(なので、センスの悪い方に、Custom Control だとかクラス ライブラリは絶対に任せてはならない...)

引用:

ただ、そうするといわゆる「プロパティーウィンドウ」が作れなくなって、これはこれで困ります。


プロパティ ウィンドウに列挙される項目は、別にプロパティでなくても良いですよね。
BeansProperty のようにルールさえ決めておけば、統合開発環境側で何とかできるわけで。
(まあ、プロパティもメソッドの亜種なので、言っている / やっていることは変わらないですが)

Java の良いところは、そのシンプルな美しい言語仕様にあると思いますので、微妙なところです。

ちなみに、J# では BeansProperty という Tag がサポートされましたが、
言語仕様としてプロパティをサポートしている言語からでないと、プロパティに見えないことになっています。

# コンパイラから構文チェックされなくても良いですが、せめて IDE くらいからはチェックして欲しい...

引用:

イベントは言語仕様としてはないほうがすっきりすると思います。ライブラリーの仕事だと思います。VB みたいに言語仕様の中にイベントがあると、ちょこっと書くには便利ですが、イベントの実装方法などもイマイチ不鮮明で、使っていて不安になります。


言語仕様の中にあると、(言語仕様を理解していても) 不鮮明になるのですか?
言語仕様の中になければ、(他人の作ったものでも) 大丈夫なのですか?
私は言語仕様さえ理解していれば、これは逆になると思います。

私も Java に関しては、言語仕様外でサポートして欲しいと思っています。
シンプルで美しい言語仕様を守って頂きたいです。

.NET CLR 系の言語は、Windows が (実質の) プラットフォームですから、今の汚らわしさで良いです。
といっても、すべての .NET CLR 言語がプロパティと、イベントをサポートしているわけではないですが。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
1

スキルアップ/キャリアアップ(JOB@IT)