1 :
デフォルトの名無しさん:
Javaマンセーな方には申し訳ないですが、僕にはどうしても
Javaが次世代の主力汎用言語になりうるとは思えません。
確かに言語仕様は先祖たるCやC++よりも洗練されているのは
理解できます。ですが、実用にたるプログラムの記述という
面でははなはだ実力不足と思えます。
Javaマンセー派・Javaだめぽ派それぞれの意見をお願いします。
私個人が考えるJavaの罪状要旨を以下のレスに列挙していきます。
2 :
デフォルトの名無しさん:03/04/09 23:56
・インタプリターでしか動かせない
これでは Basic といっしょです。システム記述言語としては
明らかに実力不足でしょう。個人的にも、ネイティブコンパイル
のできるJavaがあれば、非常に魅力的に感じます。
確かに当初の「write once, run every where」という思想は
なくなってしまうでしょう。しかしどっちみち現状ではこの崇高
な Java の理想は絵に描いたもちです。
「write once, debug every where」なんだから、そろそろまともな
コンパイラの処理系という方向性を模索しても良いのではないでしょ
うか。そうでなければ、いつまでたってもおもちゃです。
3 :
デフォルトの名無しさん:03/04/09 23:57
・サーバ系、携帯電話ではすでに地位が確立しているという意見
こんなものは言い訳です。COBOLだって汎用機では地位が確立してますし、
VBだって業務アプリ・ホビー分野では相当の支持を得ています。しかし
だれも「汎用」言語としては認めていないでしょう。
システム記述・コンパイラ・アプリケーション等々あらゆる分野の
プログラムを生成することが出来てこそ「汎用」言語足りうるはず。
特定分野で秀でているのは結構、しかしそれでCやC++の現在の地位を
取って代われるとは思えません。
昔はHotJavaなんてのもありましたが、いま、Javaマンセーのかたで、
「JavaでできたOSで」「Javaでできたブラウザ」で2ちゃんねるを
見てる方います?「Javaで書かれたエディタ・スプレッドシート・
メーラ」ですべて固めている方がおられます?
結局自分自身も記述できない言語では半人前です。
4 :
デフォルトの名無しさん:03/04/09 23:57
・やっぱり遅い
実行速度は昨今のPC環境もあってか、特に不満はありません。
しかし起動はやはり遅い。Oracle 9iのコンソールなんか、別に
Javaじゃなくてもいいものを、インストールも起動もなにもかも
犠牲になっている。普通にCやC++で書けばもっとパフォーマンスが
でるのになんでわざわざJavaにするのか。
5 :
デフォルトの名無しさん:03/04/09 23:57
6あたり?
6 :
デフォルトの名無しさん:03/04/09 23:57
・Pascalの方がましじゃないの?
カーニハンの有名なあれをそのままもじらせてもらいます。
この言語は不十分であるのに境界線が引かれているため、制約から
逃れることが出来ない。必要な時にローカルファイルを好きなように
アクセスできないし、「標準クラス」を定義するバーチャルマシンを
コントロールしない限り、欠陥のある実行環境を実用的な環境に交換
する手段も無い。この言語は閉じているのだ。
Javaをまともなプログラミングに使う人々はどうしようもない落し穴
にはまる。この言語は無能なので、拡張されなければならない。ところが
勝手にJavaを拡張すると、SunからJavaでは無いといわれ、以後処理系
のリリースもままならない。
Javaを何であれ当初の目的以外のものに使うのは間違いだと思う。純粋な
Javaはおもちゃ言語であり、教育用には適しているが実際のプログラミング
には不向きなのだ。
7 :
デフォルトの名無しさん:03/04/09 23:57
・最後に
確かに、現状使えるオブジェクト指向言語が、ひどくバロック調の、やたらと
約束事の多い C++ しかないことを考えれば(SmalltalkやEiffelなんてみんな
討ち死にですもんね)、言語仕様の綺麗な Java が注目されたのもわかる。
でも、じゃ、いったい何ができるの?といえば、特定の適用業務しか使えない。
こんな言語がなんでこんなに支持されるのか、理解できないんです。
「その通り」でもいいですし「おまえわかっていない。実は...」でも結構。
ご意見どうぞ。
恋愛板住人で場違いなんですが。
9 :
デフォルトの名無しさん:03/04/10 01:05
良スレage
1のオナニー?
11 :
デフォルトの名無しさん:03/04/10 01:09
食い込み アセ、C
うぇb Jawa
金融 KOBOL
おなにー ぃすp
______
/_ |
/. \ ̄ ̄ ̄ ̄|
/ / ― ― |
| / - - |
||| (5 > |
| | | ┏━┓| / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| | | | ┃─┃| < こんなサイトを見つけた
|| | | | \ ┃ ┃/ \ 正直、スマンカッタ
| || | |  ̄ \_________
http://saitama.gasuki.com/kensuke/
あぼーん
>JavaはC,C++の後継言語
っていう位置付けはどこから来たの?sunが言ってるのかな。
Javaの思想のひとつに「実行速度が遅くてもいいからプログラマのミスをできるかぎり言語側でカバーする」とかいう感じのやつがあるんだけど、そこが好きだな。
17 :
デフォルトの名無しさん:03/04/10 01:16
>>1 JavaがCやC++に取って代わる言語になることは無いだろう。
また、1つの言語が全ての用途に適用できるということもこれ
からはないだろう。
目的に合った言語を選択していけばいいだけの話だ。
昔は、選択肢が無かっただけである。
現実的に考えても、起動の遅いJavaでは一般のユーザが使うア
プリケーションには、たしかに不向きである。
しかし、一度起動してしまえば再起動はそれほど必要ないサー
バサイドでは十分使えるし、J2EEなどサーバサイド向けの仕組
みが用意されているという強みがCやC++などに比べたらある。
http://www.saitama.gasuki.com/kaorin/ こんなのございま−す♪
 ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
〜oノハヽo〜
,.-''"¨ ̄●`' ‐(^▽^)
(,,●i,,,i,,,,,,,,i,,,,●),,)⊂ )
) ( || |
( ^▽^) (_(__)
~~~~~  ̄ ̄ ~~~~~ ~~~~~
19 :
デフォルトの名無しさん:03/04/10 01:21
>確かに言語仕様は先祖たるCやC++よりも洗練されているのは
>理解できます。ですが、実用にたるプログラムの記述という
>面でははなはだ実力不足と思えます。
おいおい、ソースコードの記述能力は互角かそれ以上でしょう…
実行環境が現状ネイティブな実行ファイルの実行に比べて実力不足
という話なら同意してもいいが。
ただ、HotSpotVMは君が思っているような単純なインタプリタじゃないぞ。
実行時にJITコンパイラでネイティブコンパイルした後に、実行時情報を
集めながら実行速度が上がるように最適化をするという、笑っちゃうよ
うな機能がついている。どの程度有効なのかシランケド、うまく最適化すれ
ばネイティブな実行ファイルの実行速度を上回ることも可能、とい
うことだ。そして、幾つかのテストケースでそれを実証できたらしい。
(Sun自身の報告だから、眉唾かもしれんけどね)
Javaが死ぬほど遅いのは、画面描画関係。ただここもJREVer1.4になっ
てから激しく改善されつづけているから、あんまり気にならない程度に
なることは、期待できるでしょう。
最後はメモリ消費かな?コレばっかりはどうしようもないと思われ。
ヒープもスレッドスタックフレームも、物凄い贅沢な使いかたしてる
から。
JavaはOSごとに挙動が異なるという致命的欠陥があるからなあ
つーかJavaはインタプリタという認識からおかしい・・
どうせネタだし、削除依頼してくる。
>>16 後継言語云々はどこから、という話ではなく、Javaの適用範囲として
CやC++が現在占めている分野をカバーできるのか?という問いかけです。
「実行速度が遅くてもいいからプログラマのミスをできるかぎり言語側でカバーする」
これって、典型的なbondage-and-discipline languageですよね。
PascalやAdaなんかと同じで批判も多いっちゅうか。
僕もこういう思想はキライではないですが、教育用にとどまっちゃいますよね。
>>17 割りきれ、っちゅうことですかね。
プロ(システム開発者という意味での)が使う言語としては選択されるが、
個人の趣味のプログラムとしてはともかく、エンドユーザ向けの一般的な
アプリケーションを書くのには適さない、と。
しかし、これってCOBOLと似た境遇ではあるな。
COBOLは趣味の個人ベースでやってる人は変態っぽいですが。
Javaは正直メジャーになるのが早すぎたんだと
思うけどね。
1.4で描画が速くなったって言っても、昔のイメージが
強すぎて試そうと思えないっすよ。
1.02〜1.2までは使ったけど、「将来的〜」っという
うたい文句がずっと続いて正直萎えました。
>>19 ソースコードの記述能力云々は「言語仕様が洗練されている」と
同義と思いますが。なんか読み違いされてます?
HotSpotVMについての説明はありがとうございます。
しかし、実行時にコンパイルするのであれば、それは実行速度の速い
インタプリタにすぎず(良い悪いは別として)、たとえばOSやコンパイラ
を記述するなどといった分野では不利ですよね。
それに(SUNの主張をそのまま受け取るとして)、そこまですごい実行環境
であるにもかかわらず、
>>17の言うように一般向けアプリケーションで
Javaのキラーアプリが出てこないのはなぜなのでしょうか?
>>19さんの後半の論旨のように、今後改善され、いずれはそういうものも出てくる?
やはりサーバサイドにとどまる?
26 :
デフォルトの名無しさん:03/04/10 01:45
Javaは、完全な実行時リンクの仕組み(必要になる度に必要なクラス
ファイルをロードし、しかも実行時にコンパイルまでしやがる)なの
で、初期化の作業が遅い。でも初期化以降はそんな遅くないよ。
…つうか、藻前らは試してみた上で発言してるのか?
>>21 勘違い指摘・削除依頼も大いに結構、Welcomeってところですが、
私の意見のどの辺りに盲点があるのかご指摘していただけると
さらに嬉しいってとこですが。
>>26 >>4でも書いたとおり、起動時以外は私も問題は無いのではという
感想を持っています。むしろ「単体のプログラムを生成する能力」
「完成品としてのプログラムを生成する能力」が欠けるがゆえ、
どこか中途半端になっている印象がある、というのが私の論旨です。
29 :
デフォルトの名無しさん:03/04/10 01:50
>>25 JavaでOSを書くのは難しくないと思うぞ。VMの上でOSを書くことに
意味があるのかどうかわからんが。
あと、JavaのスレッドモデルはOSモドキを行うにはいい加減すぎる
ので、困るだろうな。
あと、今のJavaコンパイラはJava製です。
30 :
デフォルトの名無しさん:03/04/10 01:51
>>28 VMとアプリのライフタイムを一緒にすると、初期化で困るわな。
VMをデーモンのように一個あげておいて、プラグインみたいに機能を
呼び出す仕組みにすると、初期化のハンデを解決できると思うぞ。
Eclipseなんかがいい例ではないかな。
>>24 あと、SUNの調整能力というか、統率力のなさも指摘されてますよね。
言語仕様には口をはさむが、実行環境・処理系の提供が遅いというか。
SUNの調整能力とJava自体の能力とは無関係といえば無関係ですが、
CやC++(あるいはUnix)みたいにある程度醸成されるまでは自由に
拡張されて、「これでは良くない方向に拡散する」という一歩手前で
標準化される、という流れであればもっと違う発展もあったかもしれ
ないなあ。
32 :
デフォルトの名無しさん:03/04/10 01:57
>>31 オイオイ…
VMは誰が作ってもいいんだよ。
あと、処理系ってのはコンパイラのこと?
IBMがなかなかイイの出してるよ。両方とも。
つーかSunが関わってる時点でもうだめぽ
>>29 「VM上で動くOSを作ることに意味があるのか」これがまさにJavaの抱える
弱点かと。素のネイティブコンパイラがあれば、もっと魅力的な言語に
なると思うんですが。
>>あと、今のJavaコンパイラはJava製です。
ご指摘サンクスです。
Javaに関してはこんな程度の知識なので、思い違い・認識違いも多いと思います。
しかし、Java製なのに、SDKはOSごとの提供なんですね。
何だかなあ。もう少し調べてから書いてくれ。
>>34 ランタイムがOSごとの仕組みの違いを吸収しなきゃならんからね。
JDKはランタイムを含んでますの。
>>32 そりゃそうですが、最新の環境はSUNがまず発信でしょう。
実際、やっと使える形になった1.2の提供まではかなり
時間がかかってましたし。
やはり良スレだったようだな
>>35 そういわれると申し訳ないです。
Java信者を増やすつもりでご指摘・教授していただければありがたい。
とはいえ、今のところ、ネイティブな実行ファイルを生成できないデメリット
以上のメリットが見出せない、そして、僕が一番つっかえているのがこの点
なんですが。
>>37 JRE1.4RIは、最早Sunだけで作ってるんじゃなかったよ。
>>39 バイトコードをサーバに置いといて、クライアントのOSに関係なく
バイトコードをコンパイラナシでダウンロード即実行できます。
だからなんだ、そんなのスクリプトと一緒じゃん、という反論が
あるかもしれませんが、バイトコードはすでにJavaコンパイラの
チェックを受けている+バイトコードのVM上の実行には、
VMがもつセキュリティチェック機構の洗礼があるので、わけわからん
スクリプトをダウンロード実行するより、ずっと安全です。
バイトコードであるクラスファイルの書庫がデジタル署名されて
いて、クライアントがその署名に承認しないと、ダウンロードした
クライアントのローカル環境へのアクセスが禁止されたりします。
勝手にファイル消したりバックドア仕込んだりは出来ません。
便利でしょ。
42 :
デフォルトの名無しさん:03/04/10 02:56
こりゃまた痛い
>>1がきたもんだなぁ。
痛すぎてマジレスする気にもならん。
>>1 気づくのが4年遅かったようだね明智君
みんなそんなことは知ってる
でも使う
なぜか
そこに金が流れているから
遅いのが嫌ならwindows使うなや
45 :
デフォルトの名無しさん:03/04/10 03:07
42 名前:デフォルトの名無しさん 投稿日:03/04/10 02:56
こりゃまた痛い
>>1がきたもんだなぁ。
痛すぎてマジレスする気にもならん。
おおむね間違ってないじゃん。
AOTコンパイラなら、GCJとか商用ベンダの奴とかありますが。
「OSが書けない」なんてねぇ…
大昔のJava死滅スレの煽り文句じゃあるまいし…
C++、Java、C#天下三分
どらかひとつの言語がすべての範囲をカバーする時代は終わった。
だいたい、一つの言語ですべてをまかなえないと駄目みたいな
発想自身が旧石器時代の考えだね。
油絵を水彩絵の具で描く馬鹿はいない。
ところでいつJavaを「汎用」言語としてSUNはセールスしたっけ?
>>1 俺は「マルチプラットホーム」「セキュリティ」のセールス文句しか
しらないけどね。
馬鹿->C++、Java、C#天下三分
普通の人->C++、C、C#天下三分
52 :
デフォルトの名無しさん:03/04/10 12:31
少なくともJavaのUIは糞だな.。
PerlやPHPでOSが書けないからってクソ扱いする奴はいないし、
CやC++でWebアプリ書く奴も(あんまり)いない。
世の中適材適所なんだよ。
Javaが得意なのは上位層の中〜大規模なソフトウェア。
組込み系は物にもよるけど、動画、静止画、音声処理の
要求が多くなってきたから、Javaは使う気になりません。
そういえば、MEのfloatサポートって今はどうなんだろうか?
55 :
デフォルトの名無しさん:03/04/10 13:15
結局のところ「汎用言語」の意味する所が問題なのか?
Javaはそもそもシステム記述言語ではない。OSやドライバは作れないのが当然だ。
→じゃあ汎用言語じゃないね。
→そういったシステムに近い部分はC言語の領域だ。
→システムも記述できなきゃ汎用言語じゃない。
→それは昔のC言語とアセンブラの関係と同じだ。アセンブラでないと書けないことが
あるからといってC言語が汎用言語でないとは言わないだろ?
→それならC言語は汎用言語と認めてやるよ。でもJavaは認めんぞ。
Javaはデスクトップアプリが作れる
→GUIの遅さや起動の遅さが致命的だ。実用性がない。
→オレにとっては実用的だ。
→それはオマエの感覚が麻痺してるのさ。一般ユーザーが耐えられないのなら
実用性がないのと同じだ。
→でもオレにとっては実用的だ。。。
Javaは美しいオブジェクト指向言語だ
→だからどうした? オマエの趣味には付き合ってられない。
→プログラミング言語は言語仕様が洗練されている方がいいに決まってるだろ?
→じゃあ、教育用、研究用の言語だね。汎用言語とは呼ばないよ。
→だからJavaはオブジェクト指向だから。。。オブジェクト指向だから。。。
Javaの強みはサーバサイドにある。
→それなら汎用言語ではない、と認めたのか?
→いやJavaでもOSを書けるし、デスクトップアプリも書けるし。。。
→実用性がないじゃん。オマエは高木浩光か? 無理してないか?
ループだね。。。。
後継というより棲み分けだね。
>>55 ひろみちゅと喧嘩して負けたのが余程悔しかったんだね…
>>50 汎用とは言ってないですね。あらゆるプラットフォーム
でっとは言ってが(もう忘れた)
でも、Sunは Java vs .net の方向で行こうとしている
訳だから、ドライバとかは置いておくとしても、クライ
アントサイドもある程度使い物にならないと辛いんじゃ
ない?
クライアントサイドのJavaがダメなのは、Javaが悪いと言うより、
Swingが悪い。
特に初期のSwingは確かに使い物にならなかった。
言語仕様だけ見れば、Javaはクライアントアプリケーションくらい
楽々こなせるよ。
解決策は「SWT使え」
そういやJavaOSとかJavaChipなんてネタもあったな。
ネタで終わったけど。
なんでもかんでも1つでやりたいならアセンブラでも
使えばいい。何でもできるぞ(w
労力さえいとわなければな。
1です。
だいたいの世間の評価(というか2chの評価)はわかりました。
・そもそも現在は適材適所で言語を選ぶのが吉。
・Javaはデスクトップアプリケーションには向いていないのは確か。
・とはいえ、サーバサイドでは構築のしやすさから主流たりうる。
・そもそも汎用言語じゃない。
納得できることもあったし、勉強にもなりました。
あとは名無しに戻ります。
ききたいことがあるとすれば、みなさんはJavaを(仕事以外で)なにに
使っておられるのでしょうか。
>>2 実行時にJITでコンパイルした方が高速になるという研究成果もしらないで何を言うか
JETという、exeに変換できるコンパイラを知らんのかね?
>>3 >結局自分自身も記述できない言語では半人前です。
意味不明
>>4 長時間にわたる開発、再利用性を高めた開発効率を持つJavaは設計思想がC/C++とは違うのだよ。
>>6 その意見、古い。署名すればローカルファイルにアクセスできるぞお前。
Appletの三度ボックスモデルと何か近藤してないか。
土台部分の拡張はJCP(JavaCommunityProcess)でやってることも知らんでおいて。
その意見はJCPがでる以前の話だなこりゃ。
>>25 すでにキラーアプリはでてるだろううが。
サーバサイドという分野そのものがまさしくキラーアプリだ。
将来、サーバとクライアントとの区別がつかなくなればサーバにとどまるという言葉も
変になるだろう。
>>55 Jiniによってドライバつくれるってよ
>>61 >そもそも汎用言語じゃない。
そもそも「汎用言語」だと何が良いのかわからん。
65 :
デフォルトの名無しさん:03/04/11 01:40
>>63 >将来、サーバとクライアントとの区別がつかなくなれば
っという言い方はもうやめて欲しい
>Jiniによってドライバつくれるってよ
おっ!それは初耳。
VMは特権モードで動くの?詳細キボンヌ
66 :
デフォルトの名無しさん:03/04/11 05:33
JavaをCやC++と比べてる時点で間違い。
あれはLISPを理解出来ない頭の悪い人の
ための言語です。
頭が良いから使うってだけじゃ、
使う理由がないのと同じなんだがねぇ。
ねぇ、煽り厨さん。
java=21性器のcobol
>>59 >特に初期のSwingは確かに使い物にならなかった。
今もそう。例として、JDK1.4上で動かすSun One Studio
が挙げられる。
>解決策は「SWT使え」
同意。
70 :
デフォルトの名無しさん:03/04/11 12:29
>>69 つまり
Swing=今でもある程度の規模になると軽快ではない
SWT=WinならMFC、Unix系ならQt、GTKを使用した時と大して速度は変わらん
っということで良いの?
Java(M$はJ#と呼んでいる)は、緻密・厳格なライブラリを持ったC言語
C++の拡張じゃなくCの拡張。C++とJavaが対等な比較対象
なんじゃ?
プラットフォームに依存しないアプリのプロトタイプ・仕様書作成の為
の言語であり、移植・保守の際に仕様書代わりにこの言語で書かれたソ
ースを読む。そういう使い方がベストで、携帯とかの小規模システム以
外は仮想マシン実装なんで重い、遅いで使いにくい。逆に言えばそうい
う実装を取るのは、プロトタイプ作業用の言語だということを示してい
るようなもの。
C++の場合は実装が重視されている感じ。Windowsの場合、ライブラリ
の複雑さに対してはC++仕様じゃとてもじゃないが対応していけないやから、
C++とJavaの中間のC#を実装用ソース記述言語とするみたいだが。
C++の特殊化だと思うぞ。
プロトタイプ用言語を目指しているのなら、もっと多機能していると思う。
(プロトタイプ用って銘打っているのってpythonぐらい?)
言語屋がC++を特殊化するとJavaになって、
コンパイラ屋がC++を特殊化するとC#になるってイメージを持ってたりする。
>>72 俺も近いけど、どちらかというと
理想主義者->Java
現実主義者->C#
って感じかな。
まぁ、理想主義者=言語屋に近い感じだけど、
言語として洗練してったらJavaだと思う。
structやWindows.Formsなど汚らしいけど使いやすい必要悪も入れたのがC#だと思う。
当時周りにまだ敵がいなかったJavaは理想を追求することができたけど、
後出しのC#は遠くの理想より目先の現実に目を向けざるを得なかったんだろうと思うよ。
別にJavaをC/C++の後継にする必然性はないでしょ。適材適所。
Javaって基本的にリッチなリソースがある環境下で使うものだし。
組み込みとかならCだし、パッケージソフトならC/C++だし。
ウニ板はperler、rubyist擬きが、しったかでプログラミングを語るので話にもならないっす
未だに<locale>すら付いてないような糞バージョンのコンパイラの方を、安定版とか称して使ってる連中に何言われてもね・・・
所詮、EmacsとかMozillaで日本語通れば、平気で「日本語通りますが何か?」とかほざくような連中だってことっす
Javaにしても
> SWT=WinならMFC、Unix系ならQt、GTKを使用した時と大して速度は変わらん
こういう↑バカがいなくならない限り、Java厨はいつまでもバカにされ続けるっす
ごちゃごちゃと能書きをたれる前に SWT製の2chブラウザでも作って、Del灰製の2chブラウザとどちらが軽快に動作するのか
ソ板辺りでアンケートしてもらいたいもんっす
Del灰製より明らかに速いという結果が出てから
> SWT=WinならMFC、Unix系ならQt、GTKを使用した時と大して速度は変わらん
こんな↑能書きをたれてくらさい
Java厨っていつも能書きと妄想ばかりだね(プ
ヤバくなったら適材適所で逃げ? 生きていて恥ずかしくないの?(ププ
>>76 前半はともかく後半は・・・
70は>っということで良いの?って聞いてるだけだし。
あぁゴメン。
俺はこのスレの1とは無関係だ。
79 :
24 & 70:03/04/11 16:08
>>76 > 未だに<locale>すら付いてないような糞バージョンのコンパイラ
Javaコンパイラはlocale対応してなかったか?
日本語っという所だけみると使いにくかったが。。
> > SWT=WinならMFC、Unix系ならQt、GTKを使用した時と大して速度は変わらん
>こういう↑バカがいなくならない限り、Java厨はいつまでもバカにされ続けるっす
>>24で言った理由により、実際にJava開発はやめているので
現状のJavaがどんなもんか、聞いただけだが?
Swingはマダマダだけど、SWTならOK!って言っているから
MFC、QT、GTK等の既存ライブラリと較べても、それほど
遜色ないのか?っと思って聞いたんだよ
> Del灰製より明らかに速いという結果が出てから
Del灰は16bit版の頃にやっただけです。
なので、現状はJavaより知らない(^^;
80 :
デフォルトの名無しさん:03/04/11 16:14
>>72-73 その割りにアンチC#の煽り文句が決まって「案件が無い」なんてやたら現実的なのはなぜだろう?
82 :
デフォルトの名無しさん:03/04/12 20:45
>>81 最近は、そこそこでてきました。実際に案件にくるのは
ある程度枯れてからっす。そこんとこよろしく
最近は、IBMがらみの仕事が増えてきた(これは会社に
もよるけど、全体的に)ので、自社製品固めが多いです。
そうなると仕事はJavaになりまつ。。。。
# N、F製のわけのわからんやつを押し付けられるより
# 万倍ましだが
あとは日本の会社の経営陣は言語にも口出しするから
ビジネス誌でJavaマンセーって記事が載ったのを
そのまま鵜呑みにしているからです。
上のなんか奇麗事を並べたやつが有利なので、Java
の案件がおおいの
83 :
デフォルトの名無しさん:03/04/12 21:02
84 :
プロの逝って良しの1 ◆MvRbZL6NeQ :03/04/12 23:44
Java使ってるうちにVCの組み方忘れた。
Cなら組めるんだが
↑結局OO要らないとかほざいているくせにJava使っててVC忘れたときたか、、、
「VCの組み方」だと、
>>84がVCの開発者みたいだな。
87 :
デフォルトの名無しさん:03/04/13 18:14
インタープリタ嫌い。
Cでいいじゃん。
Javaがいまだにインタプリタだと思ってるような輩は死んでください
エミュレータがインタプリタ呼ばわりされるインターネットはここですか?
VBや.NETモナー
ネイティブなのはDelphiだけ
中間コードを逐次実行するからインタプリタってのも乱暴な気がするが
>>92 >ネイティブなのはDelphiだけ
ワロタ
>>89 多くの実装において実行時にネイティブコードにコンパイルしてますが何か。
あるいは最初からネイティブコードにコンパイルすることもできますが何か。
なんつーか、文末に「何か」を付ける場合、一文だけにした方がいいと思うんだよね。
複数付けると無理矢理揃えてる感じがして、それが必死な感じのように思えてしまう。
あと、「何か」の後に続けてしまうと、せっかく煽ったのを冷静に戻してしまう。
96 :
デフォルトの名無しさん:03/04/14 00:46
へぇーマイクロコードに変換できちゃうんだ、はじめて知った。86でいうjavaがらみのdllってなんでしょうね?.classの中がまさかネイティブなコードになってるとか言わないでね
>>96 誰も言って無いのにマイクロコードと言い出す馬鹿は氏んでください。
> 86でいうjavaがらみのdllってなんでしょうね?
ぐはは。わけわかんね。
>>97 つか
>>96 は「マイクロコード」が何なのか、よく判っていないと見た。
非ネイティブコードを実行するのがインタプリタ?
その解釈は頭悪すぎ
101 :
デフォルトの名無しさん:03/04/14 10:14
Java厨必死だな(ワラワラ
別に仕組みはわかってるんだから、今更呼び方なんかうんこ
(Visual)C/C++の後継はC#だろ(一部領域除く)
JavaはCOBOLの後継、良かったな
>>103 食い扶持の無くなったダメCobolerがサーバサイドJavaに流れ込んでいるのは確かだけど
なんでJavaがCobolの後継って言われてるの?
>>71 > Java(M$はJ#と呼んでいる)は、
ハァ?
>>103 C/C++の後継がC#とは傲慢だな。
Javaの後継だろ(プ
>>87 > インタープリタ嫌い。
> Cでいいじゃん。
オブジェクト指向嫌いな奴がJavaから逃げてこういうことを言う
>>75 >別にJavaをC/C++の後継にする必然性はないでしょ。適材適所。
C#もな。
>>103にはこう説明してやれ
「別にC#をC/C++の後継にする必然性はないでしょ。適材適所。 」
>>73 > 俺も近いけど、どちらかというと
> 理想主義者->Java
> 現実主義者->C#
> structやWindows.Formsなど汚らしいけど使いやすい必要悪も入れたのがC#だと思う。
速度重視の世界ではそれが成り立つが、拡張性重視の世界ではそれ(理想-現実)が逆転する。
strutsは速度問題や、古い言語との互換性を保つためにあえて付けられたものであるという認識が
強いが。C#が現実主義だと言い張るのは古くからC/C++を使ってきてC/C++こそが最高の
言語であるという妄想を持っている者にたいしては説得力があるが、大規模プログラミングで
C/C++のstructの欠点を知ってしまった人にしてみれば、継承もできないものは現実的とは
誰も思わない。
> 当時周りにまだ敵がいなかったJavaは理想を追求することができたけど、
> 後出しのC#は遠くの理想より目先の現実に目を向けざるを得なかったんだろうと思うよ。
その目先の現実というものがどういうものをさしているかにもよるが。
長くプログラムを使うことを想定するならC#よりJavaのほうが現実的
JavaのAPIやフレームワークはC#のそれよりもしっかりしており洗練されている。
>>76 Javaを馬鹿にする前に
お前のようなDel厨使っているマシンのスペックと
お前のいう体感速度というものがどれくらいなのか説明してからにしろ。
J2SE1.4.2になってから速度も上昇し
使い方次第ではCの速度を超越するという結果も出ている。
お前こそ生きてて恥ずかしくないの?(プ
>>65 まずJiniについて調べてから出直して来い。
JDBCのドライバには100%PureJavaになっているものがあることも知らないのか
>>87 実行時にJETコンパイラが動き出してその場で中間コードをさらにコンパイルするわけだが。
それでもインタプリタと言い切るのかね
Javaは知らない間に高速化しているよ。
C++より速くなる事だってある。
>長くプログラムを使うことを想定するならC#よりJavaのほうが現実的
21世紀のCOBOLといわれる理由はこのあたり
>>112 俺はデバイスドライバをJavaで記述できるっていう話の
流れだと思ったから書きましたがなにか?
Jiniは概略しかしらんから聞きましたが何か?
JDBCのドライバ。。。ハァ
>>94>>111>>115 JavaがC/C++より優れていることは良くわかりました。
というわけで、Javaで最初っからネイティブコンパイルされたという
アプリケーションをなんか紹介してください。
VMとかもいらんのですよね。いるんならVB並ですもんね。
>>110 >strutsは速度問題や、古い言語との互換性を保つためにあえて付けられたものであるという認識が
なんでそうなるのかなー
structは値型を表現するためにある。速度なんてかえって遅くなる
>大規模プログラミングで C/C++のstructの欠点を知ってしまった人
いったい何が欠点なのか。よく知らないことを長文で書くもんじゃないよ
∧_∧
( ´∀`)<0x82ca, 0x82e9, 0x82db
最近の学校は、Java厨の先生が多いのか?
>>121 この前聞いた話じゃ未だにFortran教えてるらしいがね。
アフォかと。
>>119 structは遅くなる場合も速くなる場合もあるかと。
124 :
デフォルトの名無しさん:03/04/15 20:30
>>118 >JavaがC/C++より優れていることは良くわかりました
あなたが何も分かってないということがよく分かりました。
もう一度このスレを頭から舐めるように全部読んだ上で首吊ってください。さようなら。
125 :
デフォルトの名無しさん:03/04/15 21:02
Java自信はCで書いてるのかな?
UNIXやwindows系のOSターゲットなら
Cが一番てっとりばやいのでは?
>大規模プログラミングで C/C++のstructの欠点を知ってしまった人
C++ではclassもstructもさして変わらないという面白い事実
>>119が言ってるように、struct=値型オブジェクト、の欠点という意味だろう。
SunのJ2SDKがバイトコード以外にプラットフォームネイティブのバイナリも
吐くことができて、ランタイムもスタティックリンクしてくれたら便利なのにと
思うことは多いな。
JAVAはTOMCATと合わさって初めて動くのだ!
はぁ?
>>129 それだとかなりでかいサイズになりそうだ。
ネイティブコンパイラは期待はずれになると思われ
>>125 ソース互換ならCも結構なものでつ
面倒さけどね
Javaのバイナリ互換ってそんなに大事かね?
>>132 クライアントサイドは元々アプレットから始まったものだから。
相手が何かわからない以上、バイトコードで互換性を優先と
いうのは当然かと。
C でソース互換を意識したコードって
Javaの場合と同じかそれ以上に大きくなるんだよね…
#ifdef とかやってると特に。
>>134 そう?コマンドラインアプリならそれ程いらないと思うけど
# GUIは。。。。。
WinとUNIXとの互換だとPOSIX APIの部分がキツイ
NT系だとPOSIXのサブシステムが使えたと思うけど
やったことないから使えるか謎。。
Service for UNIXかCgywin使えればそれ程でもないん
ですけどね。。限定環境になっちゃう。
>>122 利用目的を知らないお前がアフォかと。
数値計算、科学技術計算ライブラリではFortranは未だにトップクラスなわけだが。
とある数値計算m科学技術計算では、CでもC++でもJavaでもFortranにはまだまだ勝てない。
137 :
デフォルトの名無しさん:03/04/17 02:19
>>136 目的があるのは強いね〜。
友人がFortranで流体力学の計算プログラム作って月収100万強。
おれCもC++もJavaもDBもいろいろやってるけど月収40万いかないyo。
>>136 適材適所ってのは同意
ちろっと質問なんだけど、Fortranって普通どのシステムで
使うもんなの?
スパコン?汎用?
漏れのイメージだとIBMのスパコン、汎用のイメージが
強いんだけど
後、最近(?)は科学技術計算とかは分散システムが主流だと
思うんですが、分散でも簡単にできるようになっているの?
>>137 激しくスレ違いだけど。。
サラリーマンですか?サラリーマンだったらショウガナイ
っと思われ
漏れはフリーだけど、40万はちゃんと職場探した方が
いいっと思われ。
>>138 Fortran用のライブラリを最新言語用に書き換えないことには
(^^)
143 :
デフォルトの名無しさん:03/04/17 19:04
ageage
電気はガソリンの代わりになるが、牛乳はガソリンにはなれない。
だから、javaもCにはなれない。
145 :
デフォルトの名無しさん:03/04/19 21:42
>>137 感触的にはFortranというより流体力学の計算という特殊技術が稼げているのだと感じるな。
今はもうプログラム技術じゃ稼げないからね、いかに安く作るかとみんな研究するものだから
一番手っ取り早いのは給料下げろになってしまってる、やってられんよ。
オブジェクト指向その他ソフト工学は勉強しても金にならなんです。
>>145 うちの会社は給料は絶対下げないと明言してくれました。ビバ。
>>144 そんな大きな違いじゃないよ。
せいぜい顕微鏡の視点、人間の視点、望遠鏡の視点くらいのもの。
顕微鏡の視点でなきゃできないことはたくさんある。
でも顕微鏡の視点で山ほど観測して必死に切り貼りして
人間や望遠鏡の視点の代わりにできるかもしれんがそりゃ大変すぎる。誰もやりたくない。
普通は人間の視点で十分だ。
でも人間個人の視点では誤った方向に進んでしまったり、
大きなシステムで協調が取れなかったりなどの問題もある。
望遠鏡の視点なら大きな範囲を大まかに観測できる。
でも細かな部分は見えない。
結局、コンピュータ主導ではなく人間様の目的主導で、
状況に合わせて人間様が必要十分を満たす言語を選べばいい、ただそんだけ。
望遠鏡が無限に性能がよく、いくら拡大しても詳細に観測できるなら・・・・・・
-> CPUの性能が無限にいいなら・・・・・・
の話は現実に不可能だしねぇ。
148 :
デフォルトの名無しさん:03/04/19 22:22
美人のねーちゃんが言いました。
「子供が欲しいんですがどうすればいいですか」
ASM人:
まず原子が結合して分子を・・・・・・
C人:
それではあなたから卵子をいただきまして、それを受精させて培養・・・・・・
Java人:
・・・・・・(突如ズボンを脱ぎだす)
149 :
デフォルトの名無しさん:03/04/19 22:23
JAVAのコンパイラー及びVMをCの代わりにJavaで書くことは
あり得ない。
そこにCの居場所がある。
Java人:
・・・・・・(突如ズボンを脱ぎだす)
しかしチンコの立ち上がりは遅っ
VMはともかくコンパイラはJavaでかけるだろ。普通に。
152 :
デフォルトの名無しさん:03/04/19 22:56
>>VMはともかくコンパイラはJavaでかけるだろ。普通に
実行速度遅すぎだろ。普通に。
つか、javac は Java で…
アンチjava厨はjavacがjavaで書かれていることを知らないアホばっかりだったとは!
>>156 じゃあJavacはいったい何でコンパイルしたの?
バイトコード直書き?
最近のCPUはCPUが設計しとるで〜ってのは有名な話ですなぁ。ところで・・・・・・
>>157 残念ながらあなたは何も理解してない厨です。理解するまで世間様に顔見せしないことをオススメします。
アンチjava軍団もあなたみたいな奴は受け入れないでしょう。
>>158 わざわざブーツストラップまでして低速なコンパイラ作る必要もないと思って。
>>148 これおもしれーな。
COBOL人:
「恋愛感情における子作りの意義というのはすなわち...」
と饒舌だが何いってんのかさっぱりわからず、やることも大したことがなく・・・
∧_∧
( ^^ )< ぬるぽ(^^)
∧_∧
( ^^ )< ぬるぽ(^^)
いーかげん、JDK の build に同じバージョンの JDK を必要とする
ってのどーにかならんのですかね?
>>148 Scheme人:、で考えようとしたら
近親相…しか思い浮かばなかった…鬱。
>>164 あるバージョンのJavaコンパイラソースを
同じバージョンのコンパイラでコンパイルしたいのか?
168 :
デフォルトの名無しさん:03/04/21 23:30
>160
>COBOL人:
>「恋愛感情における子作りの意義というのはすなわち...」
>と饒舌だが何いってんのかさっぱりわからず、やることも大したことがなく・・・
爆)
いるよいるよ、メインフレーム上がりの55歳!
団塊の世代よ、早く死ね!
>>160 SQL人:
美人「子供がほしいんですがどうすればいいですか?」
SQL人「INSERT INTO 社会
SELECT 美人.卵子 + SQL人.精子 AS 子供 FROM 美人,SQL人」
美人「ろ、ROWNUMの条件が抜けて……きゃあぁぁぁぁ〜」
SQL人「……ROLLBACK」
171 :
デフォルトの名無しさん:03/04/22 00:05
CREATEVIEW
・・・ハァハァ
BASIC人:
他人からは頭が悪い以外、何を言ってるのかさっぱりわからず、
もちろん美人のねーちゃんと結合することも出来ないが、
オナニーさせたら右に出るものはいない。
冴子先生ハァハァ
∧_∧
ピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。
=〔~∪ ̄ ̄〕
= ◎――◎ 山崎渉
AOTコンパイラなら、GCJとか商用ベンダの奴とかありますが。
__∧_∧_
|( ^^ )| <寝るぽ(^^)
|\⌒⌒⌒\
\ |⌒⌒⌒~| 山崎渉
~ ̄ ̄ ̄ ̄
__∧_∧_
|( ^^ )| <寝るぽ(^^)
|\⌒⌒⌒\
\ |⌒⌒⌒~| 山崎渉
~ ̄ ̄ ̄ ̄
(^^)
(⌒V⌒)
│ ^ ^ │<これからも僕を応援して下さいね(^^)。
⊂| |つ
(_)(_) 山崎パン
Javaは「汎用」言語にはなりません。
これは定説です。(あたりまえです。そのように設計されていません)
C++の後継ってのはあからさまに違うと思うが、
シェアの一部は奪うかもね。
以上。
183 :
デフォルトの名無しさん:03/11/16 19:53
>>182 Windowsアプリ開発用の似非C++が完全にJavaに食われるだけ。
本物のC++はJavaには何も奪われない。
IT業界にアージャイル開発とデザインパターンを広めよう!
C言語を使ってかなり苦労したので
その苦労を最小限におさえるために
アージャイル開発、デザインパターンを
多くのプログラマに使って欲しいと思うことがある。
一種の挨拶みたいなものだね。
「なるべく挨拶を心がけましょう。」
「なるべき綺麗な字で書きましょう。」
のように
デザインパターンを使うこと、アージャイル開発することが
プログラマの習慣、常識になってほしい。
なんとか、デザインパターン文化、アージャイル開発文化を押し広げられたら・・・。
IT業界の将来はオブジェクト指向とアージャイル開発が握っています!
>>183 > 本物のC++はJavaには何も奪われない。
∵本物の C++ はどこにも存在しない。
186 :
デフォルトの名無しさん:04/04/09 18:00
C++の機能的後継はD言語
主要プログラミング言語としての座はしっかりとC++からJavaに後継される。
187 :
デフォルトの名無しさん:04/04/09 18:01
C++はいつから主要プログラミング言語になったんだ?
事務なんかは知らんけど、
ベンチマーク取るようなソフトではC++が多い。
過去の資産を含めるとC++をCが圧倒するが、
最近はミドルウェアやライブラリの関係で
C++以外に選択肢がない状況もある。
JavaとC++は比較できない。
用途と実力を鑑みるとPerlが好敵手となるでしょう。
190 :
デフォルトの名無しさん:04/04/09 19:14
C++がPerlのライバルか
PerlでDirectX
Perlでスーパーπ
PerlでDirectXできるんですか!?
どうしても、JavaがPerl以下だと認められないようですね。
ここに在る現実をみつめてください。
そしてC++がJava以下であるという現実も
悟れません。
配列のアクセスだけでも5倍の性能を持つC++が
JVMにかなわないのは精神の問題ですか?
Perlまででてきてんのか?w
じゃもひとつ加えとけや、Ruby
>>197 相変わらずだよ。特定の条件下では改善されたようだけど。
そのネックとなるコード書いて比較してここにあげてみそ
200 :
デフォルトの名無しさん:04/04/17 02:12
200get
バブルソートの例ではCよりもJavaのほうが速いって例があったよな
速度の面から言えば、マシンに合わせてチューニングできる自由
を持つC/C++の方がどう考えても有利だろ。
javaに限らずだが中間言語系はvmが各CPUにあわせた最適化と
統計取っていく最適化方式で差はほとんど無い
統計取るCなどのネイティブ系の最適化は非常に協力なのだが
同じ環境で実行出来ない場合もあるし非現実的である
たとえばデータベースなんて日々の売り上げなんかでどんどん変わってくるよね
それに対応できるのが中間言語系で対応できないのがネイティブコード系
MSが中間言語への思い切った方針転換はhotspot技術が
現実的になることを知ってのことだし
実際のところ細かいCPUにあわせたVMはでてないけど、アプリはそのままで
自動的にSSE対応で最適化されて高速化されていたりするのを見ると
今はまだ速度的にやや弱いのがこれからもどんどん最適化されていくだろう
また、hotspotや並列GCなどはSMPなどのスループット系環境で効果が大きいね
マルチコア化が今後のトレンドになるだろうし、それらも後押しするかも
Cの土壌は高級アセンブラとして依然残るだろうがアプリレベルではjavaが
今後どうなるかは分からないが中間言語系になってくるのはまず間違いない
204 :
デフォルトの名無しさん:04/04/20 01:53
今ネット回ってJava調べてたんだけれども、Javaにはテンプレが無いってほんと?
これから作られるの?
>>204 Genericsで検索して、またおいで。
206 :
デフォルトの名無しさん:04/04/28 22:55
207 :
デフォルトの名無しさん:04/09/08 11:53
age
208 :
デフォルトの名無しさん:04/09/13 04:59:04
半年近くほったらかしのスレをいまさらあげるなボケ、氏ね
209 :
デフォルトの名無しさん:04/09/13 23:54:16
正直いって、JAVAの一番嫌いな点は、
ずばり、「識別子が長いこと」だ!!
isDisplayChangeSupportedなんて長い上に意味がわかりづらい
これからの時代、識別子はどんどん長くなるに違いない
Win32とかの時点で長いのはもうどうでもいいやというきになったよ
当時と違ってIDEで補完前提なのですべて打ち込むことないし
X68方面は短いのが多くてよかった・・・
結論:C#が後継でした。
>>215 メモリは確かに食うが、いつの時代のベンチひっぱりだしてるんだよ
よほどJavaに恨みがあるらしいな
今はほとんどの計算程度はネイティブとかわらん
217 :
デフォルトの名無しさん:04/09/20 11:59:39
218 :
いなむらきよし:04/09/20 13:28:43
キケー!
今のところ、携帯端末にJavaはソフト開発側からしたら明らかな失敗だったな。
容量問題がネックになり、クラス創れない。
これまた容量問題でfinal変数も宣言できず、
C言語などのマクロ展開プリプロセスを使用しないと開発にならない。
VMが機種間の差異を吸収できず、これまたプリプロセスが必要。
#define _MAX_VAR_INT 3
#define var1 var[0]
#define var2 var[1]
#define var3 var[2]
int var[] = new int[_MAX_VAR_INT];
こんなこともしたっけな。
>>219 new使うってことはC++だろ
namespace乱れるからマクロやめてenumで我慢しろ
221 :
デフォルトの名無しさん:04/09/20 16:46:38
>>219 > #define var1 var[0]
> #define var2 var[1]
> #define var3 var[2]
ゼロオリジンだと混乱する厨ですか
そういう厨はプログラマ向いてないから辞めていいですよ
ゼロオリジンに疑問を抱かないのはデジタルドカタ
>>223 1つめのURL。やっぱJava、遅いジャン・・・。
2つめのURL。げ!!
メモリ使用量が恐ろしいな・・・
D言語の普及と発展キボンヌ
ちなみにサーバーVMはたしかに早いが最適化が強いので
クラスロード時とか時間が結構かかる
クライアントのソフトはサーバーVMは実用的にならない場合も多いよ
そしてRCのJ2SE5はクライアントVMでもサーバーVMにだいぶ近い最適化しているっぽ
あきらかに1.4系より実行までの待ち時間は多少増加している
でもたしかに早いし、1.4のサーバーVMのようながたつきはすくない
あとアクセラレーションにOpenGL使ってるというらしいのだがこれは未チェック
とくにLinuxでおそらく恐ろしい速度改善されてると思う
>>220 Javaだって。
これをC/C++用のプリプロセッサで展開してから、javacかけるんだよ。
携帯でのアプリ開発では必須知識。
int a, b, c;
とかすると
int x[] = new int[3];
とするより、クラスファイルサイズがでかくなるからね。
でも実行時にはメモリ喰いそうだな
速度的にもインデックスや範囲チェックとかあるし
まぁ、サイズ画きついのは確かだが初期の携帯用を切り捨てれれば
かなりらくだけどなぁ
>>223 >
http://www.geocities.jp/toshio16369/column/021108a.html これ試してみました ※ gcc-3.3.2, java version "1.4.2"
$ make test
time ./021108a1 50000
メモリを取得しています。
初期値を代入しています。
並べ替えています。
終わりました。
3.14user 0.00system 0:03.14elapsed 98%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (202major+67minor)pagefaults 0swaps
time java Baburu 50000
メモリを取得しています。
初期値を代入しています。
並べ替えています。
終わりました。
10.31user 0.00system 0:10.36elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (1318major+640minor)pagefaults 0swaps
time java -server Baburu 50000
メモリを取得しています。
初期値を代入しています。
並べ替えています。
終わりました。
6.07user 0.02system 0:06.14elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (1662major+710minor)pagefaults 0swaps
231 :
デフォルトの名無しさん:04/09/21 00:24:16
Java厨がよく言うセリフ
「Javaは昔より速くなったんだぞ。昔のデータを持ち出して遅いと言うな」
しかし持ち出してくるベンチマーク情報は
古いgccを使って比較しているから滑稽
>>231 それいったらJavaは実行時最適化なもんだから実行時にオプションで調節しないとな
>>223のサイトのはgccは最適化オプションいれてるくせにJavaのほうは実行時になんの調節もしてないわけだが
OS:Windows PentiumM/1GHz mem768M
50000件
JavaClientVM 25秒
JavaServerVM 4秒
BCB 6秒
という結果になってたしかにCより早くて驚いた
Javaは1.4.2_03でBCBは5だけどBCB6になって高速化したと聞いてないのであまりかわらんかな
.NETとか古い1.3とか1.5RCとかDelphiとかいろいろ試してみるかのう
ちなみに同じ環境で
Java -Xint(インタプリタモード)
はさすがに150秒ですた・・・・
実時間
マシンスペックは同じ
J2SE1.3.1
ClientVM 26秒
ServerVM 12秒
インタプリタ 160秒
hotspot実装したのがこの1.3でちょうどJavaが業務系に使われ始めただけあって
演算系ならそれなりの速度だが、サーバーVMでは1.4系と大きな差がある模様
この-serverって、tomcatとかは普通にデフォルトで入ってる、ってことでいいのかなあ・・・?
今、catalina.batを開いてみたら、server=y、見たいなの以外は、とくに入ってなさそうだけど・・・。
これは違うよな・・・?
serverVMは標準JREには入っていないからデフォルトで入っているとは考えにくいな
SDKには入っていてServerVMは再配布可能なので自分でアプリ配布する場合は
JREの中に組み込んで配布するがよろし
Tomcat5で、管理ツール開いてみたら、Java VMのところのパスがこうなってた。
C:\j2sdk1.4.2_04\jre\bin\server\jvm.dll
これは多分使ってる、ってことでよさそうじゃない?
>serverVMは標準JREには入っていないからデフォルトで入っているとは考えにくいな
まじだね。Java\j2re\binの中見てみたら、clientしかなかった。知らなかったよ。
>>240 ということは環境判断してServerVM使うかどうかきめてるのかな
ServerVMって起動に嘘くさいほど時間かかるよな。
あと、嘘くさいほどメモリ喰うよな。
嘘じゃなくて本当だろ
最適化の度合いが強いってことは準備がかなり喰うのだ
それにしてもなんかガキっぽいしゃべりかただな
それにしてもじじくさいしゃべりかただな。
245 :
デフォルトの名無しさん:04/09/25 01:22:50
CはCの良さが、JavaはJavaの良さがある
ただ、マシンスペックに余裕が出てきたことで
開発効率や安全なコードといったところが重要視されていって
.netやJavaといったVM系が主流になっただけ
アセンブラからCへの流れと同じだな
全体が見渡しやすくなって保守性があがり、移植性もよくなったと
コピペに反応すんなよ
248 :
デフォルトの名無しさん:04/09/25 02:45:58
BASICの時代はあったけど、アセンブラの時代なんか一度も無かった。
>>248 Unixの特徴は移植性を高めるためCでOSを書いたところにあるんですよ。
それまではアセンブラ全盛でしたから。
>>246 アセンブラからCへの流れってのは、
「汎用性のあるコードが書ける」という
ファクタの方が大きかったんだけどな。
>>250 いや、格段に楽で保守性があがったわけなんだが。
Javaは関数オブジェクト使える?
そのまえに関数ベースって考えを何とかしろ
かんすうべえすぅ?
またアホの新語ですかー
ホワイトベースの仲間かな
>>252 リフレクション使えば似たような事はできるのでは
と知ったかぶってみるテスト
259 :
デフォルトの名無しさん:04/09/26 04:41:28
Javaってconst修飾ないんですか?
マクロもないな
少なくとも、C#よりはJavaのほうがいいよね?
微妙
263 :
デフォルトの名無しさん:04/10/01 16:04:54
javaはこの先実行速度が改善される見込みはあるの?
改善されてるじゃん
ポストCは難しいけど
これはこれで生き残るんだろう
>>1 Javaを知っていれば、C,C++の後継になれないことは自明。C,C++とは共存する言語。
これは、「なれる」と言うかどうかで理解度を問える踏み絵問題。
糸冬 了..._〆(゚▽゚*)
GC言語である以上は、メモリ管理のプログラムがかけないからねぇ。
JavaとC言語は補完しあう関係
そこにスクリプト言語Groovyも参加ですよ。
おまけにLythonですよ
GCはやくなってる・・・ガクブル
271 :
デフォルトの名無しさん:04/10/16 14:41:55
で、一体何時になったら
#ifdef
に類する仕組みを取り入れてくれますか?
当分無いと思われ。
Java使う人で どーしても必要ならプリプロセッサ使うか作るかしてるだろうし。
D言語とか見ても #ifdef みたいのは減ってく傾向にあるのではないかと。
ていうか、VM用にコンパイルしたら、元の言語がなんだろうが
一緒だと思うんだが。Javaにこだわる理由もない。
274 :
デフォルトの名無しさん:04/11/13 12:26:56
そこで.NETですよ。
275 :
デフォルトの名無しさん:04/11/22 16:02:12
>>219 携帯がJava採用したのは
お馬鹿PGにメモリ破壊させないためとか聞きましたが。
そこでBREWですよ
278 :
デフォルトの名無しさん:04/12/23 03:24:25
D言語は…とても流行りそうには無いな。
C++とJavaって、どんどん違う方向に進化してるじゃん。
Javaは、とことんランタイムの動的解決にこだわるけど、
C++は、テンプレートライブラリとかオペレータのオーバーロードとか、
プリプロセッサによるコンパイル時の静的解決マンセーな風潮になってる。
どっちがどっちを駆逐するとかいう話じゃなくて、
全く逆の方向にどんどん突っ走ってる感じ。
そこでc#ですよ
ネイティブコンパイルができるjavaコンパイラが存在することを知らないのかC厨は
GCJはまだ使い物になる段階じゃない
>>279 >静的解決マンセーな風潮になってる。
風潮っつか、カルマ?
所詮、高級マクロアセンブラの拡張ですから。
C言語はもともとアセンブラで記述されていたUNIXの移植性を高めるために生まれた言語だよね
だから高級言語としては特異な言語だと思う
OSの記述からアプリケーションプログラムの記述まで、ここまで汎用的に使われる高級言語はC言語以外にないよ
複雑なアプリケーションプログラムの記述にはC言語はどんどん使われなくなってるわけだが。
散々既出だがJava:Cの関係は、アセンブラ:Cの関係と一緒。
今でもアセンブラでしか書けないコンポーネントが残っているのと同様に
Cでしか書けないコンポーネントもずっと存在し続けるだろう。だがCで書くべき範囲はどんどん狭くなる。
Windows全盛だからWindowsアプリは.NETだろうけどね。同じこと。
日本が誇る電気電子は組み込み系プログラマが不足気味
Cやasmが一番待遇いいんだよ、きっと
「OSの記述」が特別すぎてソレを元に「様々な」っていわれても狐に包まれたみたいだ。
>>288 >狐に包まれたみたいだ。
シチュエーションが見えてこない。
JavaがネイティブでC/C++と勝負しても仕方無いんじゃないかと。
JavaにはJavaの道がある。でかい業務システム開発のメインと
なる言語だろう。Javaは裏方的なC/C++に支えられて、その道を
歩むのであって、C/C++の後継なんて目指したらおしまいだ。
COBOL・汎用機(ホスト系)の代わりに、
Java ・分散環境(オープン系)で活躍しそうだな、Javaは。
ただし、J2EE環境(サーバサイド)くらいしか使い道がないんじゃないの、
Javaって。
汎用機の代わりくらいじゃない、あとは教育用としてJavaは使えるな。
デカイところの汎用機はもうしばらくCOBOLでやっていくと思うが、
普通の所は、汎用機は廃棄して、分散コンピューティングでのJavaにしちまうよ。
JavaはCOBOLよりも機能が多いし。
あと、教育用ね。Javaはホント、学んでいて面白いから!
CやC++なんかよりも楽しいよ。
素人へのプログラム教育用として、Javaは最適だと思う、、、俺の個人的意見ではね。
UML厨の仮想実装言語として
本当に楽しくなるのはその初心者の領域こえてからなんだがね
Cは残る
高級アセンブラとして組み込み用としてもダイレクトに伝わりやすいところだから
C++が中途半端
Javaや.NETやってるとオブジェクト指向で業務ロジックだけ考えていればいいという
言語ではないから
この領域はDあたりがいてくれるといい
Javaや.NETはこれらとは目指すところが違いすぎる
結果としてC++の領域を一部(といってもアプリのほとんど)はかわる
すでに取って代わってるしね
Cが普及したのはやはりBASICと比較しての高級言語で高速性であって
当時のマシンパワーが今とは比べ物にならないこともあって
マシンパワーに余裕が出てきた今となってはスクリプト系含めての
ロジックに注目するだけの言語系への移行が加速する希ガス
JavaってVM誰も作らなくなったらどうするんだろ?
EXEも作れるらしいけどVMから独立してるんだろうか?
296 :
デフォルトの名無しさん:05/02/07 02:31:03
今から勉強するならC言語勉強した方がいいの?
297 :
デフォルトの名無しさん:05/02/07 07:32:42
Cは基本。モグリでないなら知ってて当たり前。
>>295 CってOS誰も作らなくなったら〜ってのと同じ。
需要さえあれば特別な事情でもないかぎり誰かが作る
300 :
デフォルトの名無しさん:2005/04/08(金) 08:58:20
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\
| 300GETしていいですか? . |
\____ ________________/
/||ミ V
/ ::::||
/:::::::::::||____
|:::::::::::::::|| ||
|:::::::::::::::||│ / ||
|:::::::::::::::|| ̄\ ガチャッ
|:::::::::::::::||゚ ∀゚) ||
|:::::::::::::::||_/ ||
|:::::::::::::::||│ \ ||
|:::::::::::::::||∧ ∧∩ ..||
|:::::::::::::::|| ゚∀゚)/ .||
|:::::::::::::::||∧ ∧∩ ..||
|:::::::::::::::|| ゚∀゚)/ . ||
|:::::::::::::::|| 〈......||
|:::::::::::::::||,,/\」......||
\:::::::::::|| ̄ ̄ ̄ ̄
\ ::::||
\||
Java はだめだ。
Java環境はまあよいとして、
Java言語は、(特にJava5 の取って付けた様な generics は)
しょぼいというか、つかえんというか...
ありゃみらいがないねぇ...
>>294 >>C++が中途半端
C++から最近Javaやり始めたんだけど
Java 5 の generics の 中途半端さは 最悪。
もともと言語設計思想自体が、保守的すぎなのだ。
いまさら generics 実装して、全然なじんでないし、
バイナリも"まぜるな危険"だし...
そもそも、Exception指向強すぎて...
Javaライブラリも、機能は多いが、押し付け感強いし...
ま、日本人が好きそうな言語設計なのは分かるけど...
今考えると、C++ってJava以上に言語ってものをよく考えて作られたんだなって思うよ。
良くも悪くもね。
つりかね
genericsはテンプレートとは別の目的だよ
Cはずっとやってきたからわかるが力量によるコードの差が激しすぎ
そしてJavaやC#についていけないへっぽこCプログラマも多い
>>303 >>genericsはテンプレートとは別の目的だよ
その通り。
Java5 は generics をのせるべきではなかった。
Java5以前の資産を大事にするのなら...
つーか1.4までと互換性あるんだからかまわんと思うが
互換性がないのならアレだが
Java5 で、Map< T, V > で受けようと思っても、
Java 1.4 は あくまで Map は Object,Object
結局ストイックに交ぜたければ、Object,Objectで受けてキャストするか、
例外記述になっちまう。
てか、Javaってキャスト大杉。
(型) によるキャストは、C言語と大差ない弊害の多い記述と思われ...
SUNも自覚したためgenerics(なんて御大層な名前で)実装したんだろうが...
そもそもJavaが持つ言語特性とあいいいれにくいと思うよ...
いまさらあんな言語拡張が、世のため人のためだろうか...
Java は、C++ や C# のまねなぞする必要ないのに...
いや、そういうときはコレクションそのままつかうのではなく自分で実装すればいいだけかと
混ぜる場合もそれらをパッケージングしたBeans作ってそれをいれるだけ
Objectありきで設計してる時点で間違ってるよ
どっちにしろGenericsは必須
テンプレートの真似事にみえるのは実装側だろうけど、そっちはたしかになくてもいい
genericsはどうも最初は頑なに拒んでたがC#の出現で渋々採用といった感じだよな
シンプルなOO言語であることにこだわる余りにキャストの嵐では本末転倒だからさっさと採用するべきだったんだろうけどなぁ
オートボクシングが採用されたからはじめて実用的になったともとれるからなぁ
Genericsなんて今までなかったのが不思議なくらい必須の機能。
Java(1.4以前)でもC#でも、たかがList使うだけでキャストの嵐になる。
馬鹿馬鹿しくてやってられない。
こんなことちょっと触ればすぐわかる。
つーか、コレクションの場合なんでもいれれるようにObject型にしてるだけだし
継承して使えというスタンスだったのでは?
>>311 もしそういうスタンスなあらC#用には普通にある
型限定のコレクションクラスを自動生成するツールが
Javaでは全く出てこなかったのが不思議なんだよな
コピペとはいえいちいち作らなきゃいけないのは問題外だと思うが
Javaプログラマはコレクションなんてどうでもよかったのかな?
クラス指向が強かっただけかと
プリミティブなものを直に入れるよりは多態で扱うとか
匿名クラスでイベント扱うのがデフォな時点で気がつけ
それにJavaプログラマと一括りにすな、C#厨
>>313 本当に見たことが無いんでみんなコレクションのキャスト問題なんてどうでもよかったんじゃないかと思ってさw
コレクション使ってないコードなんてあんまりきいたこともないが
新たに大量動員された業務プログラマの8割は多態理解しらなくて
困ったことはある
オブジェクト指向理解しているとかぬかすくせに
List list = new ArrayList();
がずっと理解できないやつがちらほらと
まぁ、今はgenerics導入で上記コードが警告でるのも便利
まぁ、Java の generics なんて、ただのシンタックス・シュガーでしかないがな
型の安全性が増えていい結果になったな>じぇねりくす
>>316 Javaの思想からすればむしろそのほうが都合がいい
Javaにポインタとアドレスがあれば
もっと分かりやすい言語になるのにね
このスレ釣りばっかかよ
assertの実装に笑った
詳細希望
NIOのDirectByteBufferは明らかにCで確保した領域をJavaで扱うために作ったとしか思えない
NIOもVolatileImageも1.4からは割り切ってパフォーマンス追求する動きにでてるからな
安全性はそれなりに確保できるしわるくないのでは
C++で書いて移植したほうが遥かに現実的だという事実。
まだ習い始めたばっかだけど、equalsに一貫性がないのが気持ち悪い。
クラスごとに判断基準違うものをどうしろと
デフォの動作がインスタンス変数全部比べてくれるってのが良くない?
それで困るときだけ変えればいいし。
このクラスのequalsは〜とかいちいち面倒くさいし、混乱の元じゃん。
toStringもデフォでインスタンス全部出力すりゃいいのに。
>toStringもデフォでインスタンス全部出力すりゃいいのに。
これどういうこと?
いや、toStringでオブジェクトの現在の状態を表す文字列が出力されるようにオーバーライドするだろ?
それをわざわざしなくても自動的にそうして欲しくない?
これもこれで困るときだけ変えればいいし。
その状態ってクラスごとじゃないと結局わからんだろうに
デフォはObjectの動作あるんだしこれ普通だろ
>その状態ってクラスごとじゃないと結局わからんだろうに
そりゃ分かんないよ。
ただJavaが元々そういう機能をサポートしてたら大丈夫じゃん。
機能って言うかただのコンパイル時のコードの補完?
全然難しくないでしょ。インスタンス変数読み取って、決まった形式の文字列作るくらい。
だって毎回
"[name="+name+〜+"]"
みたいなわかりきってること書くのだるくないの?
リフレクションで簡略化できるだろうけど、デフォでやってくれた方が楽だし。
これのデメリットが見つからない。
それが状態を表すと思ってるの?
Beansならそれなりにやれるけど、それ以外はムリ
>それが状態を表すと思ってるの?
そう思ってるけど、もしかして違うの?
違う
だからBeans以外は[〜]って表記してないと思うが
マジ?俺の読んでるCoreJava2って本で推奨されてるよ。
普通はどうやるの?
toStringの使い方は異なる
[〜]と表記しなければならないってことはない
Swing使っていればtoString大量に出てくるからどう使えばいいか分かりそうだが
んー、常にこう使うって訳じゃないのはわかるよ。
でも基本はデバッグに便利なようにインスタンス変数の状態を[〜]みたいに書くんじゃない?
>Swing使っていればtoString大量に出てくるからどう使えばいいか分かりそうだが
良く分かんないけど、例えば、JLabelのtoStringはこうだったよ。
javax.swing.JLabel[,0,0,0x0,invalid,alignmentX=0.0,alignmentY=0.0,〜省略〜,verticalTextPosition=CENTER]
見当違いなことしてたらわりぃ。
いや、リストとかテーブルとかのセルや各項目の表示方法などね
toStringを使うようになってるから
それにその表記はbeansだから可能な
340 :
デフォルトの名無しさん:2006/01/01(日) 03:19:59
意味も無くage
長寿スレだなw
10/24付近のは、言語でやるんじゃなくてRefactoringの機能とかで
持ってればいんじゃね?
setter,getterを作るような感じで。
少なくともtoStringは決まった形式に言語で縛るのは危険。
Java はプリミティブ型で参照を渡せないのがしんどい。
Tiger で踏み込んで欲しかったけど
C# の真似と言われたくなかったんだろうか。
ボクシング・アンボクシングなんて瑣末なものは後回しにして欲しかった。
(瑣末どころか曖昧さが増えてむしろ迷惑だ。)
なんでプリミティブ型もObjectの派生物にしなかったんだろう
そこだけはパフォーマンス上妥協したとのと
生成コスト短縮したと見た。
プリミティブ型の参照渡しをサポートしなかったのって何故?
type* 相当はまぁ分からんでもないが
type& 相当あったところで、混乱起こすとは思えないんだが。
オブジェクト型は type& 相当のことやってるわけだし。
>プリミティブ型の参照渡しをサポートしなかったのって何故?
ラッパークラスがあるタメに不要だから。
リフレクションのときの面倒を減らす効果があるから。
リファクタリングしやすいから。
>346
プリミティブ型のラッパークラスは不変オブジェクトになってて
参照渡し的な使い方は一切出来ないんですが。。
>347
なるほど。
mallocの本質はフリーチェーンと呼ばれる使用可能メモリブロックの長い連結リストだ。
mallocのパフォーマンスは決して速くなく、しかも、クリーンアップのために
ときどき予期できないタイミングで非常に遅くなる
Javaはガベージコレクションがあるから・・・なんてしたり顔で話すC++プログラマが、
デフォルトのメモリアロケータを平然と使っているなんてことは良くある。
頭のいいプログラマは、mallocによる処理の中断の可能性を最小化するために、
いつも2の累乗のサイズでメモリブロックを割り当てる。
この方法はフリーチェーンの中のヘンな断片化の量を最小化するのだ。
…尤も、Javaの世代別GCに比べれば余りに原始的だがな。
350 :
デフォルトの名無しさん:2006/07/04(火) 21:26:31
時給1000円でJava教えてくださるかたを募集します
場所 所沢(池袋・高田馬場から直通)
i−want−to−study−java@hotmail.co.jp
(アドレスは全角で書いてあるので半角に直してください)
よろしくおねがいします
とりあえずc++0xがどうなるか様子見。
(永遠に様子見してしまいそうだが…)
352 :
デフォルトの名無しさん:2006/08/20(日) 19:44:03
>>2 Cocoa-Javaならインタープリタじゃないけど
Cocoaは仕様違うし・・・
どっかでネイティブコンパイルできるJavaコンパイラとかない?
353 :
デフォルトの名無しさん:2006/08/20(日) 22:41:44
GCJ
ランタイム入れないと動かないとかカンベンシテくださいよ