- PR -

Javaと.NETの生産性

投稿者投稿内容
猫山みやお
大ベテラン
会議室デビュー日: 2004/09/09
投稿数: 119
投稿日時: 2005-12-02 22:27
引用:

頭が良いならJava
馬鹿なら.NET
をお勧めする



う〜ん、言い得て妙ですね
.NETを担当させられている私には反論できませんw


かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2005-12-02 22:49
引用:

 言語的には、プロパティやデリゲート、イベントなどが、私としては使いやすいです。オブジェクト指向的に汚い、と嫌う人もいますが。Java は C++ の後発なのに、Borland が C++ に実装した __property の仕組みは、未だに取り入れられていません(Struts だよね?限定的にプロパティが使えるのは?)。



Strutsの場合、Beanのリフレクション操作とMapの操作をごっちゃにして、
それらをすべてBeanと名づけているだけです。
プロパティとは言えません。

しかし、VB.NETとかC#のプロパティをJavaでも実装して欲しいです。
getter/setterメソッドが正しく実装されていると
言語レベルで保障されているわけではないので、
完全なプロパティとして使用できないですね。

ひら
ぬし
会議室デビュー日: 2005/03/04
投稿数: 260
投稿日時: 2005-12-03 23:18
すみません、勝手にwebアプリケーションと思いこんでいました。
対象となる実行環境も色々ですね。

webアプリでは前述の通りですが、デスクトップアプリでは
Windows限定という条件があるものの、.NETのほうが上になります。
VisualEditorでデスクトップアプリを作ったことがありますが、どうも
「もっさり感」が抜けきれないところがあります。作成したJavaアプリを
起動する時間もかかります(一度起動してしまえば、それなりの早さで
動作しますけど)。一番苦労したのはJTableです。カスタマイズしやすい
ことは本当ですし、MVCによる分離を行っていろことも理にかなって
いるのですが、なにせデフォルトでできることが少なすぎです。

しかし、.NETもCLRという中間言語を介在させる形式のため、どうしても
実行時にそれなりの重さを伴います。VB6がデスクトップアプリの最高の
開発/実行環境だと思うのですが・・・。

Webブラウザに依存する型のリッチクライアントでは、Javaは「アプレット」
を埋め込むことが可能ですが、.NETでの実行形態はみたことがありません。
たぶんActiveXで作成するのでしょうが・・・。
もっとも、アプレットも起動に時間がかかりますので、実際にはFLASHやAJAX
が良く使われ、アプレットの使用頻度は少ないです。

ブラウザ非依存型のリッチクライアントは、JavaはおそらくJWSになるのでしょうが
これもSwingを引き継いでいますので、どうしても「もっさり感」を抜けきること
ができません。.NETも、デスクトップアプリ同様に、必ずしも最高の選択とは
言えません。

携帯電話用アプリは、日本ではJavaとBREWしかないので、これはJavaを使わざるを
得ませんね。

ひら
ぬし
会議室デビュー日: 2005/03/04
投稿数: 260
投稿日時: 2005-12-03 23:35
生産性に影響する事項のひとつに、サポート体制もあげられます。

Javaの場合、情報が豊富で、とりあえずネットを漁れば出てきます。
これなら特にSunや開発ツールベンダー(BEAなど)とのサポート契約も
いらないのでは?と思えてくるほどです。

.NETの場合は、まだ歴史が浅いせいか、Javaほど多くの情報は出回って
いません。Microsoftでもサポート窓口はありますが、製品の安さとは
裏腹にとても高いです。

Javaの場合、不明点があった場合、よく調べるとそれは自分の理解不足
ということがわかります。

しかし、.NET(ASP.NETとC#ですが)の場合、「どう考えたらそういうことに
なるのかわからない」ということが多々あります。一回ビルドかけただけでは
エラーになり、二回かけると正常動作するなど…。このような場合、
他の方々はどのように対処されているのでしょうか?

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