トップページ⇒tech
354コメント119KB

JavaはC,C++の後継言語となりうるのか

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
Javaマンセーな方には申し訳ないですが、僕にはどうしても
Javaが次世代の主力汎用言語になりうるとは思えません。

確かに言語仕様は先祖たるCやC++よりも洗練されているのは
理解できます。ですが、実用にたるプログラムの記述という
面でははなはだ実力不足と思えます。

Javaマンセー派・Javaだめぽ派それぞれの意見をお願いします。

私個人が考えるJavaの罪状要旨を以下のレスに列挙していきます。

0002デフォルトの名無しさんNGNG
・インタプリターでしか動かせない

これでは Basic といっしょです。システム記述言語としては
明らかに実力不足でしょう。個人的にも、ネイティブコンパイル
のできるJavaがあれば、非常に魅力的に感じます。

確かに当初の「write once, run every where」という思想は
なくなってしまうでしょう。しかしどっちみち現状ではこの崇高
な Java の理想は絵に描いたもちです。
「write once, debug every where」なんだから、そろそろまともな
コンパイラの処理系という方向性を模索しても良いのではないでしょ
うか。そうでなければ、いつまでたってもおもちゃです。
0003デフォルトの名無しさんNGNG
・サーバ系、携帯電話ではすでに地位が確立しているという意見

こんなものは言い訳です。COBOLだって汎用機では地位が確立してますし、
VBだって業務アプリ・ホビー分野では相当の支持を得ています。しかし
だれも「汎用」言語としては認めていないでしょう。
システム記述・コンパイラ・アプリケーション等々あらゆる分野の
プログラムを生成することが出来てこそ「汎用」言語足りうるはず。
特定分野で秀でているのは結構、しかしそれでCやC++の現在の地位を
取って代われるとは思えません。

昔はHotJavaなんてのもありましたが、いま、Javaマンセーのかたで、
「JavaでできたOSで」「Javaでできたブラウザ」で2ちゃんねるを
見てる方います?「Javaで書かれたエディタ・スプレッドシート・
メーラ」ですべて固めている方がおられます?

結局自分自身も記述できない言語では半人前です。
0004デフォルトの名無しさんNGNG
・やっぱり遅い

実行速度は昨今のPC環境もあってか、特に不満はありません。
しかし起動はやはり遅い。Oracle 9iのコンソールなんか、別に
Javaじゃなくてもいいものを、インストールも起動もなにもかも
犠牲になっている。普通にCやC++で書けばもっとパフォーマンスが
でるのになんでわざわざJavaにするのか。
0005デフォルトの名無しさんNGNG
6あたり?
0006デフォルトの名無しさんNGNG
・Pascalの方がましじゃないの?

カーニハンの有名なあれをそのままもじらせてもらいます。

この言語は不十分であるのに境界線が引かれているため、制約から
逃れることが出来ない。必要な時にローカルファイルを好きなように
アクセスできないし、「標準クラス」を定義するバーチャルマシンを
コントロールしない限り、欠陥のある実行環境を実用的な環境に交換
する手段も無い。この言語は閉じているのだ。

Javaをまともなプログラミングに使う人々はどうしようもない落し穴
にはまる。この言語は無能なので、拡張されなければならない。ところが
勝手にJavaを拡張すると、SunからJavaでは無いといわれ、以後処理系
のリリースもままならない。

Javaを何であれ当初の目的以外のものに使うのは間違いだと思う。純粋な
Javaはおもちゃ言語であり、教育用には適しているが実際のプログラミング
には不向きなのだ。
0007デフォルトの名無しさんNGNG
・最後に

確かに、現状使えるオブジェクト指向言語が、ひどくバロック調の、やたらと
約束事の多い C++ しかないことを考えれば(SmalltalkやEiffelなんてみんな
討ち死にですもんね)、言語仕様の綺麗な Java が注目されたのもわかる。

でも、じゃ、いったい何ができるの?といえば、特定の適用業務しか使えない。
こんな言語がなんでこんなに支持されるのか、理解できないんです。

「その通り」でもいいですし「おまえわかっていない。実は...」でも結構。
ご意見どうぞ。
0008デフォルトの名無しさんNGNG
 恋愛板住人で場違いなんですが。
0009デフォルトの名無しさんNGNG
良スレage
0010デフォルトの名無しさんNGNG
1のオナニー?
0011デフォルトの名無しさんNGNG
食い込み アセ、C
うぇb Jawa
金融 KOBOL
おなにー ぃすp
0012デフォルトの名無しさんNGNG
>>1
その通り
0013あぼーんNGNG
 ( ・∀・)< こんなのみつけたっち♪ 
http://muryou.gasuki.com/hankaku/hankaku03.html
http://muryou.gasuki.com/hankaku/hankaku04.html
http://muryou.gasuki.com/hankaku/hankaku02.html
http://muryou.gasuki.com/hankaku/hankaku01.html
http://muryou.gasuki.com/hankaku/hankaku10.html
http://muryou.gasuki.com/hankaku/hankaku09.html
http://muryou.gasuki.com/hankaku/hankaku08.html
http://muryou.gasuki.com/hankaku/hankaku07.html
http://muryou.gasuki.com/hankaku/hankaku05.html
http://muryou.gasuki.com/hankaku/hankaku06.html
0014佐々木健介NGNG
     ______
    /_      |
    /. \ ̄ ̄ ̄ ̄|
  /  /  ― ― |
  |  /    -  - |
  ||| (5      > |
 | | |     ┏━┓|   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| | | |     ┃─┃|  < こんなサイトを見つけた
|| | | |  \ ┃  ┃/    \  正直、スマンカッタ
| || | |    ̄         \_________
http://saitama.gasuki.com/kensuke/
0015あぼーんNGNG
あぼーん
0016デフォルトの名無しさんNGNG
>JavaはC,C++の後継言語
っていう位置付けはどこから来たの?sunが言ってるのかな。

Javaの思想のひとつに「実行速度が遅くてもいいからプログラマのミスをできるかぎり言語側でカバーする」とかいう感じのやつがあるんだけど、そこが好きだな。
0017デフォルトの名無しさんNGNG
>>1

JavaがCやC++に取って代わる言語になることは無いだろう。

また、1つの言語が全ての用途に適用できるということもこれ
からはないだろう。
目的に合った言語を選択していけばいいだけの話だ。
昔は、選択肢が無かっただけである。

現実的に考えても、起動の遅いJavaでは一般のユーザが使うア
プリケーションには、たしかに不向きである。
しかし、一度起動してしまえば再起動はそれほど必要ないサー
バサイドでは十分使えるし、J2EEなどサーバサイド向けの仕組
みが用意されているという強みがCやC++などに比べたらある。
0018かおりん祭りNGNG
http://www.saitama.gasuki.com/kaorin/
       こんなのございま−す♪
       ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
        〜oノハヽo〜
  ,.-''"¨ ̄●`' ‐(^▽^)
 (,,●i,,,i,,,,,,,,i,,,,●),,)⊂ )
    )  (    || |   
    ( ^▽^)  (_(__)
~~~~~  ̄ ̄ ~~~~~    ~~~~~
0019デフォルトの名無しさんNGNG
>確かに言語仕様は先祖たるCやC++よりも洗練されているのは
>理解できます。ですが、実用にたるプログラムの記述という
>面でははなはだ実力不足と思えます。

おいおい、ソースコードの記述能力は互角かそれ以上でしょう…

実行環境が現状ネイティブな実行ファイルの実行に比べて実力不足
という話なら同意してもいいが。

ただ、HotSpotVMは君が思っているような単純なインタプリタじゃないぞ。
実行時にJITコンパイラでネイティブコンパイルした後に、実行時情報を
集めながら実行速度が上がるように最適化をするという、笑っちゃうよ
うな機能がついている。どの程度有効なのかシランケド、うまく最適化すれ
ばネイティブな実行ファイルの実行速度を上回ることも可能、とい
うことだ。そして、幾つかのテストケースでそれを実証できたらしい。
(Sun自身の報告だから、眉唾かもしれんけどね)

Javaが死ぬほど遅いのは、画面描画関係。ただここもJREVer1.4になっ
てから激しく改善されつづけているから、あんまり気にならない程度に
なることは、期待できるでしょう。

最後はメモリ消費かな?コレばっかりはどうしようもないと思われ。
ヒープもスレッドスタックフレームも、物凄い贅沢な使いかたしてる
から。
0020デフォルトの名無しさんNGNG
JavaはOSごとに挙動が異なるという致命的欠陥があるからなあ
0021デフォルトの名無しさんNGNG
つーかJavaはインタプリタという認識からおかしい・・
どうせネタだし、削除依頼してくる。
00221NGNG
>>16

後継言語云々はどこから、という話ではなく、Javaの適用範囲として
CやC++が現在占めている分野をカバーできるのか?という問いかけです。

「実行速度が遅くてもいいからプログラマのミスをできるかぎり言語側でカバーする」
これって、典型的なbondage-and-discipline languageですよね。
PascalやAdaなんかと同じで批判も多いっちゅうか。
僕もこういう思想はキライではないですが、教育用にとどまっちゃいますよね。
00231NGNG
>>17

割りきれ、っちゅうことですかね。
プロ(システム開発者という意味での)が使う言語としては選択されるが、
個人の趣味のプログラムとしてはともかく、エンドユーザ向けの一般的な
アプリケーションを書くのには適さない、と。

しかし、これってCOBOLと似た境遇ではあるな。
COBOLは趣味の個人ベースでやってる人は変態っぽいですが。
0024デフォルトの名無しさんNGNG
Javaは正直メジャーになるのが早すぎたんだと
思うけどね。
1.4で描画が速くなったって言っても、昔のイメージが
強すぎて試そうと思えないっすよ。
1.02〜1.2までは使ったけど、「将来的〜」っという
うたい文句がずっと続いて正直萎えました。
00251NGNG
>>19

ソースコードの記述能力云々は「言語仕様が洗練されている」と
同義と思いますが。なんか読み違いされてます?

HotSpotVMについての説明はありがとうございます。
しかし、実行時にコンパイルするのであれば、それは実行速度の速い
インタプリタにすぎず(良い悪いは別として)、たとえばOSやコンパイラ
を記述するなどといった分野では不利ですよね。

それに(SUNの主張をそのまま受け取るとして)、そこまですごい実行環境
であるにもかかわらず、>>17の言うように一般向けアプリケーションで
Javaのキラーアプリが出てこないのはなぜなのでしょうか?
>>19さんの後半の論旨のように、今後改善され、いずれはそういうものも出てくる?
やはりサーバサイドにとどまる?
0026デフォルトの名無しさんNGNG
Javaは、完全な実行時リンクの仕組み(必要になる度に必要なクラス
ファイルをロードし、しかも実行時にコンパイルまでしやがる)なの
で、初期化の作業が遅い。でも初期化以降はそんな遅くないよ。

…つうか、藻前らは試してみた上で発言してるのか?
00271NGNG
>>21

勘違い指摘・削除依頼も大いに結構、Welcomeってところですが、
私の意見のどの辺りに盲点があるのかご指摘していただけると
さらに嬉しいってとこですが。
00281NGNG
>>26

>>4でも書いたとおり、起動時以外は私も問題は無いのではという
感想を持っています。むしろ「単体のプログラムを生成する能力」
「完成品としてのプログラムを生成する能力」が欠けるがゆえ、
どこか中途半端になっている印象がある、というのが私の論旨です。
0029デフォルトの名無しさんNGNG
>>25
JavaでOSを書くのは難しくないと思うぞ。VMの上でOSを書くことに
意味があるのかどうかわからんが。
あと、JavaのスレッドモデルはOSモドキを行うにはいい加減すぎる
ので、困るだろうな。

あと、今のJavaコンパイラはJava製です。
0030デフォルトの名無しさんNGNG
>>28
VMとアプリのライフタイムを一緒にすると、初期化で困るわな。

VMをデーモンのように一個あげておいて、プラグインみたいに機能を
呼び出す仕組みにすると、初期化のハンデを解決できると思うぞ。
Eclipseなんかがいい例ではないかな。
00311NGNG
>>24

あと、SUNの調整能力というか、統率力のなさも指摘されてますよね。
言語仕様には口をはさむが、実行環境・処理系の提供が遅いというか。

SUNの調整能力とJava自体の能力とは無関係といえば無関係ですが、
CやC++(あるいはUnix)みたいにある程度醸成されるまでは自由に
拡張されて、「これでは良くない方向に拡散する」という一歩手前で
標準化される、という流れであればもっと違う発展もあったかもしれ
ないなあ。

0032デフォルトの名無しさんNGNG
>>31
オイオイ…
VMは誰が作ってもいいんだよ。
あと、処理系ってのはコンパイラのこと?

IBMがなかなかイイの出してるよ。両方とも。
0033デフォルトの名無しさんNGNG
つーかSunが関わってる時点でもうだめぽ
00341NGNG
>>29

「VM上で動くOSを作ることに意味があるのか」これがまさにJavaの抱える
弱点かと。素のネイティブコンパイラがあれば、もっと魅力的な言語に
なると思うんですが。

>>あと、今のJavaコンパイラはJava製です。

ご指摘サンクスです。
Javaに関してはこんな程度の知識なので、思い違い・認識違いも多いと思います。

しかし、Java製なのに、SDKはOSごとの提供なんですね。
0035デフォルトの名無しさんNGNG
何だかなあ。もう少し調べてから書いてくれ。
0036デフォルトの名無しさんNGNG
>>34
ランタイムがOSごとの仕組みの違いを吸収しなきゃならんからね。
JDKはランタイムを含んでますの。
00371NGNG
>>32

そりゃそうですが、最新の環境はSUNがまず発信でしょう。
実際、やっと使える形になった1.2の提供まではかなり
時間がかかってましたし。
00389NGNG
やはり良スレだったようだな
00391NGNG
>>35

そういわれると申し訳ないです。
Java信者を増やすつもりでご指摘・教授していただければありがたい。

とはいえ、今のところ、ネイティブな実行ファイルを生成できないデメリット
以上のメリットが見出せない、そして、僕が一番つっかえているのがこの点
なんですが。
0040デフォルトの名無しさんNGNG
>>37
それなら言語の発展が遅いのであって、提供が遅いとは言わない。
あと JCP は知ってる?
http://www.jcp.org/ja/home/index

>>39
開発しやすい。これが圧倒的なメリット。
でなきゃこれだけ使われていない。
0041デフォルトの名無しさんNGNG
>>37
JRE1.4RIは、最早Sunだけで作ってるんじゃなかったよ。
>>39
バイトコードをサーバに置いといて、クライアントのOSに関係なく
バイトコードをコンパイラナシでダウンロード即実行できます。

だからなんだ、そんなのスクリプトと一緒じゃん、という反論が
あるかもしれませんが、バイトコードはすでにJavaコンパイラの
チェックを受けている+バイトコードのVM上の実行には、
VMがもつセキュリティチェック機構の洗礼があるので、わけわからん
スクリプトをダウンロード実行するより、ずっと安全です。

バイトコードであるクラスファイルの書庫がデジタル署名されて
いて、クライアントがその署名に承認しないと、ダウンロードした
クライアントのローカル環境へのアクセスが禁止されたりします。
勝手にファイル消したりバックドア仕込んだりは出来ません。
便利でしょ。
0042デフォルトの名無しさんNGNG
こりゃまた痛い>>1がきたもんだなぁ。
痛すぎてマジレスする気にもならん。
0043デフォルトの名無しさんNGNG
>>1
気づくのが4年遅かったようだね明智君
みんなそんなことは知ってる
でも使う
なぜか
そこに金が流れているから
0044デフォルトの名無しさんNGNG
遅いのが嫌ならwindows使うなや
0045デフォルトの名無しさんNGNG
42 名前:デフォルトの名無しさん 投稿日:03/04/10 02:56
 こりゃまた痛い>>1がきたもんだなぁ。
 痛すぎてマジレスする気にもならん。
0046デフォルトの名無しさんNGNG
おおむね間違ってないじゃん。
0047デフォルトの名無しさんNGNG
AOTコンパイラなら、GCJとか商用ベンダの奴とかありますが。
0048デフォルトの名無しさんNGNG
「OSが書けない」なんてねぇ…
大昔のJava死滅スレの煽り文句じゃあるまいし…
0049デフォルトの名無しさんNGNG
C++、Java、C#天下三分
どらかひとつの言語がすべての範囲をカバーする時代は終わった。
0050プログラマ人味平NGNG
だいたい、一つの言語ですべてをまかなえないと駄目みたいな
発想自身が旧石器時代の考えだね。

油絵を水彩絵の具で描く馬鹿はいない。

ところでいつJavaを「汎用」言語としてSUNはセールスしたっけ? >>1
俺は「マルチプラットホーム」「セキュリティ」のセールス文句しか
しらないけどね。
0051デフォルトの名無しさんNGNG
馬鹿->C++、Java、C#天下三分
普通の人->C++、C、C#天下三分
0052デフォルトの名無しさんNGNG
少なくともJavaのUIは糞だな.。
0053デフォルトの名無しさんNGNG
PerlやPHPでOSが書けないからってクソ扱いする奴はいないし、
CやC++でWebアプリ書く奴も(あんまり)いない。
世の中適材適所なんだよ。
Javaが得意なのは上位層の中〜大規模なソフトウェア。
0054デフォルトの名無しさんNGNG
組込み系は物にもよるけど、動画、静止画、音声処理の
要求が多くなってきたから、Javaは使う気になりません。

そういえば、MEのfloatサポートって今はどうなんだろうか?
0055デフォルトの名無しさんNGNG
結局のところ「汎用言語」の意味する所が問題なのか?


Javaはそもそもシステム記述言語ではない。OSやドライバは作れないのが当然だ。
→じゃあ汎用言語じゃないね。
→そういったシステムに近い部分はC言語の領域だ。
→システムも記述できなきゃ汎用言語じゃない。
→それは昔のC言語とアセンブラの関係と同じだ。アセンブラでないと書けないことが
あるからといってC言語が汎用言語でないとは言わないだろ?
→それならC言語は汎用言語と認めてやるよ。でもJavaは認めんぞ。

Javaはデスクトップアプリが作れる
→GUIの遅さや起動の遅さが致命的だ。実用性がない。
→オレにとっては実用的だ。
→それはオマエの感覚が麻痺してるのさ。一般ユーザーが耐えられないのなら
実用性がないのと同じだ。
→でもオレにとっては実用的だ。。。

Javaは美しいオブジェクト指向言語だ
→だからどうした? オマエの趣味には付き合ってられない。
→プログラミング言語は言語仕様が洗練されている方がいいに決まってるだろ?
→じゃあ、教育用、研究用の言語だね。汎用言語とは呼ばないよ。
→だからJavaはオブジェクト指向だから。。。オブジェクト指向だから。。。

Javaの強みはサーバサイドにある。
→それなら汎用言語ではない、と認めたのか?
→いやJavaでもOSを書けるし、デスクトップアプリも書けるし。。。
→実用性がないじゃん。オマエは高木浩光か? 無理してないか?


ループだね。。。。
0056デフォルトの名無しさんNGNG
後継というより棲み分けだね。
0057デフォルトの名無しさんNGNG
>>55
ひろみちゅと喧嘩して負けたのが余程悔しかったんだね…
0058デフォルトの名無しさんNGNG
>>50
汎用とは言ってないですね。あらゆるプラットフォーム
でっとは言ってが(もう忘れた)
でも、Sunは Java vs .net の方向で行こうとしている
訳だから、ドライバとかは置いておくとしても、クライ
アントサイドもある程度使い物にならないと辛いんじゃ
ない?
0059デフォルトの名無しさんNGNG
クライアントサイドのJavaがダメなのは、Javaが悪いと言うより、
Swingが悪い。
特に初期のSwingは確かに使い物にならなかった。
言語仕様だけ見れば、Javaはクライアントアプリケーションくらい
楽々こなせるよ。
解決策は「SWT使え」
0060デフォルトの名無しさんNGNG
そういやJavaOSとかJavaChipなんてネタもあったな。
ネタで終わったけど。
なんでもかんでも1つでやりたいならアセンブラでも
使えばいい。何でもできるぞ(w







労力さえいとわなければな。
00611NGNG
1です。

だいたいの世間の評価(というか2chの評価)はわかりました。

・そもそも現在は適材適所で言語を選ぶのが吉。
・Javaはデスクトップアプリケーションには向いていないのは確か。
・とはいえ、サーバサイドでは構築のしやすさから主流たりうる。
・そもそも汎用言語じゃない。

納得できることもあったし、勉強にもなりました。
あとは名無しに戻ります。

ききたいことがあるとすれば、みなさんはJavaを(仕事以外で)なにに
使っておられるのでしょうか。
0062デフォルトの名無しさんNGNG
>>2
実行時にJITでコンパイルした方が高速になるという研究成果もしらないで何を言うか

JETという、exeに変換できるコンパイラを知らんのかね?

>>3
>結局自分自身も記述できない言語では半人前です。
意味不明

>>4
長時間にわたる開発、再利用性を高めた開発効率を持つJavaは設計思想がC/C++とは違うのだよ。

>>6
その意見、古い。署名すればローカルファイルにアクセスできるぞお前。
Appletの三度ボックスモデルと何か近藤してないか。
土台部分の拡張はJCP(JavaCommunityProcess)でやってることも知らんでおいて。
その意見はJCPがでる以前の話だなこりゃ。
0063デフォルトの名無しさんNGNG
>>25
すでにキラーアプリはでてるだろううが。
サーバサイドという分野そのものがまさしくキラーアプリだ。
将来、サーバとクライアントとの区別がつかなくなればサーバにとどまるという言葉も
変になるだろう。

>>55
Jiniによってドライバつくれるってよ
0064デフォルトの名無しさんNGNG
>>61
>そもそも汎用言語じゃない。
そもそも「汎用言語」だと何が良いのかわからん。
0065デフォルトの名無しさんNGNG
>>63
>将来、サーバとクライアントとの区別がつかなくなれば
っという言い方はもうやめて欲しい

>Jiniによってドライバつくれるってよ
おっ!それは初耳。
VMは特権モードで動くの?詳細キボンヌ
0066デフォルトの名無しさんNGNG
JavaをCやC++と比べてる時点で間違い。
あれはLISPを理解出来ない頭の悪い人の
ための言語です。
0067デフォルトの名無しさんNGNG
頭が良いから使うってだけじゃ、
使う理由がないのと同じなんだがねぇ。
ねぇ、煽り厨さん。
0068デフォルトの名無しさんNGNG
java=21性器のcobol
0069デフォルトの名無しさんNGNG
>>59
>特に初期のSwingは確かに使い物にならなかった。
今もそう。例として、JDK1.4上で動かすSun One Studio
が挙げられる。
>解決策は「SWT使え」
同意。
0070デフォルトの名無しさんNGNG
>>69
つまり
Swing=今でもある程度の規模になると軽快ではない
SWT=WinならMFC、Unix系ならQt、GTKを使用した時と大して速度は変わらん

っということで良いの?
0071デフォルトの名無しさんNGNG
Java(M$はJ#と呼んでいる)は、緻密・厳格なライブラリを持ったC言語
C++の拡張じゃなくCの拡張。C++とJavaが対等な比較対象
なんじゃ?
プラットフォームに依存しないアプリのプロトタイプ・仕様書作成の為
の言語であり、移植・保守の際に仕様書代わりにこの言語で書かれたソ
ースを読む。そういう使い方がベストで、携帯とかの小規模システム以
外は仮想マシン実装なんで重い、遅いで使いにくい。逆に言えばそうい
う実装を取るのは、プロトタイプ作業用の言語だということを示してい
るようなもの。
C++の場合は実装が重視されている感じ。Windowsの場合、ライブラリ
の複雑さに対してはC++仕様じゃとてもじゃないが対応していけないやから、
C++とJavaの中間のC#を実装用ソース記述言語とするみたいだが。
0072デフォルトの名無しさんNGNG
C++の特殊化だと思うぞ。
プロトタイプ用言語を目指しているのなら、もっと多機能していると思う。
(プロトタイプ用って銘打っているのってpythonぐらい?)

言語屋がC++を特殊化するとJavaになって、
コンパイラ屋がC++を特殊化するとC#になるってイメージを持ってたりする。
0073デフォルトの名無しさんNGNG
>>72
俺も近いけど、どちらかというと
理想主義者->Java
現実主義者->C#
って感じかな。
まぁ、理想主義者=言語屋に近い感じだけど、
言語として洗練してったらJavaだと思う。
structやWindows.Formsなど汚らしいけど使いやすい必要悪も入れたのがC#だと思う。

当時周りにまだ敵がいなかったJavaは理想を追求することができたけど、
後出しのC#は遠くの理想より目先の現実に目を向けざるを得なかったんだろうと思うよ。
0074デフォルトの名無しさんNGNG
UNIX板ですが

C++って使わないの??
http://pc.2ch.net/test/read.cgi/unix/1004227343/

という面白いスレがあります。
C++が中心テーマですが、Javaにもかなり言及しています。
この板とはまた違った視点があって興味を惹かれます。
0075デフォルトの名無しさんNGNG
別にJavaをC/C++の後継にする必然性はないでしょ。適材適所。
Javaって基本的にリッチなリソースがある環境下で使うものだし。
組み込みとかならCだし、パッケージソフトならC/C++だし。
0076デフォルトの名無しさんNGNG
ウニ板は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厨っていつも能書きと妄想ばかりだね(プ
ヤバくなったら適材適所で逃げ? 生きていて恥ずかしくないの?(ププ
00771NGNG
>>76
前半はともかく後半は・・・
70は>っということで良いの?って聞いてるだけだし。
007877NGNG
あぁゴメン。
俺はこのスレの1とは無関係だ。
007924 & 70NGNG
>>76

> 未だに<locale>すら付いてないような糞バージョンのコンパイラ
Javaコンパイラはlocale対応してなかったか?
日本語っという所だけみると使いにくかったが。。

> > SWT=WinならMFC、Unix系ならQt、GTKを使用した時と大して速度は変わらん
>こういう↑バカがいなくならない限り、Java厨はいつまでもバカにされ続けるっす

>>24で言った理由により、実際にJava開発はやめているので
現状のJavaがどんなもんか、聞いただけだが?

Swingはマダマダだけど、SWTならOK!って言っているから
MFC、QT、GTK等の既存ライブラリと較べても、それほど
遜色ないのか?っと思って聞いたんだよ


> Del灰製より明らかに速いという結果が出てから
Del灰は16bit版の頃にやっただけです。
なので、現状はJavaより知らない(^^;
0080デフォルトの名無しさんNGNG
http://yahooo.s2.x-beat.com/linkvp/linkvp.html
0081デフォルトの名無しさんNGNG
>>72-73
その割りにアンチC#の煽り文句が決まって「案件が無い」なんてやたら現実的なのはなぜだろう?
0082デフォルトの名無しさんNGNG
>>81
最近は、そこそこでてきました。実際に案件にくるのは
ある程度枯れてからっす。そこんとこよろしく

最近は、IBMがらみの仕事が増えてきた(これは会社に
もよるけど、全体的に)ので、自社製品固めが多いです。
そうなると仕事はJavaになりまつ。。。。
# N、F製のわけのわからんやつを押し付けられるより
# 万倍ましだが

あとは日本の会社の経営陣は言語にも口出しするから
ビジネス誌でJavaマンセーって記事が載ったのを
そのまま鵜呑みにしているからです。
上のなんか奇麗事を並べたやつが有利なので、Java
の案件がおおいの
0083デフォルトの名無しさんNGNG
http://ip.tosp.co.jp/i.asp?i=endorfin
暇なヤシどこかに貼っといて( ´△`)アァ-
0084プロの逝って良しの1 ◆MvRbZL6NeQ NGNG
Java使ってるうちにVCの組み方忘れた。
Cなら組めるんだが
0085デフォルトの名無しさんNGNG
↑結局OO要らないとかほざいているくせにJava使っててVC忘れたときたか、、、
00861NGNG
「VCの組み方」だと、>>84がVCの開発者みたいだな。
0087デフォルトの名無しさんNGNG
インタープリタ嫌い。
Cでいいじゃん。
0088デフォルトの名無しさんNGNG
Javaがいまだにインタプリタだと思ってるような輩は死んでください
0089デフォルトの名無しさんNGNG
>>88
駄目だこりゃ
0090デフォルトの名無しさんNGNG
エミュレータがインタプリタ呼ばわりされるインターネットはここですか?
0091デフォルトの名無しさんNGNG
>>90
実際にインタプリタだにょ
0092デフォルトの名無しさんNGNG
VBや.NETモナー
ネイティブなのはDelphiだけ

中間コードを逐次実行するからインタプリタってのも乱暴な気がするが
0093デフォルトの名無しさんNGNG
>>92
>ネイティブなのはDelphiだけ
ワロタ
0094デフォルトの名無しさんNGNG
>>89
多くの実装において実行時にネイティブコードにコンパイルしてますが何か。
あるいは最初からネイティブコードにコンパイルすることもできますが何か。
0095デフォルトの名無しさんNGNG
なんつーか、文末に「何か」を付ける場合、一文だけにした方がいいと思うんだよね。
複数付けると無理矢理揃えてる感じがして、それが必死な感じのように思えてしまう。
あと、「何か」の後に続けてしまうと、せっかく煽ったのを冷静に戻してしまう。
0096デフォルトの名無しさんNGNG
へぇーマイクロコードに変換できちゃうんだ、はじめて知った。86でいうjavaがらみのdllってなんでしょうね?.classの中がまさかネイティブなコードになってるとか言わないでね
0097デフォルトの名無しさんNGNG
>>96
誰も言って無いのにマイクロコードと言い出す馬鹿は氏んでください。
0098デフォルトの名無しさんNGNG
> 86でいうjavaがらみのdllってなんでしょうね?
ぐはは。わけわかんね。
0099デフォルトの名無しさんNGNG
>>97
つか >>96 は「マイクロコード」が何なのか、よく判っていないと見た。
0100デフォルトの名無しさんNGNG
非ネイティブコードを実行するのがインタプリタ?
その解釈は頭悪すぎ
0101デフォルトの名無しさんNGNG
Java厨必死だな(ワラワラ
0102デフォルトの名無しさんNGNG
別に仕組みはわかってるんだから、今更呼び方なんかうんこ
0103デフォルトの名無しさんNGNG
(Visual)C/C++の後継はC#だろ(一部領域除く)
JavaはCOBOLの後継、良かったな
0104デフォルトの名無しさんNGNG
>>103
食い扶持の無くなったダメCobolerがサーバサイドJavaに流れ込んでいるのは確かだけど
なんでJavaがCobolの後継って言われてるの?
0105デフォルトの名無しさんNGNG
>>71
> Java(M$はJ#と呼んでいる)は、
ハァ?
0106デフォルトの名無しさんNGNG
>>103
C/C++の後継がC#とは傲慢だな。
Javaの後継だろ(プ
0107デフォルトの名無しさんNGNG
>>89
オマエモナー
0108デフォルトの名無しさんNGNG
>>87
> インタープリタ嫌い。
> Cでいいじゃん。
オブジェクト指向嫌いな奴がJavaから逃げてこういうことを言う
0109デフォルトの名無しさんNGNG
>>75
>別にJavaをC/C++の後継にする必然性はないでしょ。適材適所。
C#もな。

>>103にはこう説明してやれ
「別にC#をC/C++の後継にする必然性はないでしょ。適材適所。 」
0110デフォルトの名無しさんNGNG
>>73
> 俺も近いけど、どちらかというと
> 理想主義者->Java
> 現実主義者->C#
> structやWindows.Formsなど汚らしいけど使いやすい必要悪も入れたのがC#だと思う。
速度重視の世界ではそれが成り立つが、拡張性重視の世界ではそれ(理想-現実)が逆転する。

strutsは速度問題や、古い言語との互換性を保つためにあえて付けられたものであるという認識が
強いが。C#が現実主義だと言い張るのは古くからC/C++を使ってきてC/C++こそが最高の
言語であるという妄想を持っている者にたいしては説得力があるが、大規模プログラミングで
C/C++のstructの欠点を知ってしまった人にしてみれば、継承もできないものは現実的とは
誰も思わない。


> 当時周りにまだ敵がいなかったJavaは理想を追求することができたけど、
> 後出しのC#は遠くの理想より目先の現実に目を向けざるを得なかったんだろうと思うよ。
その目先の現実というものがどういうものをさしているかにもよるが。

長くプログラムを使うことを想定するならC#よりJavaのほうが現実的
JavaのAPIやフレームワークはC#のそれよりもしっかりしており洗練されている。
0111デフォルトの名無しさんNGNG
>>76
Javaを馬鹿にする前に
お前のようなDel厨使っているマシンのスペックと
お前のいう体感速度というものがどれくらいなのか説明してからにしろ。

J2SE1.4.2になってから速度も上昇し
使い方次第ではCの速度を超越するという結果も出ている。
お前こそ生きてて恥ずかしくないの?(プ
0112デフォルトの名無しさんNGNG
>>65
まずJiniについて調べてから出直して来い。

JDBCのドライバには100%PureJavaになっているものがあることも知らないのか 
0113デフォルトの名無しさんNGNG
>>87
実行時にJETコンパイラが動き出してその場で中間コードをさらにコンパイルするわけだが。
それでもインタプリタと言い切るのかね
0114デフォルトの名無しさんNGNG
>>113
×JET
○JIT
0115デフォルトの名無しさんNGNG
Javaは知らない間に高速化しているよ。
C++より速くなる事だってある。
0116デフォルトの名無しさんNGNG
>長くプログラムを使うことを想定するならC#よりJavaのほうが現実的
21世紀のCOBOLといわれる理由はこのあたり
0117デフォルトの名無しさんNGNG
>>112
俺はデバイスドライバをJavaで記述できるっていう話の
流れだと思ったから書きましたがなにか?
Jiniは概略しかしらんから聞きましたが何か?

JDBCのドライバ。。。ハァ
0118デフォルトの名無しさんNGNG
>>94>>111>>115

JavaがC/C++より優れていることは良くわかりました。
というわけで、Javaで最初っからネイティブコンパイルされたという
アプリケーションをなんか紹介してください。
VMとかもいらんのですよね。いるんならVB並ですもんね。
0119デフォルトの名無しさんNGNG
>>110
>strutsは速度問題や、古い言語との互換性を保つためにあえて付けられたものであるという認識が
なんでそうなるのかなー
structは値型を表現するためにある。速度なんてかえって遅くなる

>大規模プログラミングで C/C++のstructの欠点を知ってしまった人
いったい何が欠点なのか。よく知らないことを長文で書くもんじゃないよ
0120デフォルトの名無しさんNGNG
  ∧_∧
 ( ´∀`)<0x82ca, 0x82e9, 0x82db
0121デフォルトの名無しさんNGNG
最近の学校は、Java厨の先生が多いのか?
0122デフォルトの名無しさんNGNG
>>121
この前聞いた話じゃ未だにFortran教えてるらしいがね。
アフォかと。
0123デフォルトの名無しさんNGNG
>>119
structは遅くなる場合も速くなる場合もあるかと。
0124デフォルトの名無しさんNGNG
>>118

>JavaがC/C++より優れていることは良くわかりました

あなたが何も分かってないということがよく分かりました。
もう一度このスレを頭から舐めるように全部読んだ上で首吊ってください。さようなら。
0125デフォルトの名無しさんNGNG
Java自信はCで書いてるのかな?
UNIXやwindows系のOSターゲットなら
Cが一番てっとりばやいのでは?
0126デフォルトの名無しさんNGNG
>大規模プログラミングで C/C++のstructの欠点を知ってしまった人

C++ではclassもstructもさして変わらないという面白い事実
0127デフォルトの名無しさんNGNG
>>119が言ってるように、struct=値型オブジェクト、の欠点という意味だろう。
0128デフォルトの名無しさんNGNG
>>122
それしかしらないんだから仕方なし(泣

0129デフォルトの名無しさんNGNG
SunのJ2SDKがバイトコード以外にプラットフォームネイティブのバイナリも
吐くことができて、ランタイムもスタティックリンクしてくれたら便利なのにと
思うことは多いな。
0130デフォルトの名無しさんNGNG
JAVAはTOMCATと合わさって初めて動くのだ!
0131デフォルトの名無しさんNGNG
はぁ?
0132デフォルトの名無しさんNGNG
>>129
それだとかなりでかいサイズになりそうだ。

ネイティブコンパイラは期待はずれになると思われ

>>125
ソース互換ならCも結構なものでつ
面倒さけどね

Javaのバイナリ互換ってそんなに大事かね?
0133デフォルトの名無しさんNGNG
>>132
クライアントサイドは元々アプレットから始まったものだから。
相手が何かわからない以上、バイトコードで互換性を優先と
いうのは当然かと。
0134デフォルトの名無しさんNGNG
C でソース互換を意識したコードって
Javaの場合と同じかそれ以上に大きくなるんだよね…
#ifdef とかやってると特に。
0135デフォルトの名無しさんNGNG
>>134
そう?コマンドラインアプリならそれ程いらないと思うけど
# GUIは。。。。。

WinとUNIXとの互換だとPOSIX APIの部分がキツイ

NT系だとPOSIXのサブシステムが使えたと思うけど
やったことないから使えるか謎。。
Service for UNIXかCgywin使えればそれ程でもないん
ですけどね。。限定環境になっちゃう。
0136デフォルトの名無しさんNGNG
>>122
利用目的を知らないお前がアフォかと。
数値計算、科学技術計算ライブラリではFortranは未だにトップクラスなわけだが。
とある数値計算m科学技術計算では、CでもC++でもJavaでもFortranにはまだまだ勝てない。
0137デフォルトの名無しさんNGNG
>>136

目的があるのは強いね〜。
友人がFortranで流体力学の計算プログラム作って月収100万強。
おれCもC++もJavaもDBもいろいろやってるけど月収40万いかないyo。
0138デフォルトの名無しさんNGNG
>>136
適材適所ってのは同意
ちろっと質問なんだけど、Fortranって普通どのシステムで
使うもんなの?
スパコン?汎用?
漏れのイメージだとIBMのスパコン、汎用のイメージが
強いんだけど

後、最近(?)は科学技術計算とかは分散システムが主流だと
思うんですが、分散でも簡単にできるようになっているの?
0139デフォルトの名無しさんNGNG
>>137
激しくスレ違いだけど。。

サラリーマンですか?サラリーマンだったらショウガナイ
っと思われ

漏れはフリーだけど、40万はちゃんと職場探した方が
いいっと思われ。
0140デフォルトの名無しさんNGNG
>>1-1000 今週の漫談スレはここでつか?
0141デフォルトの名無しさんNGNG
>>138
Fortran用のライブラリを最新言語用に書き換えないことには
0142山崎渉NGNG
(^^)
0143デフォルトの名無しさんNGNG
ageage
0144 NGNG
電気はガソリンの代わりになるが、牛乳はガソリンにはなれない。

だから、javaもCにはなれない。
0145デフォルトの名無しさんNGNG
>>137
感触的にはFortranというより流体力学の計算という特殊技術が稼げているのだと感じるな。
今はもうプログラム技術じゃ稼げないからね、いかに安く作るかとみんな研究するものだから
一番手っ取り早いのは給料下げろになってしまってる、やってられんよ。
オブジェクト指向その他ソフト工学は勉強しても金にならなんです。
0146デフォルトの名無しさんNGNG
>>145
うちの会社は給料は絶対下げないと明言してくれました。ビバ。
0147デフォルトの名無しさんNGNG
>>144

そんな大きな違いじゃないよ。
せいぜい顕微鏡の視点、人間の視点、望遠鏡の視点くらいのもの。

顕微鏡の視点でなきゃできないことはたくさんある。
でも顕微鏡の視点で山ほど観測して必死に切り貼りして
人間や望遠鏡の視点の代わりにできるかもしれんがそりゃ大変すぎる。誰もやりたくない。

普通は人間の視点で十分だ。
でも人間個人の視点では誤った方向に進んでしまったり、
大きなシステムで協調が取れなかったりなどの問題もある。

望遠鏡の視点なら大きな範囲を大まかに観測できる。
でも細かな部分は見えない。

結局、コンピュータ主導ではなく人間様の目的主導で、
状況に合わせて人間様が必要十分を満たす言語を選べばいい、ただそんだけ。

望遠鏡が無限に性能がよく、いくら拡大しても詳細に観測できるなら・・・・・・
-> CPUの性能が無限にいいなら・・・・・・
の話は現実に不可能だしねぇ。
0148デフォルトの名無しさんNGNG
美人のねーちゃんが言いました。

「子供が欲しいんですがどうすればいいですか」

ASM人:
まず原子が結合して分子を・・・・・・

C人:
それではあなたから卵子をいただきまして、それを受精させて培養・・・・・・

Java人:
・・・・・・(突如ズボンを脱ぎだす)
0149デフォルトの名無しさんNGNG
JAVAのコンパイラー及びVMをCの代わりにJavaで書くことは
あり得ない。

そこにCの居場所がある。
0150デフォルトの名無しさんNGNG
Java人:
・・・・・・(突如ズボンを脱ぎだす)

しかしチンコの立ち上がりは遅っ
0151デフォルトの名無しさんNGNG
VMはともかくコンパイラはJavaでかけるだろ。普通に。
0152デフォルトの名無しさんNGNG
>>VMはともかくコンパイラはJavaでかけるだろ。普通に

実行速度遅すぎだろ。普通に。
0153デフォルトの名無しさんNGNG
つか、javac は Java で…
0154デフォルトの名無しさんNGNG
>>148
ワラタ
D言語はどうたとえる?
0155デフォルトの名無しさんNGNG
>>153
じゃあJavacはいったい何で?
0156デフォルトの名無しさんNGNG
アンチjava厨はjavacがjavaで書かれていることを知らないアホばっかりだったとは!
0157デフォルトの名無しさんNGNG
>>156
じゃあJavacはいったい何でコンパイルしたの?
バイトコード直書き?
0158デフォルトの名無しさんNGNG
最近のCPUはCPUが設計しとるで〜ってのは有名な話ですなぁ。ところで・・・・・・

>>157

残念ながらあなたは何も理解してない厨です。理解するまで世間様に顔見せしないことをオススメします。
アンチjava軍団もあなたみたいな奴は受け入れないでしょう。
0159デフォルトの名無しさんNGNG
>>158
わざわざブーツストラップまでして低速なコンパイラ作る必要もないと思って。
0160デフォルトの名無しさんNGNG
>>148

これおもしれーな。

COBOL人:
「恋愛感情における子作りの意義というのはすなわち...」
と饒舌だが何いってんのかさっぱりわからず、やることも大したことがなく・・・
0161山崎渉NGNG
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0162デフォルトの名無しさんNGNG
>>146
そのかわり即クビなのかも。
0163山崎渉NGNG
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0164デフォルトの名無しさんNGNG
いーかげん、JDK の build に同じバージョンの JDK を必要とする
ってのどーにかならんのですかね?
0165デフォルトの名無しさんNGNG
>>148

Scheme人:、で考えようとしたら
近親相…しか思い浮かばなかった…鬱。
0166デフォルトの名無しさんNGNG
>>164
意味がわかりません
0167デフォルトの名無しさんNGNG
>>164
あるバージョンのJavaコンパイラソースを
同じバージョンのコンパイラでコンパイルしたいのか?
0168デフォルトの名無しさんNGNG
>160

>COBOL人:
>「恋愛感情における子作りの意義というのはすなわち...」
>と饒舌だが何いってんのかさっぱりわからず、やることも大したことがなく・・・

爆)
いるよいるよ、メインフレーム上がりの55歳!
団塊の世代よ、早く死ね!
0169デフォルトの名無しさんNGNG
この掲示板の右下のパスワードを当てようwhttp://jbbs.shitaraba.com/anime/231/
0170デフォルトの名無しさんNGNG
>>160

SQL人:
美人「子供がほしいんですがどうすればいいですか?」
SQL人「INSERT INTO 社会
    SELECT 美人.卵子 + SQL人.精子 AS 子供 FROM 美人,SQL人」
美人「ろ、ROWNUMの条件が抜けて……きゃあぁぁぁぁ〜」















SQL人「……ROLLBACK」
0171デフォルトの名無しさんNGNG
>>170

コミットォォォ!!
0172デフォルトの名無しさんNGNG
CREATEVIEW


・・・ハァハァ
0173デフォルトの名無しさんNGNG
BASIC人:
他人からは頭が悪い以外、何を言ってるのかさっぱりわからず、
もちろん美人のねーちゃんと結合することも出来ないが、
オナニーさせたら右に出るものはいない。
0174デフォルトの名無しさんNGNG
冴子先生ハァハァ
0175デフォルトの名無しさんNGNG
>>170
>>173
ワラタ
独立してスレ立てれ。頼む
0176山崎渉NGNG
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉
0177デフォルトの名無しさんNGNG
AOTコンパイラなら、GCJとか商用ベンダの奴とかありますが。
0178山崎 渉NGNG

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
0179山崎 渉NGNG

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
0180山崎 渉NGNG
(^^)
0181山崎 渉NGNG
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン
0182デフォルトの名無しさんNGNG
Javaは「汎用」言語にはなりません。
これは定説です。(あたりまえです。そのように設計されていません)

C++の後継ってのはあからさまに違うと思うが、
シェアの一部は奪うかもね。
以上。
0183デフォルトの名無しさんNGNG
>>182
Windowsアプリ開発用の似非C++が完全にJavaに食われるだけ。
本物のC++はJavaには何も奪われない。
0184デフォルトの名無しさんNGNG
IT業界にアージャイル開発とデザインパターンを広めよう!

C言語を使ってかなり苦労したので
その苦労を最小限におさえるために
アージャイル開発、デザインパターンを
多くのプログラマに使って欲しいと思うことがある。

一種の挨拶みたいなものだね。
「なるべく挨拶を心がけましょう。」
「なるべき綺麗な字で書きましょう。」
のように

デザインパターンを使うこと、アージャイル開発することが
プログラマの習慣、常識になってほしい。

なんとか、デザインパターン文化、アージャイル開発文化を押し広げられたら・・・。

IT業界の将来はオブジェクト指向とアージャイル開発が握っています!
0185デフォルトの名無しさんNGNG
>>183
> 本物のC++はJavaには何も奪われない。
∵本物の C++ はどこにも存在しない。
0186デフォルトの名無しさんNGNG
C++の機能的後継はD言語

主要プログラミング言語としての座はしっかりとC++からJavaに後継される。
0187デフォルトの名無しさんNGNG
C++はいつから主要プログラミング言語になったんだ?
0188デフォルトの名無しさんNGNG
事務なんかは知らんけど、
ベンチマーク取るようなソフトではC++が多い。
過去の資産を含めるとC++をCが圧倒するが、
最近はミドルウェアやライブラリの関係で
C++以外に選択肢がない状況もある。
0189デフォルトの名無しさんNGNG
JavaとC++は比較できない。
用途と実力を鑑みるとPerlが好敵手となるでしょう。
0190デフォルトの名無しさんNGNG
C++がPerlのライバルか
0191デフォルトの名無しさんNGNG
PerlでDirectX
Perlでスーパーπ
0192デフォルトの名無しさんNGNG
PerlでDirectXできるんですか!?
0193デフォルトの名無しさんNGNG
どうしても、JavaがPerl以下だと認められないようですね。
ここに在る現実をみつめてください。
0194デフォルトの名無しさんNGNG
そしてC++がJava以下であるという現実も
0195デフォルトの名無しさんNGNG
悟れません。
配列のアクセスだけでも5倍の性能を持つC++が
JVMにかなわないのは精神の問題ですか?
0196デフォルトの名無しさんNGNG
Perlまででてきてんのか?w

じゃもひとつ加えとけや、Ruby
0197デフォルトの名無しさんNGNG
>>195
いつ頃の話なんだろうか
0198デフォルトの名無しさんNGNG
>>197
相変わらずだよ。特定の条件下では改善されたようだけど。
0199デフォルトの名無しさんNGNG
そのネックとなるコード書いて比較してここにあげてみそ
0200デフォルトの名無しさんNGNG
200get
0201デフォルトの名無しさんNGNG
バブルソートの例ではCよりもJavaのほうが速いって例があったよな
0202デフォルトの名無しさんNGNG
速度の面から言えば、マシンに合わせてチューニングできる自由
を持つC/C++の方がどう考えても有利だろ。
0203デフォルトの名無しさんNGNG
javaに限らずだが中間言語系はvmが各CPUにあわせた最適化と
統計取っていく最適化方式で差はほとんど無い

統計取るCなどのネイティブ系の最適化は非常に協力なのだが
同じ環境で実行出来ない場合もあるし非現実的である
たとえばデータベースなんて日々の売り上げなんかでどんどん変わってくるよね
それに対応できるのが中間言語系で対応できないのがネイティブコード系

MSが中間言語への思い切った方針転換はhotspot技術が
現実的になることを知ってのことだし

実際のところ細かいCPUにあわせたVMはでてないけど、アプリはそのままで
自動的にSSE対応で最適化されて高速化されていたりするのを見ると
今はまだ速度的にやや弱いのがこれからもどんどん最適化されていくだろう
また、hotspotや並列GCなどはSMPなどのスループット系環境で効果が大きいね
マルチコア化が今後のトレンドになるだろうし、それらも後押しするかも

Cの土壌は高級アセンブラとして依然残るだろうがアプリレベルではjavaが
今後どうなるかは分からないが中間言語系になってくるのはまず間違いない
0204デフォルトの名無しさんNGNG
今ネット回ってJava調べてたんだけれども、Javaにはテンプレが無いってほんと?
これから作られるの?
0205デフォルトの名無しさんNGNG
>>204
Genericsで検索して、またおいで。
0206デフォルトの名無しさんNGNG
http://page4.auctions.yahoo.co.jp/jp/auction/d47227135
0207デフォルトの名無しさんNGNG
age
0208デフォルトの名無しさんNGNG
半年近くほったらかしのスレをいまさらあげるなボケ、氏ね
0209デフォルトの名無しさんNGNG
正直いって、JAVAの一番嫌いな点は、
ずばり、「識別子が長いこと」だ!!
0210デフォルトの名無しさんNGNG
isDisplayChangeSupportedなんて長い上に意味がわかりづらい
0211デフォルトの名無しさんNGNG
これからの時代、識別子はどんどん長くなるに違いない
0212デフォルトの名無しさんNGNG
Win32とかの時点で長いのはもうどうでもいいやというきになったよ
当時と違ってIDEで補完前提なのですべて打ち込むことないし

X68方面は短いのが多くてよかった・・・
0213デフォルトの名無しさんNGNG
結論:C#が後継でした。
0214デフォルトの名無しさんNGNG
>>148
おいおい、これ↓パクんなよ

コンピュータジョーク - 自分の足を撃つには
http://hp.vector.co.jp/authors/VA000092/jokes/

と1年前の人間に突っ込んでみる。
どうせだったらこいつのJava、C#、D版を考えてくれよ

0215デフォルトの名無しさんNGNG
http://www.bagley.org/~doug/shootout/bench/lists/
Javaは遅すぎるし
メモリーの食い方が尋常じゃない
0216デフォルトの名無しさんNGNG
>>215
メモリは確かに食うが、いつの時代のベンチひっぱりだしてるんだよ
よほどJavaに恨みがあるらしいな
今はほとんどの計算程度はネイティブとかわらん
0217デフォルトの名無しさんNGNG
>>216
今の時代のベンチ出してから言え
0218いなむらきよしNGNG
キケー!
0219デフォルトの名無しさんNGNG
今のところ、携帯端末に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];

こんなこともしたっけな。
0220デフォルトの名無しさんNGNG
>>219
new使うってことはC++だろ
namespace乱れるからマクロやめてenumで我慢しろ
0221デフォルトの名無しさんNGNG
>>219
> #define var1 var[0]
> #define var2 var[1]
> #define var3 var[2]

ゼロオリジンだと混乱する厨ですか
そういう厨はプログラマ向いてないから辞めていいですよ
0222デフォルトの名無しさんNGNG
ゼロオリジンに疑問を抱かないのはデジタルドカタ
0223デフォルトの名無しさんNGNG
>>217

http://www.geocities.jp/toshio16369/column/021103a.html
http://www.geocities.jp/toshio16369/column/021108a.html

ちなみにこれらも2年近く前で今はさらに早くなってるぞ

ダイナミックな最適化ってのは非常に面白いテーマでCPUを判別して
自動的にSSEとかMMX使うコードが生成されたりしてる

バイナリは数年前のものであっても最新のVMで動かすと
マシンパワーがそのままでも恐ろしく早くなってたりするわけだ
0224デフォルトの名無しさんNGNG
>>223
1つめのURL。やっぱJava、遅いジャン・・・。
2つめのURL。げ!!
0225デフォルトの名無しさんNGNG
メモリ使用量が恐ろしいな・・・
0226デフォルトの名無しさんNGNG
D言語の普及と発展キボンヌ
0227デフォルトの名無しさんNGNG
ちなみにサーバーVMはたしかに早いが最適化が強いので
クラスロード時とか時間が結構かかる

クライアントのソフトはサーバーVMは実用的にならない場合も多いよ

そしてRCのJ2SE5はクライアントVMでもサーバーVMにだいぶ近い最適化しているっぽ
あきらかに1.4系より実行までの待ち時間は多少増加している
でもたしかに早いし、1.4のサーバーVMのようながたつきはすくない

あとアクセラレーションにOpenGL使ってるというらしいのだがこれは未チェック
とくにLinuxでおそらく恐ろしい速度改善されてると思う
0228デフォルトの名無しさんNGNG
>>220
Javaだって。

これをC/C++用のプリプロセッサで展開してから、javacかけるんだよ。
携帯でのアプリ開発では必須知識。

int a, b, c;
とかすると

int x[] = new int[3];
とするより、クラスファイルサイズがでかくなるからね。
0229デフォルトの名無しさんNGNG
でも実行時にはメモリ喰いそうだな
速度的にもインデックスや範囲チェックとかあるし

まぁ、サイズ画きついのは確かだが初期の携帯用を切り捨てれれば
かなりらくだけどなぁ
0230デフォルトの名無しさんNGNG
>>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
0231デフォルトの名無しさんNGNG
Java厨がよく言うセリフ
「Javaは昔より速くなったんだぞ。昔のデータを持ち出して遅いと言うな」

しかし持ち出してくるベンチマーク情報は
古いgccを使って比較しているから滑稽
0232デフォルトの名無しさんNGNG
>>231
それいったらJavaは実行時最適化なもんだから実行時にオプションで調節しないとな

>>223のサイトのはgccは最適化オプションいれてるくせにJavaのほうは実行時になんの調節もしてないわけだが
0233デフォルトの名無しさんNGNG
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とかいろいろ試してみるかのう
0234233NGNG
ちなみに同じ環境で
Java -Xint(インタプリタモード)
はさすがに150秒ですた・・・・
0235デフォルトの名無しさんNGNG
>>233
CPU時間?実時間?
0236233NGNG
実時間
0237233NGNG
マシンスペックは同じ

J2SE1.3.1

ClientVM 26秒
ServerVM 12秒
インタプリタ 160秒

hotspot実装したのがこの1.3でちょうどJavaが業務系に使われ始めただけあって
演算系ならそれなりの速度だが、サーバーVMでは1.4系と大きな差がある模様
0238デフォルトの名無しさんNGNG
この-serverって、tomcatとかは普通にデフォルトで入ってる、ってことでいいのかなあ・・・?
今、catalina.batを開いてみたら、server=y、見たいなの以外は、とくに入ってなさそうだけど・・・。
これは違うよな・・・?
0239デフォルトの名無しさんNGNG
serverVMは標準JREには入っていないからデフォルトで入っているとは考えにくいな

SDKには入っていてServerVMは再配布可能なので自分でアプリ配布する場合は
JREの中に組み込んで配布するがよろし
0240デフォルトの名無しさんNGNG
Tomcat5で、管理ツール開いてみたら、Java VMのところのパスがこうなってた。
C:\j2sdk1.4.2_04\jre\bin\server\jvm.dll
これは多分使ってる、ってことでよさそうじゃない?

>serverVMは標準JREには入っていないからデフォルトで入っているとは考えにくいな
まじだね。Java\j2re\binの中見てみたら、clientしかなかった。知らなかったよ。
0241デフォルトの名無しさんNGNG
>>240
ということは環境判断してServerVM使うかどうかきめてるのかな
0242デフォルトの名無しさんNGNG
ServerVMって起動に嘘くさいほど時間かかるよな。
あと、嘘くさいほどメモリ喰うよな。
0243デフォルトの名無しさんNGNG
嘘じゃなくて本当だろ
最適化の度合いが強いってことは準備がかなり喰うのだ

それにしてもなんかガキっぽいしゃべりかただな
0244デフォルトの名無しさんNGNG
それにしてもじじくさいしゃべりかただな。
0245デフォルトの名無しさんNGNG
C言語厨はなぜオブジェクト指向が理解できないのか
http://pc5.2ch.net/test/read.cgi/prog/1096039623/
C++使えると豪語する奴=本当はCしかできない低脳 
http://pc5.2ch.net/test/read.cgi/prog/1094445966/
C++しか使えない奴はプログラマとは認められず3
http://pc5.2ch.net/test/read.cgi/prog/1090160842/
IT業界の癌たるC言言語厨をいかにしてクビにするか
http://pc5.2ch.net/test/read.cgi/prog/1095924333/
C厨がこの先生きのこるには…
http://pc5.2ch.net/test/read.cgi/prog/1090145602/
★C言語開発者を一斉逮捕へ 京都府警★
http://pc5.2ch.net/test/read.cgi/prog/1084280872/
C厨がいくら糞でも、普及してしまえば発注者の勝ち
http://pc5.2ch.net/test/read.cgi/prog/1094127625/
C++使えない奴はプログラマとは認められず2
http://pc5.2ch.net/test/read.cgi/prog/1061940405/
C++は時代遅れの糞言語
http://pc5.2ch.net/test/read.cgi/prog/1094443579/
JavaをなめてかかっているC/C++厨は頭が悪いpart2
http://pc5.2ch.net/test/read.cgi/prog/1091643618/
低レベルなC言語厨を逮捕する方法
http://pc5.2ch.net/test/read.cgi/prog/1096038785/



C言語厨ってこんなに叩かれるほどスキルが下がってしまったんだね。
C言語の時代に陰りが見えてきたね。
0246デフォルトの名無しさんNGNG
CはCの良さが、JavaはJavaの良さがある

ただ、マシンスペックに余裕が出てきたことで
開発効率や安全なコードといったところが重要視されていって
.netやJavaといったVM系が主流になっただけ

アセンブラからCへの流れと同じだな
全体が見渡しやすくなって保守性があがり、移植性もよくなったと
0247デフォルトの名無しさんNGNG
コピペに反応すんなよ
0248デフォルトの名無しさんNGNG
BASICの時代はあったけど、アセンブラの時代なんか一度も無かった。
0249デフォルトの名無しさんNGNG
>>248
Unixの特徴は移植性を高めるためCでOSを書いたところにあるんですよ。
それまではアセンブラ全盛でしたから。
0250デフォルトの名無しさんNGNG
>>246
アセンブラからCへの流れってのは、
「汎用性のあるコードが書ける」という
ファクタの方が大きかったんだけどな。
0251デフォルトの名無しさんNGNG
>>250
いや、格段に楽で保守性があがったわけなんだが。
0252デフォルトの名無しさんNGNG
Javaは関数オブジェクト使える?
0253デフォルトの名無しさんNGNG
そのまえに関数ベースって考えを何とかしろ
0254デフォルトの名無しさんNGNG
>>253
「何とかしろ」ってどういうこと?
0255デフォルトの名無しさんNGNG
>>253
誰にいってんの?
0256デフォルトの名無しさんNGNG
かんすうべえすぅ?
またアホの新語ですかー
0257デフォルトの名無しさんNGNG
ホワイトベースの仲間かな
0258デフォルトの名無しさんNGNG
>>252
リフレクション使えば似たような事はできるのでは

と知ったかぶってみるテスト
0259デフォルトの名無しさんNGNG
Javaってconst修飾ないんですか?
0260デフォルトの名無しさんNGNG
マクロもないな
0261デフォルトの名無しさんNGNG
少なくとも、C#よりはJavaのほうがいいよね?
0262デフォルトの名無しさんNGNG
微妙
0263デフォルトの名無しさんNGNG
javaはこの先実行速度が改善される見込みはあるの?
0264デフォルトの名無しさんNGNG
改善されてるじゃん
ポストCは難しいけど
これはこれで生き残るんだろう
0265デフォルトの名無しさんNGNG
>>1
Javaを知っていれば、C,C++の後継になれないことは自明。C,C++とは共存する言語。
これは、「なれる」と言うかどうかで理解度を問える踏み絵問題。

糸冬 了..._〆(゚▽゚*)
0266デフォルトの名無しさんNGNG
GC言語である以上は、メモリ管理のプログラムがかけないからねぇ。
0267デフォルトの名無しさんNGNG
JavaとC言語は補完しあう関係
0268デフォルトの名無しさんNGNG
そこにスクリプト言語Groovyも参加ですよ。
0269デフォルトの名無しさんNGNG
おまけにLythonですよ
0270デフォルトの名無しさんNGNG
GCはやくなってる・・・ガクブル
0271デフォルトの名無しさんNGNG
で、一体何時になったら
#ifdef
に類する仕組みを取り入れてくれますか?
0272デフォルトの名無しさんNGNG
当分無いと思われ。
Java使う人で どーしても必要ならプリプロセッサ使うか作るかしてるだろうし。

D言語とか見ても #ifdef みたいのは減ってく傾向にあるのではないかと。
0273デフォルトの名無しさんNGNG
ていうか、VM用にコンパイルしたら、元の言語がなんだろうが
一緒だと思うんだが。Javaにこだわる理由もない。
0274デフォルトの名無しさんNGNG
そこで.NETですよ。
0275デフォルトの名無しさんNGNG
0276デフォルトの名無しさんNGNG
>>219
携帯がJava採用したのは
お馬鹿PGにメモリ破壊させないためとか聞きましたが。
0277デフォルトの名無しさんNGNG
そこでBREWですよ
0278デフォルトの名無しさんNGNG
D言語は…とても流行りそうには無いな。
0279デフォルトの名無しさんNGNG
C++とJavaって、どんどん違う方向に進化してるじゃん。

Javaは、とことんランタイムの動的解決にこだわるけど、
C++は、テンプレートライブラリとかオペレータのオーバーロードとか、
プリプロセッサによるコンパイル時の静的解決マンセーな風潮になってる。

どっちがどっちを駆逐するとかいう話じゃなくて、
全く逆の方向にどんどん突っ走ってる感じ。
0280デフォルトの名無しさんNGNG
そこでc#ですよ
0281デフォルトの名無しさんNGNG
ネイティブコンパイルができるjavaコンパイラが存在することを知らないのかC厨は
0282デフォルトの名無しさんNGNG
GCJはまだ使い物になる段階じゃない
0283デフォルトの名無しさんNGNG
>>279
>静的解決マンセーな風潮になってる。
風潮っつか、カルマ?
所詮、高級マクロアセンブラの拡張ですから。
0284デフォルトの名無しさんNGNG
C言語はもともとアセンブラで記述されていたUNIXの移植性を高めるために生まれた言語だよね
だから高級言語としては特異な言語だと思う
OSの記述からアプリケーションプログラムの記述まで、ここまで汎用的に使われる高級言語はC言語以外にないよ
0285デフォルトの名無しさんNGNG
複雑なアプリケーションプログラムの記述にはC言語はどんどん使われなくなってるわけだが。
散々既出だがJava:Cの関係は、アセンブラ:Cの関係と一緒。
今でもアセンブラでしか書けないコンポーネントが残っているのと同様に
Cでしか書けないコンポーネントもずっと存在し続けるだろう。だがCで書くべき範囲はどんどん狭くなる。

Windows全盛だからWindowsアプリは.NETだろうけどね。同じこと。
0286デフォルトの名無しさんNGNG
日本が誇る電気電子は組み込み系プログラマが不足気味
Cやasmが一番待遇いいんだよ、きっと
0287デフォルトの名無しさんNGNG
>>284
そこでD言語がくるのですよ。
0288デフォルトの名無しさんNGNG
「OSの記述」が特別すぎてソレを元に「様々な」っていわれても狐に包まれたみたいだ。
0289デフォルトの名無しさんNGNG
>>288
>狐に包まれたみたいだ。
シチュエーションが見えてこない。
0290デフォルトの名無しさんNGNG
http://www.mozilla.org/images/firefox-oneoh-top.png
これかと
0291デフォルトの名無しさんNGNG
JavaがネイティブでC/C++と勝負しても仕方無いんじゃないかと。
JavaにはJavaの道がある。でかい業務システム開発のメインと
なる言語だろう。Javaは裏方的なC/C++に支えられて、その道を
歩むのであって、C/C++の後継なんて目指したらおしまいだ。
0292デフォルトの名無しさんNGNG
COBOL・汎用機(ホスト系)の代わりに、
Java ・分散環境(オープン系)で活躍しそうだな、Javaは。

ただし、J2EE環境(サーバサイド)くらいしか使い道がないんじゃないの、
Javaって。
汎用機の代わりくらいじゃない、あとは教育用としてJavaは使えるな。

デカイところの汎用機はもうしばらくCOBOLでやっていくと思うが、
普通の所は、汎用機は廃棄して、分散コンピューティングでのJavaにしちまうよ。
JavaはCOBOLよりも機能が多いし。

あと、教育用ね。Javaはホント、学んでいて面白いから!
CやC++なんかよりも楽しいよ。
素人へのプログラム教育用として、Javaは最適だと思う、、、俺の個人的意見ではね。

0293デフォルトの名無しさんNGNG
UML厨の仮想実装言語として
0294デフォルトの名無しさんNGNG
本当に楽しくなるのはその初心者の領域こえてからなんだがね

Cは残る
高級アセンブラとして組み込み用としてもダイレクトに伝わりやすいところだから

C++が中途半端
Javaや.NETやってるとオブジェクト指向で業務ロジックだけ考えていればいいという
言語ではないから
この領域はDあたりがいてくれるといい

Javaや.NETはこれらとは目指すところが違いすぎる
結果としてC++の領域を一部(といってもアプリのほとんど)はかわる
すでに取って代わってるしね

Cが普及したのはやはりBASICと比較しての高級言語で高速性であって
当時のマシンパワーが今とは比べ物にならないこともあって
マシンパワーに余裕が出てきた今となってはスクリプト系含めての
ロジックに注目するだけの言語系への移行が加速する希ガス
0295デフォルトの名無しさんNGNG
JavaってVM誰も作らなくなったらどうするんだろ?
EXEも作れるらしいけどVMから独立してるんだろうか?
0296デフォルトの名無しさん05/02/07 02:31:03
今から勉強するならC言語勉強した方がいいの?
0297デフォルトの名無しさん05/02/07 07:32:42
Cは基本。モグリでないなら知ってて当たり前。
0298デフォルトの名無しさん05/02/07 13:05:59
>>295
CってOS誰も作らなくなったら〜ってのと同じ。
0299デフォルトの名無しさん05/02/13 02:06:38
需要さえあれば特別な事情でもないかぎり誰かが作る
0300デフォルトの名無しさん2005/04/08(金) 08:58:20

 / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\
 |       300GETしていいですか? .            |
 \____  ________________/
    /||ミ  V
   / ::::||
 /:::::::::::||____
 |:::::::::::::::||       ||
 |:::::::::::::::||│ /  ||
 |:::::::::::::::|| ̄\   ガチャッ
 |:::::::::::::::||゚ ∀゚)   ||
 |:::::::::::::::||_/    ||
 |:::::::::::::::||│ \   ||
 |:::::::::::::::||∧ ∧∩ ..||
 |:::::::::::::::|| ゚∀゚)/  .||
 |:::::::::::::::||∧ ∧∩ ..||
 |:::::::::::::::|| ゚∀゚)/ . ||
 |:::::::::::::::||    〈......||
 |:::::::::::::::||,,/\」......||
 \:::::::::::|| ̄ ̄ ̄ ̄
   \ ::::||
    \||
0301デフォルトの名無しさん2005/04/29(金) 01:10:46
Java はだめだ。
Java環境はまあよいとして、
Java言語は、(特にJava5 の取って付けた様な generics は)
しょぼいというか、つかえんというか...
ありゃみらいがないねぇ...
0302デフォルトの名無しさん2005/04/29(金) 01:25:16
>>294
>>C++が中途半端

C++から最近Javaやり始めたんだけど

Java 5 の generics の 中途半端さは 最悪。
もともと言語設計思想自体が、保守的すぎなのだ。
いまさら generics 実装して、全然なじんでないし、
バイナリも"まぜるな危険"だし...

そもそも、Exception指向強すぎて...

Javaライブラリも、機能は多いが、押し付け感強いし...

ま、日本人が好きそうな言語設計なのは分かるけど...

今考えると、C++ってJava以上に言語ってものをよく考えて作られたんだなって思うよ。
良くも悪くもね。

0303デフォルトの名無しさん2005/04/29(金) 01:49:41
つりかね
genericsはテンプレートとは別の目的だよ

Cはずっとやってきたからわかるが力量によるコードの差が激しすぎ

そしてJavaやC#についていけないへっぽこCプログラマも多い
0304デフォルトの名無しさん2005/04/29(金) 02:25:51
>>303
>>genericsはテンプレートとは別の目的だよ

その通り。
Java5 は generics をのせるべきではなかった。
Java5以前の資産を大事にするのなら...

0305デフォルトの名無しさん2005/04/29(金) 10:50:01
つーか1.4までと互換性あるんだからかまわんと思うが
互換性がないのならアレだが
0306デフォルトの名無しさん2005/05/02(月) 02:26:09
Java5 で、Map< T, V > で受けようと思っても、
Java 1.4 は あくまで Map は Object,Object
結局ストイックに交ぜたければ、Object,Objectで受けてキャストするか、
例外記述になっちまう。

てか、Javaってキャスト大杉。
(型) によるキャストは、C言語と大差ない弊害の多い記述と思われ...
SUNも自覚したためgenerics(なんて御大層な名前で)実装したんだろうが...
そもそもJavaが持つ言語特性とあいいいれにくいと思うよ...
いまさらあんな言語拡張が、世のため人のためだろうか...

Java は、C++ や C# のまねなぞする必要ないのに...


0307デフォルトの名無しさん2005/05/02(月) 11:26:11
いや、そういうときはコレクションそのままつかうのではなく自分で実装すればいいだけかと

混ぜる場合もそれらをパッケージングしたBeans作ってそれをいれるだけ

Objectありきで設計してる時点で間違ってるよ

どっちにしろGenericsは必須
テンプレートの真似事にみえるのは実装側だろうけど、そっちはたしかになくてもいい
0308デフォルトの名無しさん2005/05/04(水) 03:24:26
genericsはどうも最初は頑なに拒んでたがC#の出現で渋々採用といった感じだよな
シンプルなOO言語であることにこだわる余りにキャストの嵐では本末転倒だからさっさと採用するべきだったんだろうけどなぁ
0309デフォルトの名無しさん2005/05/04(水) 08:34:32
オートボクシングが採用されたからはじめて実用的になったともとれるからなぁ
0310デフォルトの名無しさん2005/05/22(日) 14:17:22
Genericsなんて今までなかったのが不思議なくらい必須の機能。

Java(1.4以前)でもC#でも、たかがList使うだけでキャストの嵐になる。
馬鹿馬鹿しくてやってられない。
こんなことちょっと触ればすぐわかる。
0311デフォルトの名無しさん2005/05/22(日) 14:33:33
つーか、コレクションの場合なんでもいれれるようにObject型にしてるだけだし
継承して使えというスタンスだったのでは?
0312デフォルトの名無しさん2005/05/22(日) 23:24:54
>>311
もしそういうスタンスなあらC#用には普通にある
型限定のコレクションクラスを自動生成するツールが
Javaでは全く出てこなかったのが不思議なんだよな
コピペとはいえいちいち作らなきゃいけないのは問題外だと思うが
Javaプログラマはコレクションなんてどうでもよかったのかな?
0313デフォルトの名無しさん2005/05/22(日) 23:47:36
クラス指向が強かっただけかと
プリミティブなものを直に入れるよりは多態で扱うとか
匿名クラスでイベント扱うのがデフォな時点で気がつけ

それにJavaプログラマと一括りにすな、C#厨
0314デフォルトの名無しさん2005/05/23(月) 00:01:34
>>313
本当に見たことが無いんでみんなコレクションのキャスト問題なんてどうでもよかったんじゃないかと思ってさw
0315デフォルトの名無しさん2005/05/23(月) 00:15:53
コレクション使ってないコードなんてあんまりきいたこともないが
新たに大量動員された業務プログラマの8割は多態理解しらなくて
困ったことはある

オブジェクト指向理解しているとかぬかすくせに

List list = new ArrayList();
がずっと理解できないやつがちらほらと

まぁ、今はgenerics導入で上記コードが警告でるのも便利
0316デフォルトの名無しさん2005/05/27(金) 20:45:02
まぁ、Java の generics なんて、ただのシンタックス・シュガーでしかないがな
0317デフォルトの名無しさん2005/05/27(金) 21:27:03
型の安全性が増えていい結果になったな>じぇねりくす
0318デフォルトの名無しさん2005/05/27(金) 22:06:21
>>316
Javaの思想からすればむしろそのほうが都合がいい
0319デフォルトの名無しさん2005/06/12(日) 00:29:13
Javaにポインタとアドレスがあれば
もっと分かりやすい言語になるのにね
0320デフォルトの名無しさん2005/06/12(日) 01:00:14
このスレ釣りばっかかよ
0321デフォルトの名無しさん2005/06/17(金) 16:24:32
assertの実装に笑った
0322デフォルトの名無しさん2005/06/17(金) 17:13:55
詳細希望
0323デフォルトの名無しさん2005/06/17(金) 17:17:41
NIOのDirectByteBufferは明らかにCで確保した領域をJavaで扱うために作ったとしか思えない
0324デフォルトの名無しさん2005/06/17(金) 18:32:25
NIOもVolatileImageも1.4からは割り切ってパフォーマンス追求する動きにでてるからな
安全性はそれなりに確保できるしわるくないのでは
0325デフォルトの名無しさん2005/07/25(月) 22:58:07
C++で書いて移植したほうが遥かに現実的だという事実。
0326デフォルトの名無しさん2005/10/23(日) 23:31:52
まだ習い始めたばっかだけど、equalsに一貫性がないのが気持ち悪い。
0327デフォルトの名無しさん2005/10/24(月) 00:19:00
クラスごとに判断基準違うものをどうしろと
0328デフォルトの名無しさん2005/10/24(月) 02:50:24
デフォの動作がインスタンス変数全部比べてくれるってのが良くない?
それで困るときだけ変えればいいし。
このクラスのequalsは〜とかいちいち面倒くさいし、混乱の元じゃん。
toStringもデフォでインスタンス全部出力すりゃいいのに。
0329デフォルトの名無しさん2005/10/24(月) 02:58:46
>toStringもデフォでインスタンス全部出力すりゃいいのに。
これどういうこと?
0330デフォルトの名無しさん2005/10/24(月) 03:48:58
いや、toStringでオブジェクトの現在の状態を表す文字列が出力されるようにオーバーライドするだろ?
それをわざわざしなくても自動的にそうして欲しくない?
これもこれで困るときだけ変えればいいし。
0331デフォルトの名無しさん2005/10/24(月) 12:00:41
その状態ってクラスごとじゃないと結局わからんだろうに
デフォはObjectの動作あるんだしこれ普通だろ
0332デフォルトの名無しさん2005/10/24(月) 17:55:09
>その状態ってクラスごとじゃないと結局わからんだろうに
そりゃ分かんないよ。
ただJavaが元々そういう機能をサポートしてたら大丈夫じゃん。
機能って言うかただのコンパイル時のコードの補完?
全然難しくないでしょ。インスタンス変数読み取って、決まった形式の文字列作るくらい。
だって毎回
"[name="+name+〜+"]"
みたいなわかりきってること書くのだるくないの?
リフレクションで簡略化できるだろうけど、デフォでやってくれた方が楽だし。
これのデメリットが見つからない。
0333デフォルトの名無しさん2005/10/24(月) 18:36:19
それが状態を表すと思ってるの?
Beansならそれなりにやれるけど、それ以外はムリ
0334デフォルトの名無しさん2005/10/24(月) 19:01:48
>それが状態を表すと思ってるの?
そう思ってるけど、もしかして違うの?
0335デフォルトの名無しさん2005/10/24(月) 19:14:24
違う

だからBeans以外は[〜]って表記してないと思うが
0336デフォルトの名無しさん2005/10/24(月) 19:43:17
マジ?俺の読んでるCoreJava2って本で推奨されてるよ。
普通はどうやるの?
0337デフォルトの名無しさん2005/10/24(月) 20:02:18
toStringの使い方は異なる
[〜]と表記しなければならないってことはない

Swing使っていればtoString大量に出てくるからどう使えばいいか分かりそうだが
0338デフォルトの名無しさん2005/10/24(月) 20:46:53
んー、常にこう使うって訳じゃないのはわかるよ。
でも基本はデバッグに便利なようにインスタンス変数の状態を[〜]みたいに書くんじゃない?
>Swing使っていればtoString大量に出てくるからどう使えばいいか分かりそうだが
良く分かんないけど、例えば、JLabelのtoStringはこうだったよ。
javax.swing.JLabel[,0,0,0x0,invalid,alignmentX=0.0,alignmentY=0.0,〜省略〜,verticalTextPosition=CENTER]
見当違いなことしてたらわりぃ。
0339デフォルトの名無しさん2005/10/24(月) 22:09:25
いや、リストとかテーブルとかのセルや各項目の表示方法などね
toStringを使うようになってるから

それにその表記はbeansだから可能な
0340デフォルトの名無しさん2006/01/01(日) 03:19:59
意味も無くage
0341デフォルトの名無しさん2006/01/01(日) 04:44:33
長寿スレだなw
10/24付近のは、言語でやるんじゃなくてRefactoringの機能とかで
持ってればいんじゃね?
setter,getterを作るような感じで。

少なくともtoStringは決まった形式に言語で縛るのは危険。
0342デフォルトの名無しさん2006/03/21(火) 03:39:44
Java はプリミティブ型で参照を渡せないのがしんどい。
Tiger で踏み込んで欲しかったけど
C# の真似と言われたくなかったんだろうか。
ボクシング・アンボクシングなんて瑣末なものは後回しにして欲しかった。
(瑣末どころか曖昧さが増えてむしろ迷惑だ。)
0343デフォルトの名無しさん2006/03/25(土) 13:14:08
なんでプリミティブ型もObjectの派生物にしなかったんだろう
0344デフォルトの名無しさん2006/03/26(日) 22:38:05
そこだけはパフォーマンス上妥協したとのと
生成コスト短縮したと見た。
0345デフォルトの名無しさん2006/03/27(月) 00:34:55
プリミティブ型の参照渡しをサポートしなかったのって何故?
type* 相当はまぁ分からんでもないが
type& 相当あったところで、混乱起こすとは思えないんだが。
オブジェクト型は type& 相当のことやってるわけだし。
0346デフォルトの名無しさん2006/03/27(月) 01:48:21
>プリミティブ型の参照渡しをサポートしなかったのって何故?

ラッパークラスがあるタメに不要だから。

0347デフォルトの名無しさん2006/03/27(月) 01:49:05
リフレクションのときの面倒を減らす効果があるから。
リファクタリングしやすいから。
0348デフォルトの名無しさん2006/03/27(月) 02:48:23
>346
プリミティブ型のラッパークラスは不変オブジェクトになってて
参照渡し的な使い方は一切出来ないんですが。。

>347
なるほど。
0349デフォルトの名無しさん2006/04/02(日) 23:42:21
mallocの本質はフリーチェーンと呼ばれる使用可能メモリブロックの長い連結リストだ。
mallocのパフォーマンスは決して速くなく、しかも、クリーンアップのために
ときどき予期できないタイミングで非常に遅くなる

Javaはガベージコレクションがあるから・・・なんてしたり顔で話すC++プログラマが、
デフォルトのメモリアロケータを平然と使っているなんてことは良くある。

頭のいいプログラマは、mallocによる処理の中断の可能性を最小化するために、
いつも2の累乗のサイズでメモリブロックを割り当てる。
この方法はフリーチェーンの中のヘンな断片化の量を最小化するのだ。
…尤も、Javaの世代別GCに比べれば余りに原始的だがな。
0350デフォルトの名無しさん2006/07/04(火) 21:26:31
時給1000円でJava教えてくださるかたを募集します
場所 所沢(池袋・高田馬場から直通)

i−want−to−study−java@hotmail.co.jp
(アドレスは全角で書いてあるので半角に直してください)
よろしくおねがいします
0351デフォルトの名無しさん2006/07/04(火) 23:44:46
とりあえずc++0xがどうなるか様子見。

(永遠に様子見してしまいそうだが…)
0352デフォルトの名無しさん2006/08/20(日) 19:44:03
>>2
Cocoa-Javaならインタープリタじゃないけど
Cocoaは仕様違うし・・・
どっかでネイティブコンパイルできるJavaコンパイラとかない?
0353デフォルトの名無しさん2006/08/20(日) 22:41:44
GCJ
0354デフォルトの名無しさん2006/08/30(水) 09:11:24
ランタイム入れないと動かないとかカンベンシテくださいよ
■ このスレッドは過去ログ倉庫に格納されています