CとJAVAを比較した場合Cの良いとこと悪いとこ
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG0002デフォルトの名無しさん
NGNG0003デフォルトの名無しさん
NGNGJAVAはオブジェクトが使えますから、オブジェクト指向派の人にはJAVAの方がいいかもしれません。
しかしながら、C++の方ができることの範囲が広いようなので、そっちのほうがいいかもですね。
0004デフォルトの名無しさん
NGNG0005デフォルトの名無しさん
NGNG0006デフォルトの名無しさん
NGNG0007デフォルトの名無しさん
NGNGCもオブジェクト使えますが、なにか?
0008(・∀・)クソスレアゲルナ!
NGNGJavaも基本型使えますが、なにか?
0009デフォルトの名無しさん
NGNGHSPも整数型使えますが、なにか?
0010デフォルトの名無しさん
NGNG0011Java++
NGNGJava:言語レベルで GUI や Thread などが使える
0012デフォルトの名無しさん
NGNGCの悪いところはポインタを使わなければならないところ。
0013デフォルトの名無しさん
NGNG0014デフォルトの名無しさん
NGNGおまえは本当にCでしか書けないようなプログラムを書くのか?
たんにデバイス制御もできるし、とかいいたいだけなんじゃないかと、
問いたい。問い詰めたい。小一時間問い詰めたい。
0015デフォルトの名無しさん
NGNGもしそうなら Cが消える日がくるかもしれんな
0016
NGNGプラグインや動的関数ポインタは無理。
死んで欲しい。
0017デフォルトの名無しさん
NGNG知人は CはJAVAみたいにきれいなプログラムを書けないから
糞とか言ってくるので言い返したいのですが、
Cしか知らない私は言い返せないで
JAVAがCより優れている所があるなら 私も教えてほしいです。
0019デフォルトの名無しさん
NGNG標準ライブラリが豊富。
>>11が書いてるように、標準規格内でスレッドやGUIをサポートしている。
0020
NGNGCの方が美しいプログラムが書けるよ。
0021デフォルトの名無しさん
NGNGCで書こうが、JAVAで書こうが綺麗かどうかって
いうのは設計の問題のような気がするけど・・・
0022デフォルトの名無しさん
NGNG0023デフォルトの名無しさん
NGNGPCのスペックが年々上がっているので、
数年後にはJAVAのほうが勝る可能性があるんじゃないのですか?
0024デフォルトの名無しさん
NGNG0025デフォルトの名無しさん
NGNGCを糞とか言うやつには、JVM が何で書いてあるか問詰めてみろ
0026デフォルトの名無しさん
NGNGお前の書いていること、おかしいぞ。
0027デフォルトの名無しさん
NGNGスペックが上がれば
JAVAが遅く感じることがなくなるってことじゃない?
0029
NGNGヴァカですか?
0030デフォルトの名無しさん
NGNGとりあえずJavaの悪い所はPrimitive型へのポインタが取得できない事かな。
それと、(ヒープ上に取ってるくせに)配列の大きさを変えれない事。
0031デフォルトの名無しさん
NGNG「Javaで」ポインタ取得できたとして、
なんか嬉しいことあります?
0032デフォルトの名無しさん
NGNGswapメソッドが書ける
003330
NGNG0034デフォルトの名無しさん
NGNGだから、Cでできることは全部JAVAでできるけど。
一般的にJAVAにCのコードを埋め込む時は、
機種(OS)に依存したプログラムを書くときだね。
C++→Cトランスレーターなるものがあるので、
JAVAは何でもありなわけだけど、
わざわざOS依存させて、実行速度を優先させるケースも少ないんで・・・
0035
NGNGfunc();
みたいなCで二行で済むことをJAVAだとどんなコードになるんだろう?
0036デフォルトの名無しさん
NGNG0037デフォルトの名無しさん
NGNG((Command)map.get(code)).execute();
準備さえしとけば、一行で済むよ。
ジャンプテーブルの変わりにCommandインスタンス
のマップ作っとくだけ。
0038デフォルトの名無しさん
NGNGOOがわかってない事をさらすなって(笑)
0039仕様書無しさん
NGNGそういう使い方は便利だなぁ。
参考になたーよ。
0040デフォルトの名無しさん
NGNGOOでプログラム書いてるときは、そういうケースで困った事はないな。
>それと、(ヒープ上に取ってるくせに)配列の大きさを変えれない事。
ネタだよね・・・
0041デフォルトの名無しさん
NGNGデザパタやろうよ・・・
0042デフォルトの名無しさん
NGNG遅そう。。。
0043デフォルトの名無しさん
NGNGハッシュマップからコードでハッシュ検索するだけなんだから、
コードのインスタンスのhashcode()メソッド適当にオーバーライド
して遅くないルーチンに最適化しとけば、かなり速いよ。
hashcode()で引いて来た番号をハッシュマップ内部の配列の添字番号
としてそのまま参照引き出してあげれば済むような最適化は、簡単に
できるよ。
0044デフォルトの名無しさん
NGNGCはアセンブリコード埋め込めるぞ。
MMXやSSE使うときに必要。
004543
NGNG使うこと。hashcode()メソッドが、単に内部のint値返すだけだから。
0046デフォルトの名無しさん
NGNGというか、そこって速い遅い議論するところじゃないでしょ。
004836
NGNGで、Primitive型ってなんですか??
0049デフォルトの名無しさん
NGNGオブジェクト参照型以外全部。
005036
NGNGじゃ>>30はswapかきたいだけでバイトコードインタプリタ否定ですか?
0051デフォルトの名無しさん
NGNGかと言えばCで書かれている。
0052デフォルトの名無しさん
NGNG他のCやC++も同様なのでしょうけど、javaの新しいVerをjavaから作っていったら...
数回verupすると恐ろしい事になりそうやね
今なおメインの言語として君臨している。
Cは
「論理的で、覚えることが少なくて、実行速度が速い、皆に愛されている言語」
だと倉薫も書いていたYO!
0054デフォルトの名無しさん
NGNG>>51Javaのクラス? ふつーJavaで書かれてるんでないか?
コンパイラはCで書かれてるんだろうけど。
新しいアーキテクチャのCPUが出てくれば、やっぱり最初に提供されるのはCなんだろうから、
Cはまだまだしばらくの間、必要なんだろうとおもわれ。
0055デフォルトの名無しさん
NGNGもうすぐヤツが目を覚ます時間だな
0056デフォルトの名無しさん
NGNG( _(((((((((_ )
|/ ~^^\)/^^~ ヽ|
| _ 《 _ |
(|-(_//_)-(_//_)-|) / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| 厶、 | < おはよ〜〜。
\ |||||||||||| / \_____________
_-‐' ̄|\ / `ー―-、__
/~⌒~ ̄| , -‐'\ ` - ー '/ \ '  ̄\
/ | `ー―-、ヽ ノ -―'~ ̄ 、 \
/ / `ーV -‐' ̄ ヽ |
/ || \ |
| || |`、
/`-、 / ヽ||/ ヽ ー、_ノ \
/ 、 ○ ||/ ○ |/ \ \
/ V \. || / | |
| ヽ ヽ/ヽ、 人 | |
| / \、_ / \ / ヽ | |
/ ノ /  ̄`ーー' l 、 ̄`ーー-ー' ∧ l |
( / /\ 入 / | | / ) / \ 人 |
/ \ ,/ \ l、_ 人_ _,| -‐',/l / `ー、_>-‐'~ |
// 〈 | \ / | ヽ / | | |
| | | | | | | / | |
| | | | l、_ 人_ _ _ ,| _/ | |
| | / /‐--、______, --‐'~ __〈 | |
0057デフォルトの名無しさん
NGNG__( ;´Д`)__< 遅刻だ!
| 〃( つ つ | \_______
|\ ⌒⌒⌒⌒⌒⌒\
| \ \
\ |⌒⌒⌒⌒⌒⌒|
\ |______|
005857
NGNG0059デフォルトの名無しさん
NGNG ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄
,〜((((((((〜〜、
( _(((((((((_ )
|/ ~^^\)/^^~ヽ|
| _ 《 _ |
(|-(_//_)-(_//_)-|)
| 厶、 |
\ |||||||||||| /
⊂ \_______⊂ ⌒`つ≡≡≡(´⌒;;;≡≡≡
 ̄ (´⌒(´⌒;;
0060
NGNGOOと関係無いだろ ヴァーカ!市ね!糞が!
006230
NGNGかなり無理矢理だけどね。
006336
NGNGほ?ポインタとれると、なにか、swapに特殊なテクニックがあるですか?
しかも、Javaで「無理矢理」な…
0064デフォルトの名無しさん
NGNG ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄
,〜((((((((〜〜、
( _(((((((((_ )
|/ ~^^\)/^^~ヽ|
| _ 《 _ |
(|-(_//_)-(_//_)-|)
| 厶、 |
\ |||||||||||| /
⊂ \_______⊂ ⌒`つ≡≡≡(´⌒;;;≡≡≡
 ̄ (´⌒(´⌒;;
006536
NGNG0066ネタ
NGNG0067デフォルトの名無しさん
NGNGtmp=a;a=b;b=tmp; でいいんでしょ?
プリミティブだと値のコピーによる交換だけど。
どーせプリミティブのコピーなんてたいしたコストじゃないし。
0070あほくさ
NGNG0071デフォルトの名無しさん
NGNGあんなアセに陰毛が生えた程度のものを
言語っていわないでくれるかな。
0072デフォルトの名無しさん
NGNGしかし、その陰毛がヤラしい部分をけっこう良く隠蔽
しているんだよな。
0073デフォルトの名無しさん
NGNG007436
NGNG0075デフォルトの名無しさん
NGNGおいおい、随分な物言いだな。
さすがに言語でないことはないだろう。
0076デフォルトの名無しさん
NGNG基地外に突っ込むなよ。かわいそうだろ。
適当にいなしといてやれよ。
0077デフォルトの名無しさん
NGNGSTL使えばC++でも簡潔に書けるだろ。
ポインタ云々もスマートポインタを用意すれば良いだけ。
0078デフォルトの名無しさん
NGNGCはある。
0079デフォルトの名無しさん
NGNGJAVAの需要が先細りになっても、Cの需要は変わらないって
言いたいのか? 賛成だ。そのとおりだよな。
ただ、JAVAだって生き残らないとは限らんぜ。
0080デフォルトの名無しさん
NGNGまだ、どうころぶかわからんよ
0081デフォルトの名無しさん
NGNG0082デフォルトの名無しさん
NGNGなっちゃったんですねぇ…
0083デフォルトの名無しさん
NGNG0084デフォルトの名無しさん
NGNG1bitくらいケチるなよ。
0085デフォルトの名無しさん
NGNG分野によって変わってくるんだろうね。
いまだにFortranやCOBOLが使われているように
Javaも何処かでは生き残り続けるのかもしれない。
0086デフォルトの名無しさん
NGNG今後発展しそうな気がするんだけど気のせいですか?
現在はCよりJAVAのほうが需要があるように
感じるけど それも気のせい?
0087デフォルトの名無しさん
NGNG分野によるしねえ。
0088デフォルトの名無しさん
NGNGJAVAを動作させる為にはVMが欲しいんですが何か?
0089デフォルトの名無しさん
NGNG>>86 サーバサイド以外でJavaの需要ってほぼ皆無だよ。
i-appliのあれはJavaという名前がついてるけど別ものだし。:-)
0090デフォルトの名無しさん
NGNG32bit無符号のデータを外部から取りこむ場合、その値域をカバーするために、
long (64bit)を使うしかなくて苦痛なんだよ。
0091デフォルトの名無しさん
NGNG0092デフォルトの名無しさん
NGNG苦痛って… 医者に行った方が良いかも。
0093デフォルトの名無しさん
NGNG0094デフォルトの名無しさん
NGNG0095デフォルトの名無しさん
NGNGC,C++,Rubyマンセー!
Javaはあまり知らんからノーコメントとしておく。
0096デフォルトの名無しさん
NGNGできるにこしたこたぁない
0097デフォルトの名無しさん
NGNG0098デフォルトの名無しさん
NGNG0099デフォルトの名無しさん
NGNGバカ発見。
Cにできる事と、Javaにできる事に差があるわけ無いだろが。
ある処理を記述するのに、どうするかが言語の違いだよ。
さっさと気づけ馬鹿ども。
0100デフォルトの名無しさん
NGNGC言語ちゃんとお勉強してから言ってくださいね。
0101デフォルトの名無しさん
NGNGROM,RAMあわせて4KBしかありませんが、なにか?
0102デフォルトの名無しさん
NGNG0103デフォルトの名無しさん
NGNG0104デフォルトの名無しさん
NGNGそれはハードウエアの問題では?
コンパイラ作成の手間を考えたら、
一般的じゃないCPUでアプリケーションを作る場合は、
C言語になるのかも。
言語的な違いは明らかで
JAVAで書くような複雑なプログラムは、Cじゃ書かないし
Cで書くような簡単なプログラムは、JAVAじゃ書かない。
0105デフォルトの名無しさん
NGNG基本から勉強してね。
0106デフォルトの名無しさん
NGNGCとBASICを比較するようなものだと。
0107デフォルトの名無しさん
NGNGCとLISPを比較するようなものだと。
0108デフォルトの名無しさん
NGNG馬と鹿を比較するようなものだと。
0109デフォルトの名無しさん
NGNGやっぱや〜めた。
0110デフォルトの名無しさん
NGNGいってくれ
0111デフォルトの名無しさん
NGNGC は fj.comp.lang.c での罵りあいの道具にしかならない(w
0112デフォルトの名無しさん
NGNGそれができたら認めるよ〜ん。
0113デフォルトの名無しさん
NGNGウニの棘の先端みたい。
0114デフォルトの名無しさん
NGNG馬鹿
0115デフォルトの名無しさん
NGNGJava用のドライバ作成環境を用意してくれたらな。
一休さんみたいだ。
0116デフォルトの名無しさん
NGNGOS、デバイスとのインターフェ−ス部分をJNI使って書けばいいだけでしょ?
JavaOSのドライバはJAVAだし。
0117デフォルトの名無しさん
NGNG例えばJavaをn
0118デフォルトの名無しさん
NGNG天然ですか?
0119デフォルトの名無しさん
NGNG0120デフォルトの名無しさん
NGNGあんたJavaでドライバ組みたいと思うのか?
0121デフォルトの名無しさん
NGNG君、Java厨?アワレ。
0122デフォルトの名無しさん
NGNG実用に耐えられるものを作ってくれ。
0123デフォルトの名無しさん
NGNG0124名無しさん
NGNGおまえら情報操作もいいかげんにしろや。
そうやってJava使いを一人でも多く減らして自分だけ
甘い汁を吸おうと思ってるんだろ?だがな、俺は騙されん。
最も将来性があり、これから主流になるのは間違いなくJavaだ。
0125デフォルトの名無しさん
NGNGCmmunication APIでなんとか。
あとUSB APIというものもあるようだ。
まだ実装がLinux用しか出てないけど。
>123
Jikes RVMとかいうJavaで書かれたJVMが存在する。
0126デフォルトの名無しさん
NGNGバイトコードはネイティブ実行できるからVM不要だろうけど、
ファイルI/Oとかネットワーク周りの物理層をどうやって処理
するのか考え出すと年越せません〜
0127デフォルトの名無しさん
NGNG実はアンチVBだけど、
VB7は結構使えるのかもと・・・全然知らないから
いいかげんな事言ってるかも?
ただ、OOという技術が趣味プログラマーに浸透するかは疑問だし
ポインター知らないで、JAVAができるのか?という疑問もある。
まあ、あくまで予想だね。
0128デフォルトの名無しさん
NGNGはっきり言ってVMでもデバイス制御部分は全てCかアセンブラです。
0129デフォルトの名無しさん
NGNGその携帯は Javaチップなんすか?
0130名無しさん
NGNGC覚えるのって簡単ですか?
0131デフォルトの名無しさん
NGNG内部のCPUもどきのFPGAが実行している。
0132デフォルトの名無しさん
NGNGバイトコード処理用の拡張命令持っただけの
普通の、例えばArmとかだよ。
0133デフォルトの名無しさん
NGNG簡単だよ、というのが慣例だよね。
難しいかった、というやつには
おまえはJavaをマスターしてない
とつっこまれて終わり。
0134デフォルトの名無しさん
NGNG逆のほうがいいかも
0135デフォルトの名無しさん
NGNG013636
NGNG0137デフォルトの名無しさん
NGNG0138CopyBorot
NGNGCは何を使って開発されたのか知ってるかい?
このスレのC支持者に誰か予知能力者でもいるのかい?
時代は交代していくものさ。ヽ(´ー`)ノ
Java厨呼ばわりで結構。
"乗りてえ風に遅れた奴は間抜けっていうんだ。"
とか"うしおととら"の"とら"の言葉で締めてみる。
0139デフォルトの名無しさん
NGNGアセンブラ使わないんだ…
0140CopyBorot
NGNGJVMを攻撃しまくってるC支持者さん達には
しょうしょうキティな文章になってますがよろしくヽ(´ー`)ノ
0141デフォルトの名無しさん
NGNGCでの開発環境が用意されているということ。
あんたアセンブラについて勉強した方が良いね。
014231
NGNG30じゃないけど、
swap( int[] array, int i, int j ){
int tmp = array[i];
array[i] = array[j];
array[j] = tmp;
}
とかぐらいしか思いつかない。
他の方法あるなら知りたいっす >>30
0143デフォルトの名無しさん
NGNGCPUがItaniumになって、OSがLinuxになったくらいで…
ま、そればかりじゃないけど。
0144デフォルトの名無しさん
NGNG014531
NGNG0146デフォルトの名無しさん
NGNG同感
0147デフォルトの名無しさん
NGNGarray[i] ^= array[j];
array[j] ^= array[i];
array[i] ^= array[j];
}
0150147
NGNGと、いわれても…。
0151
NGNG1)ポインタ
2)プリプロセッサ
Javaが優れているところ
1)ネット系ライブラリが充実している。
そんだけ。
Cの短所
・・・特に無い。
JAVAの短所
1)厨房が大量に集まってしまった。(しかも、えばってるし)
2)プリプロセッサが無い
3)ポインタが無い。特に関数ポインタ
0152デフォルトの名無しさん
NGNG0153デフォルトの名無しさん
NGNG1ビットくらいケチるなよ。
0154デフォルトの名無しさん
NGNG0155デフォルトの名無しさん
NGNGこないだ買ったJava本にポインタの解説がイパーイありました。
Javaにはポインタがあるらしいです。
0156デフォルトの名無しさん
NGNG・実行速度が速い。
・アセンブリに近い記述が可能。
・C++はCを言語体系の一部分に含めているので、
C++を学習するとき得なくてはならない知識を
ある程度小さくできる。
Cの短所
・最新の言語に含まれている、魅力的な機能がない。
0157デフォルトの名無しさん
NGNG確かに以前にも書いた覚えが(^^;
0158デフォルトの名無しさん
NGNG関数ポインタもかいてあったか?
0160デフォルトの名無しさん
NGNG0161デフォルトの名無しさん
NGNGただしそうすると、好きな名のメソッド(を参照する変数)ってものは
結局使えないので、微妙に嫌な気分だが。
javaも軽く使う分には悪くない言語だが、
ちと手のこんだ事をしようとすると、C以下の柔軟性しかないのが壁となる。
lispやrubyみたいな方向性の柔軟さも、少しは欲しい。
せめてクラス変数の型を継承で作れるようにしてほしかった。
Classっていう唯一の型しかないのは面倒だ。
うわ。java.lang.Classってfinalなのか。
変数どころかObjectとしても継承できないわけか。
あと、逆にC++のような方向性もまた切りすててるんで、
javaって、「エレガントに」やれる事柄が本当に少ない言語だ。
0162デフォルトの名無しさん
NGNGしかしネットワークとか付加的なのが少ない
0163デフォルトの名無しさん
NGNGC言語は開発当初から言語仕様をスマートにする方向で
設計されたらしい。
いまだにそれを貫いているところを残してあるが故に、
付加的な仕様が少ない。
しかし、だからこそ学ぶ際に煩雑な感じを受けずにすむ。
それもここまでC言語が普及した理由の1つだろう。
0164デフォルトの名無しさん
NGNGこれが言語仕様上ほとんど制限の無いC言語の
正しい使い方。
0165デフォルトの名無しさん
NGNGこれがコンピュータの正しい使い方。
0166デフォルトの名無しさん
NGNG使えば似たような事出来るような気がしますが。
0168デフォルトの名無しさん
NGNGって意味わからない。
class ClassA{ static int val; }
のvalみたいのをクラス変数っつーんだよね?
0169
NGNG定義済みで既知のクラスでないと呼べないでしょ。
Javaはどこまで行っても固定プログラム。
手を変え品を変え、関数ポインタがあるように書かれてるけど、
同じ材料が形を変えているだけ。
焼きそばとたこ焼きとお好み焼きみたいな物。
0170デフォルトの名無しさん
NGNGアセンブラで作ったプログラム vs Cで作ったプログラム
の議論(水掛け論のような気も…)が結構あったと思いますが、
Javaごときと速度比べるとは、最近のCユーザってココロザシ低く
なってません?
0171デフォルトの名無しさん
NGNG>>168が書いているvalのことは単にオブジェクト間で静的な
データメンバ(静的データメンバ)なのでは?
0172デフォルトの名無しさん
NGNGCのいいところを挙げるとなると普通出てくるだろ。
スレタイトル読めやボケ。
0173デフォルトの名無しさん
NGNGバイトコードをJavaプログラムに生成させて、
クラスローダに読ませる、Class取得、Method取得、invoke()
ってやれば?
出来るかどうか知らないけど。
0174デフォルトの名無しさん
NGNGこんなアホスレ立てるお子ちゃまがいるから
解りやすく教育しているだけ。
0175デフォルトの名無しさん
NGNG君もここよんでよく勉強してね。
0176デフォルトの名無しさん
NGNGその発想が出る時点で答えになってない。
ポインタについて勉強しましょうね。
0177デフォルトの名無しさん
NGNGクラス変数って言うみたいですけど?
少なくとも Java では。
http://www.google.co.jp/search?q=%83N%83%89%83X%95%CF%90%94&hl=ja&lr=lang_ja
0178デフォルトの名無しさん
NGNGなんだ、
>>定義済みで既知のクラスでないと呼べないでしょ。
ってのは 実験して出来ないって言ってるわけじゃないのか。
0179デフォルトの名無しさん
NGNG> クラス変数なんて用語はないのでは・・・。
OOの基本的な用語のような気が…。
0181デフォルトの名無しさん
NGNGCユーザのレベル低下が目立ってるような… なげかわしや…
0182CopyBorot
NGNG> なんか このスレみてると Javaのおかげで厨房少ないはずの
> Cユーザのレベル低下が目立ってるような… なげかわしや…
"Java厨がいるから"と安心しきったのが低下させているんでしょうな。
0183デフォルトの名無しさん
NGNG具体的には?
0184デフォルトの名無しさん
NGNGどの発言から「レベル低下」だと思われました?
0185デフォルトの名無しさん
NGNG ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄
,〜((((((((〜〜、
( _(((((((((_ )
|/ ~^^\)/^^~ヽ|
| _ 《 _ |
(|-(_//_)-(_//_)-|)
| 厶、 |
\ |||||||||||| /
⊂ \_______⊂ ⌒`つ≡≡≡(´⌒;;;≡≡≡
 ̄ (´⌒(´⌒;;
0186えなりくん
NGNG鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱戸‥‥‥
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱江‥‥
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬼鬱鬱鬱鬱鬱鬱鬱鬱鬱子‥
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬼成成戸成豆鬼豆成戸戸成成成豆鬼鬱鬱鬱鬱豆‥
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱豆戸江江江江戸戸戸戸江江江江江江戸成豆鬱鬱鬱鬱江
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱豆戸江江江江江江江江江江子江江江江江戸成豆鬱鬱鬱鬱
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱豆戸戸江江子江江江子子子子子子子子江江戸戸成鬱鬱鬱鬱
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱戸江江江子子子子子子子子子子子子子江江戸戸成豆鬱鬱鬱
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬼戸江江江江子子子子子子子子子子子子江江江戸成豆鬱鬱鬱
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱成江江江江江江江子子子子子子子子子子子江江戸成豆豆鬱鬱
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱戸江江江子江江江子子子子子子子子子子子江戸鬼鬱鬼鬼鬼鬱
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱戸江子江江江江江戸鬼鬼豆成戸江子子子江戸豆鬱鬱鬱鬱鬼鬱
鬱鬱鬱鬱鬱鬱鬱鬱鬱豆戸江江江江戸成鬼鬱鬱鬼豆成成戸江江江江戸戸成豆豆鬼鬱鬱
鬱鬱鬱鬱鬱鬱鬱鬱豆戸江江江江豆鬼豆成戸江江江江江戸戸戸戸戸戸江江子江戸成鬱
鬱鬱鬱鬱鬱鬱鬱成江江子子子戸成江子子子子子子江江戸戸戸戸戸江江江子江戸戸鬱
鬱鬱鬱鬱鬱鬱豆江江江子子子江江子子子子子子江戸戸江江江江江江戸戸鬼鬼成成鬼
鬱鬱鬱鬱鬱鬱豆江江江子子子子子子子江江成鬱鬱成戸江子子江江江戸子鬱鬱鬱成豆
鬱鬱鬱鬱鬱鬱豆江江江子子子子江江成鬼戸戸鬱鬱豆戸子子子江戸江戸戸成成成成成
鬱鬱鬱鬱鬱鬱鬼戸江子子子子子子江子子子江江戸戸江子子子子戸江江江戸戸江江戸
鬱鬱鬱鬱鬱鬱鬱戸江子子子子子子子…子子江江江子子子子子子江戸江子江江江子江
豆豆鬼鬱鬱鬱鬱戸江江江子子子子子子子子子子子子子子子子子子戸戸江子子子子戸
江戸豆鬱鬱鬱鬱成江江江江子子子子子子子子子子子子子子子子子戸戸江子子子子戸
戸戸成成豆鬱鬱豆戸江江子子子子子子子子子子子子子戸江子子…子戸戸子子子子江
江子成江江鬱鬱豆戸江江子子子子子……子子子子子江子子……子子戸戸江子子子江
子子江江江豆鬼戸戸江江子子子子子子…子子子子江戸子子江江戸成豆成戸江江子戸
戸江戸豆戸戸戸江江江子子子子子子子子子子江江江戸戸成江戸豆鬼豆戸戸戸江江戸
戸江子戸戸江江江江江子子子子子子子子子江江江子子子子江江江戸戸戸戸戸江江戸
江戸江江子戸江江江江江子子子子子子子子江江江子子子子子子江江戸戸戸戸江戸江
子戸江子戸鬼江江江江江子子子子子子子子江江江江子子子江江戸成豆豆成戸江成子
江戸鬱鬱鬱鬼戸戸戸戸江江江子子子子子子江戸成成戸戸戸戸成成豆鬱鬱成江戸成‥
戸江豆鬱鬱成成戸戸戸江江江子子子子子子子江鬼鬱成戸子子江江豆鬼豆江江戸戸‥
戸江江鬱鬱成豆成戸戸戸江江江江子子子子子江戸戸戸戸戸戸戸成豆成戸江戸成子‥
戸江江鬱鬱鬼成成成成戸戸江江江江江子子江江子子江江江戸戸戸成豆戸戸成戸‥‥
江江江戸成鬱成成豆豆成成戸戸江江江江江江江子子子江江戸成成成戸戸戸成子…‥
戸江江江鬼鬱戸成豆鬼豆豆成成戸戸江江江江江子子子子子江江江江江戸成江子……
江江豆豆鬱鬱成成成豆鬼鬼鬼鬼成戸戸江江子子子子子子子子子子子江戸成子子子…
江鬼鬱成鬼鬱成成成成豆鬼鬼鬼鬼鬼豆成戸江江江子子子子子子江江戸成鬼鬼戸子…
鬱鬱鬼豆鬼鬱豆成成成成豆豆鬼鬼鬼鬼鬼鬼成戸江江江江江戸戸成成豆鬱鬼鬱鬱戸…
鬱鬱鬼鬼豆鬼鬼成成戸成成成豆豆鬼鬼鬼鬱鬱鬼豆豆成成豆豆豆鬼鬱鬱鬱鬱鬼鬱鬱戸
鬱鬱鬱鬱成鬱鬱鬼成成戸戸戸戸戸戸成豆鬼鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱
鬱鬱鬱鬱豆鬱鬼鬱成戸戸戸江江戸江戸戸成豆鬼鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬼鬱鬱
0188デフォルトの名無しさん
NGNG ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
,〜((((((((〜〜、
( _(((((((((_ )
|/ ~^^\)/^^~ヽ|
| _ 《 _ |
(|-(_//_)-(_//_)-|)
| 厶、 |
\ |||||||||||| /
⊂ \_______⊂ ⌒`つ≡≡≡(´⌒;;;≡≡≡
 ̄ (´⌒(´⌒;;
0189デフォルトの名無しさん
NGNG>2)プリプロセッサが無い
プリプロセッサがないとなんで困るんだよ・・・
>3)ポインタが無い。特に関数ポインタ
ホント学習してくれ。
オブジェクト変数に入ってるのは、メモリアドレス。
関数ポインタが、オーバーライドとかインターフェースとか
(実行時)ポリモーフィズム=レイトバインディング=動的バインディング=DMD
になったんだけど。
ロクに実務やった事無いか、低レベルの奴は問題に気付かないだけ。
死ねよ。
0191デフォルトの名無しさん
NGNG>ちと手のこんだ事をしようとすると、C以下の柔軟性しかないのが壁となる。
>lispやrubyみたいな方向性の柔軟さも、少しは欲しい。
アホか?
RUBY製作者が書いてる本でも読んでみろ。
lispはデバッグが難しいというか、複雑な関数が表現しずらいので
大規模にむかないと、「個人的に」思うが、
JavaはC++,RUBYに比べてかなり大規模向けだぞ。
>せめてクラス変数の型を継承で作れるようにしてほしかった。
>Classっていう唯一の型しかないのは面倒だ。
>うわ。java.lang.Classってfinalなのか。
>変数どころかObjectとしても継承できないわけか
おまえ末期症状だな。
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/lang/Class.html
このクラスが何なのかもよくわかってないみたいだな?
とりあえずこのクラスを継承して何がしたいんだ?
オブジェクト変数の型なら、定義したクラス全てが型になるぞ。
派生クラスポインタの事をいってるなら、javaではObject型の変数に
どのオブジェクトの参照も入れることができる。
0192デフォルトの名無しさん
NGNG婦警と、このスレみたいな言い合いしてるぜ、ベイベー!
俺からみてもレベル低いぜ、ベイベー!
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
,〜((((((((〜〜、
( _(((((((((_ )
|/ ~^^\)/^^~ヽ|
| _ 《 _ |
(|-(_//_)-(_//_)-|)
| 厶、 |
\ |||||||||||| /
⊂ \_______⊂ ⌒`つ≡≡≡(´⌒;;;≡≡≡
 ̄ (´⌒(´⌒;;
0193デフォルトの名無しさん
NGNG馬鹿とか無知とかって、自分がそうであることに気がつかないからね。
元旦からアホさらして、かわいそうな人生だね。
0194デフォルトの名無しさん
NGNGC++ではプリプロセッサは使わない。
というか、使わなくて済むように機能が追加された。
それをJAVAが真似したんだから、プリプロセッサなんて
あるわけ無いだろ。
OOだとプリプロセッサは不都合が起きる。
クラスで名前空間を区切っても、DEFINEで破壊されるなどと・・・
まあ、構文を無視した#IFは便利だと思うが
それはC++のコメントがアホだからだ。
emacs使ってれば問題はないが。
の信じる学習とはJavaのプロパガンダ本を鵜呑みにすることじゃない?
死ね!
0197デフォルトの名無しさん
NGNGいいかげん知らない事を突っ込むのやめなよ、あんた。
どうやるか知らないのはあんたが不勉強だからだよ。
0198デフォルトの名無しさん
NGNG0199デフォルトの名無しさん
NGNG>これが言語仕様上ほとんど制限の無いC言語の
ボケですか?
JAVAも同じ。
0202デフォルトの名無しさん
NGNGC言語の場合、同じソースでも環境によってはコンパイルできない。
なぜなら、I/Oは言語仕様外だから。
言語仕様外の物は、ライブラリーとして提供するしかないわけで
互換性を保つにはヘッダファイルを共通にして、なるべく同じように動くような気がする
バイナリーを作ると。
C++も同じね。
JAVAはライブラリーとして提供するのではなく、VMとして提供するのが理想。
でもVMに組み込むのが面倒な場合は、JNIという最終手段を使う。
0203デフォルトの名無しさん
NGNGJAVA単体では割り込みの記述なんてできっこないからね。
0205デフォルトの名無しさん
NGNGそれのソースを見てくれればわかるけど、
実際の中身はシステムコールか、アセンブラなんだよね。
それってのは結局のところ、アセンブラ(機種依存)で書かれた、
ライブラリーを呼び出したりしてるだけであって、
C単体でやってるんじゃないよ。
で、JAVAでやりたければJNI使って、システムコールを呼び出すクラスを作って
開発するわけだけど。
現実問題として、OSに組み込むにはOSがJVMで動くドライバをサポートする
必要がある。
理由はわかるよね?
0206デフォルトの名無しさん
NGNG0207ひとりごちてみる
NGNGまぁ、動かないっていう意味で言ってるんだろうな。
言語仕様って、標準ライブラリも含んでるんだろうな、とすると入出力関数はあるぞ。
そもそもメモリマップドI/Oなら、ポインタがあればいいし。
でも、I/Oを切り離してライブラリにするってのは、ふつーそーだしな。
JavaはVMに入出力組み込むのが理想なのか??
VMの仕様はかなり厳密に定義されてるから、動作を変えちゃうのは理想なのかなぁ??
ま、JMVはまだ勉強中だから、よくわからないけど。
0208デフォルトの名無しさん
NGNG ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
,〜((((((((〜〜、
( _(((((((((_ )
|/ ~^^\)/^^~ヽ|
| _ 《 _ |
(|-(_//_)-(_//_)-|)
| 厶、 |
\ |||||||||||| /
⊂ \_______⊂ ⌒`つ≡≡≡(´⌒;;;≡≡≡
 ̄ (´⌒(´⌒;;
0209ひとりごちているちゅう
NGNGでも、アセンブラで書くのがあたりまえな環境もあるだろうな。
ケイタイとか。
0210デフォルトの名無しさん
NGNGゴメソ、そうだ。
入出力関数もそう。
たとえば、ソケットでブロックされてる時に
printfをすぐに表示する処理系と、そうじゃない処理系ってあるでしょ。
そんな感じの違い。
ある程度互換性があるような気がするのは、処理系ごとにアセンブラを書く
ライブラリー作成者の努力。
(一部アセンブラね。)
機種依存部分をライブラリにすると、コンパイラ作成時にメリットがある。
で、CとかJavaとかと逆の立場なのがPerlね。
VMはもうちょっと勉強してみてね。
VMって言うよりはバイトコードについて調べてみてください。
0211デフォルトの名無しさん
NGNG組み込みやってる俺から言わせて貰えば
はっきり言ってその発想から抜けた方がいい。
割り込みっつーのはアセでベクタ定義されたアドレスにJUMPしてんの。
つまりアセで関数名定義して実態はC等のマイクロコードを生成する言語で書かれてるんだよ。
OSなんてまったく関係無い。
0212Javaの良いところ
NGNG2.ミーハーな客が、簡単なシステムにカネを沢山出す。
仕事でやる分には、これだけ利点があれば充分だと思うが。
とくに2が重要。
0213205
NGNGそれは俺に言ってるの?
>つまりアセで関数名定義して実態はC等のマイクロコードを生成する言語で書かれてるんだよ。
そういう意味で書いたんだけど。
>OSなんてまったく関係無い。
システムコールはどうなるよ・・・
0214デフォルトの名無しさん
NGNGこれかなり重要だね
知人は23で400万オーバーしてるのに
俺は 200万いかないし・・・・・
俺がゲームPGだからっていうこともあるけど・・・
0215JavaのC++に比べて良いところ
NGNG2deleteを意識しなくていい。
3ライブラリとリファレンスが良い。
4JavaDocも便利で見やすいのができる。
5コンパイル時間が短い。
6名前空間が容易に分割できる。
7配列の仕様はかなりいい。
0216デフォルトの名無しさん
NGNG> つまりアセで関数名定義して実態はC等のマイクロコードを生成する言語で書かれてるんだよ。
折れ組み込みのことよくわからないし、プロが言うから間違いないんだろうけど、
それって「マイクロコード」っていうの?
0217デフォルトの名無しさん
NGNGJavaってコンパイラ言語だっけ?
0218デフォルトの名無しさん
NGNG始めてやった言語がJavaで
Javaをマスターするのにどれくらい時間がかかるのか、
という事。
参照とOOの壁ってでかくない?
間違ってもC言語やる前にJAVAをやらない事を
俺はすすめる。
0219デフォルトの名無しさん
NGNG0220デフォルトの名無しさん
NGNGJavacはJVMへのコンパイラ。
JVMはインタプリタ。
0221デフォルトの名無しさん
NGNGコンパイルと言われていますが、何か?
0222JavaのC++に比べて良いところ
NGNG2deleteを意識しなくていい。
3ライブラリとリファレンスが良い。
4JavaDocも便利で見やすいのができる。
5コンパイル時間が短い。
6名前空間が容易に分割できる。
7配列の仕様はかなりいい。
8コンパイルエラーがわかりやす過ぎる。
9実行時のエラー(例外)もわかりやす過ぎる。
ゲームPGだって1000万行くのいるよ。
会社が悪いのか腕がないのか・・。
0224デフォルトの名無しさん
NGNG○ Javacはバイトコードへのコンパイラ。
0225デフォルトの名無しさん
NGNGC++のコードは読みにくいと?
>配列の仕様はかなりいい。
どのようにいいの?知らないから教えてほしい。
0227デフォルトの名無しさん
NGNGJavacはJVMへのコンパイラ(プッ
0228デフォルトの名無しさん
NGNG>>224
そだね。
0229デフォルトの名無しさん
NGNG20代前半で1000万行く人いるんですね。
私もそのぐらいになりたいです。
そこまでの腕になるためには数年はかかると思いますけど・・・
0231デフォルトの名無しさん
NGNG ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄
,〜((((((((〜〜、
( _(((((((((_ )
|/ ~^^\)/^^~ヽ|
| _ 《 _ |
(|-(_//_)-(_//_)-|)
| 厶、 |
\ |||||||||||| /
⊂ \_______⊂ ⌒`つ≡≡≡(´⌒;;;≡≡≡
 ̄ (´⌒(´⌒;;
0232JavaのC++に比べて悪いところ
NGNG2意味ない部分でのパフォーマンスが気になる。
3潔くvirtualをつけることができない事がある。(継承のコストが気になる)
4コンパイル時間が長すぎてキレる事がある。
5::の前が長い。
6ヘッダを書くのが面倒。
7doxygenは日本語が入ると読みずらい。(誰かクッキーを)
8stlのコード汚い。
9#includeの数は減らない?
10#typedefは気分的に嫌。
11ポインタか参照どっちかにして。
12どーせ、クラスはポインタでしか扱わないって・・・
0233デフォルトの名無しさん
NGNGそれは 「JavaのC++に比べて悪いところ」ではないような…
0234デフォルトの名無しさん
NGNG名前の欄、逆じゃないの?
0235デフォルトの名無しさん
NGNG::が痛いし、ヘッダが痛い。
要するに冗長な部分が多かったり、一箇所に情報がまとめられなかったりと
プログラミング言語C++(赤いやつ)には、コンパイラ作成者の怠慢って書いてなかった?
>どのようにいいの?知らないから教えてほしい。
最初から、配列の長さを記録していて
アクセスする時も、配列の長さを超えていないか確認するので
C++で経験する恐怖のデバッグはない。
その分パフォーマンスは犠牲になるけどね。
でも、ほとんどのプログラムでそのロスは気にならない。
なぜなら、C++のメソッド呼び出しのオーバーヘッドより
ロスが少ないから。
0236デフォルトの名無しさん
NGNGクラス作って「オブジェクト指向を理解した」と喚いてる光景が
目に浮かびますが何か?
0237デフォルトの名無しさん
NGNG陰険な奴だな
0238デフォルトの名無しさん
NGNGせーかい!!
0239デフォルトの名無しさん
NGNG>システムコールはどうなるよ・・・
OSが用意するハンドリング可能なAPI。
OSによって異なるが抽象化されたI/Oを操作するときに用いる。
デバイスドライバはその下層に位置する。
しかしシステムコール、ドライバの概念が無い、カーネルだけの
OSもある。(ITRON)
携帯のJAVAなんてRTOSのタスクの1つで動いているだけ。
周辺デバイスへのレジスタへのI/Oはベクタ以外は全部C。
>>216
そう。
0240デフォルトの名無しさん
NGNG( _(((((((((_ )
|/ ~^^\)/^^~ヽ|
| _ 《 _ |
(|-(_//_)-(_//_)-|)
| 厶、 |
\ |||||||||||| / < >>232あんた詳しそう!答えてくれよ!>>208の質問に!
\_______/
/⌒ ヽ
/ / ノヽ _ー ̄_ ̄)', ・ ∴.' , .. ∧_∧ ∴.'.' , .
( /ヽ | ) --_- ― = ̄  ̄`:, .∴ ' ((( #)゚Д゚) .∴ '
\ / _, -'' ̄ = __――=', ・,' .r⌒> _/ / ・,' , ・,‘
( _~"" -- _-―  ̄=_ )":" .' | y'⌒ ⌒i .' . ’
| /,,, _―  ̄_=_ ` )),∴. ). | / ノ | ∴.'∴.'
| / / ―= _ ) ̄=_) _), ー' /´ヾ_ノ
( ) ) _ _ )= _) ,./ , ノ '
| | / = _) / / / , ・,‘
| | |. / / ,' , ・,‘
/ |\ \ / /| |
∠/  ̄ !、_/ / )
|_/
0241デフォルトの名無しさん
NGNGC99がそれか?
ワードの1ビット使ってるに決まってるだろうがボケ!
0243JavaのC++に比べて悪いところ
NGNGお詫びに。
1バイナリーがはけない。
2よって、遅い。
3たまには、メモリーをきっちり使いたい。
4メモリがきっちり使えなくても、newのオーバーロードもしたかった。
5演算子のオーバーロードは是非できるようにしてくれ。
6でも、演算子のオーバーロードサポートしても実はJAVAだと言語仕様が汚くなりそうだ。
7stlは必要ない。アグリゲーションを貫いて欲しかった。
8インターフェースと継承で名前が衝突した時はかなーーーりいただけない。
9unicodeでの処理は、パフォーマンスがちょっと気になる。
10unsignedは欲しいかも。(これは何ともいえない)
0244デフォルトの名無しさん
NGNG( _(((((((((_ )
|/ ~^^\)/^^~ヽ|
| _ 《 _ |
(|-(_//_)-(_//_)-|)
| 厶、 |
\ |||||||||||| / < >>242ひどい・・・初心者なのに・・・。
\_______/
/⌒ ヽ
/ / ノヽ _ー ̄_ ̄)', ・ ∴.' , .. ∧_∧ ∴.'.' , .
( /ヽ | ) --_- ― = ̄  ̄`:, .∴ ' ((( #)゚Д゚) .∴ '
\ / _, -'' ̄ = __――=', ・,' .r⌒> _/ / ・,' , ・,‘
( _~"" -- _-―  ̄=_ )":" .' | y'⌒ ⌒i .' . ’
| /,,, _―  ̄_=_ ` )),∴. ). | / ノ | ∴.'∴.'
| / / ―= _ ) ̄=_) _), ー' /´ヾ_ノ
( ) ) _ _ )= _) ,./ , ノ '
| | / = _) / / / , ・,‘
| | |. / / ,' , ・,‘
/ |\ \ / /| |
∠/  ̄ !、_/ / )
|_/
0245デフォルトの名無しさん
NGNG0246デフォルトの名無しさん
NGNG実際にレジスタへのI/Oはasmで記述してるんでしょ?
0247デフォルトの名無しさん
NGNG個人的には
・enum が欲しい。
enumへの コンパイル時の代入チェックが欲しいのね。
・InputStream と OutputStream を
interface に代えてくれれば…
遅いのは、ある程度までなら腕でカバーできる
のと、delete に苦しまされるのと引き換えと
思えば我慢できるけど。
0248デフォルトの名無しさん
NGNG0249デフォルトの名無しさん
NGNG漏れもenumはなんでJavaにないんだろう?
って思うYO
0250デフォルトの名無しさん
NGNGhttp://www.javaopen.org/jfriends/cforjava/
0251デフォルトの名無しさん
NGNGの残骸を引きずっているCPU(たぶんあんたがパソコンで使ってる奴)
ではアセじゃないと書けないかもね。
でも今日びのメモリマップドCPUではリニアアドレスでアクセスできるから
ポインタ使って
unsiguned char *reg;
reg = 0x80000;
*reg = 0xff;
でアクセスできる。
こういうときunsigunedじゃないとイタイわけよ。
0252
NGNGunsignedでは?
0253デフォルトの名無しさん
NGNG1万回の"Hello C\n"表示をわずか4秒。。
C++は5秒
0254デフォルトの名無しさん
NGNGそう。眠いんでもう寝る。
0255デフォルトの名無しさん
NGNGJavaは?
0256デフォルトの名無しさん
NGNGプログラムはともかくコンソールに
1万行/秒の表示能力があるとは思えないんだけど?
0257デフォルトの名無しさん
NGNG↓
2500行/秒の表示能力があるとは思えないんだけど?
0258デフォルトの名無しさん
NGNG単にプログラムの実行速度を計測したものと思われ。
0259デフォルトの名無しさん
NGNGそれはつまり printf vs cout でそーゆー結果が出たって事ですか?
それぐらいあるよ。
0261デフォルトの名無しさん
NGNGputs vs coutじゃない?
0263デフォルトの名無しさん
NGNG君は脳内コンソールでも使ってなさい p
今作って実行して見たんだよボケ!
for(i=0;i<10000;i++){
System.out.println("Hello C "+i);
}
ちゃんと1万回5−7秒くらい。(何故かTimeが取れない)
さっきの人と環境が違うから比較にはならないが。
0266デフォルトの名無しさん
NGNGreal 0m1.262s
user 0m0.010s
sys 0m0.020s
ですがなにか?
#include<time.h>
void main(void)
{
clock_t i;
for(i=0;i!=10000;i++)
puts("Hello C");
i=clock();
printf("%d\n",i/CLOCKS_PER_SEC);
}
/*これで実行したら、確かに4秒だった。*/
0268デフォルトの名無しさん
NGNG表示されてないから駄目。
#include<ctime>
using namespace std;
void main()
{
clock_t i;
for(i=0;i!=10000;i++)
cout<<"Hello C\n";
i=clock();
cout<<i/CLOCKS_PER_SEC<<'\n';
}
//これだと10秒もかかってしまった
じゃあunixが優秀ということで。
0275デフォルトの名無しさん
NGNGベンチ取らなくても分かるからとってないけどね
0276266
NGNGcygwinなんだが...
CPUはAthlon1.1G
ちなみにgccだと
bash-2.05a$ gcc -O2 main.c
bash-2.05a$ time ./a.exe
real 0m1.422s
user 0m0.170s
sys 0m0.200s
やっぱruby最速(藁
俺のはP2-350だぞゴルア
やっぱり4秒だったよ。
と、いうことは<<は遅いということか・・・。
0279267
NGNG俺の環境
VC++6.0
Celeron500Mhz
マシンの性能差はかなりあるぞ
0281結論
NGNGもう結論なの?ruby擁護?
0283デフォルトの名無しさん
NGNGアセに落とすと一番ステップ数多くなるから。
0285じゃこれは?
NGNGlong i;
long a,b,c;
for(i=0;i<10000000;i++){
a=i;b=i*2;c=i/3+1;
a= a*b/c;
}
}
0286
NGNGもうちょっとよく読め。
C++が遅いんでなくてcout<<が遅いと書いてあるだろ。
0287デフォルトの名無しさん
NGNGっつーと rubyが最も速いっつー結論に異論は無い、と。
0288今のところ・・・
NGNG0289デフォルトの名無しさん
NGNGそんなんでいいよ。
結果だけ表示すれば。
0290速度結論
NGNGまあこれでいっか・・・
0291デフォルトの名無しさん
NGNG(・∀・)イイ!
0292デフォルトの名無しさん
NGNG0293デフォルトの名無しさん
NGNG0294デフォルトの名無しさん
NGNG0295デフォルトの名無しさん
NGNG0296デフォルトの名無しさん
NGNG> HSP > BASIC > ひまわり > Ruby
0297デフォルトの名無しさん
NGNG正解。
よって、終了。
300踏んだ人、削除依頼出してきて。
0298デフォルトの名無しさん
NGNG0299266@るby房
NGNGDOS窓の表示速度調べたかっただけなのに...
0300デフォルトの名無しさん
NGNG> HSP > BASIC > ひまわり > Ruby > VB
これでいい?>298
0301デフォルトの名無しさん
NGNG0302シャア
NGNG0303デフォルトの名無しさん
NGNGつーか同じ環境でやらないと意味無いだろ
0304デフォルトの名無しさん
NGNG↑こう言う奴が居るから気持ち悪くて使いたく無い (^-^
0305デフォルトの名無しさん
NGNGbash-2.05a$ time ruby -e "for i in 1..10000 do puts 'hello,ruby'; end"
real 0m1.262s
user 0m0.010s
sys 0m0.020s
bash-2.05a$ gcc -O2 main.c
bash-2.05a$ time ./a.exe
real 0m1.422s
user 0m0.170s
sys 0m0.200s
なので
Ruby>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>C
であることが証明されました
0306デフォルトの名無しさん
NGNG0307
NGNG何でオマエが同一環境持ってんだよ。
オマエ単なる厨房だろ(藁
0308デフォルトの名無しさん
NGNGRubyにはお似合いだな
0309デフォルトの名無しさん
NGNG0310デフォルトの名無しさん
NGNG0311デフォルトの名無しさん
NGNGいや、じっくりおちょくって遊ぼう
まさか a.exe とは
いやー流石ルビーストだね 嘲笑
0312デフォルトの名無しさん
NGNG私はどちらかに荷担するつもりはないが、
必死なのはRuby房の方では。
0313学者
NGNGうんこ == ruby
が整数 1を返すことがわかったぞい!
0314デフォルトの名無しさん
NGNG0315デフォルトの名無しさん
NGNGワラタ
0316デフォルトの名無しさん
NGNG0317デフォルトの名無しさん
NGNGRuby Athlon1.1G
C/C++/Java Celeron500, P2-350
よってここでもRubyの優位性が見て取れます
0318デフォルトの名無しさん
NGNGもしかしてさ、自分で面白いと思ってるの・・?
0319デフォルトの名無しさん
NGNG出来ますが、実行するとうんこを吐いて死んでしまいます。
0320デフォルトの名無しさん
NGNGマシン分けてるんだ
俺もRuby入れると環境が汚れるから、捨てシステムに入れろって注意されたよ
0321デフォルトの名無しさん
NGNG0322デフォルトの名無しさん
NGNG・・・馬鹿の世界チャンピオンだ・・・。
0323デフォルトの名無しさん
NGNG0324デフォルトの名無しさん
NGNG君って(・∀・)イイ!
そうか〜よごれるのか〜。
0325デフォルトの名無しさん
NGNGふつー恥かしくて付けれません
0326デフォルトの名無しさん
NGNGワラタ
0327デフォルトの名無しさん
NGNG「あ〜あ〜、やっちゃったよこのYellow」
と思ったNativeが十万人程確認されていますね
0328デフォルトの名無しさん
NGNGRuby房の顔が想像できて笑えるからいいけど。
0329デフォルトの名無しさん
NGNG( ::::::::::::::::::::::::^:::::::::: :::::: :(
丿::::::::::::::::::::::::::::::::::::::::::::::::::::: :::: (
/::::::::::/ノ::::::::ノ::::::::ヽ:人::::::::::ヽ::::::::::)
(::::::::::/ ):::ノ::::ノ ) ソ ヾ::::::::::::丶ヽ
(:::::::::/ 彡 ノ ノ :: 彡:/)) :::::::)
(::::::::::/彡彡彡彡彡 ミミミミミミミ ::::::::)
( :::::::// ̄ ̄ ̄ ̄ヽ===/ ̄ ̄ ̄ ̄ヽ |::::::)
| =ロ -=・=- ‖ ‖ -=・=- ロ = |
|:/ ‖ / /ノ ヽ \ ‖ ヽ|ヽ
/|/ ヽ`======/ ⌒ ` ========ノ | |
(|| .(● ●) |ノ
| : :: :::l l: ::: ::: |Rubyこそ一番一番一番!
| _:: :二 M二__::::::.. . |
| : ::: : ::: :: === ::: :: :: :::: )
\ ::: ::::::::::: :::::::::: :::::::::::::: /|
/|ヽ ヽ:::: _- ::::: ⌒:: :::::::: -_ ノ
/ || 丶\_::_:::::_:::: :::::_/:::: /
| | \ \ ::::::::::: :::::::::: ::: :: _/
/ ̄\ 丶  ̄ ̄ ̄ ̄ ̄ ̄ ̄
これだろ?w
0330デフォルトの名無しさん
NGNG0331デフォルトの名無しさん
NGNG0332在日
NGNG0333デフォルトの名無しさん
NGNGネイティブコンパイラが無い言語なんてクソだよ。
ソース行末にセミコロン書く習慣のない言語なんてクソクソだよ。
0334デフォルトの名無しさん
NGNG馬鹿発見
Ruby >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Java >>>>>>>>>>>>>> C
0335デフォルトの名無しさん
NGNGRubyを知ればCはやらなくていい!!!
0336デフォルトの名無しさん
NGNG理論的な話が不可能なドキュソ・ルビャー発見。
バカは自分がバカだと気づかない。
0337指輪物語
NGNG執事「我神よ、民供は増えすぎた言語に困惑しております
残念ですがこの2つの鉄槌を振るわねばなりません
Perl,Ruby,phpのうちからお選び下さい」
神様「うむ、」
執事「ささ」
神様「では、一つ目の鉄槌をRubyに、そして二つ目の鉄槌をRuby厨に
落すぞ、あ、後余ったのも全部Rubyでいいや うんうん」
執事「マンセーー!!!」
0338デフォルトの名無しさん
NGNG論理的な話し以前に、感情的な話しかできない。
自分が信奉するモノを叩かれると、エモーショナルにキレる。
もうね、アフォかと。ヴァカかと。
0339デフォルトの名無しさん
NGNGあまり期待せずに待ってるよ(わら
0340デフォルトの名無しさん
NGNG0341CopyBorot
NGNG> ルビャーとマカーって、共通するモノがあるよね。
> 論理的な話し以前に、感情的な話しかできない。
> 自分が信奉するモノを叩かれると、エモーショナルにキレる。
> もうね、アフォかと。ヴァカかと。
オマエモナー
0342デフォルトの名無しさん
NGNGルビ房の自作自演。
0344デフォルトの名無しさん
NGNGRuby厨が痛いだけ。
Rubyという言語そのものは
Ruby >>>>>>>>>>>>>>>>>>>>>>>>>>>> Java >>>>>>>>>>>>>>> C
0345デフォルトの名無しさん
NGNGCは新だ。
0346デフォルトの名無しさん
NGNGマジで総意
Ruby>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>他の糞言語>>>>>>>>Ruby厨
0347デフォルトの名無しさん
NGNG0348デフォルトの名無しさん
NGNG0349デフォルトの名無しさん
NGNGネイティブコードにコンパイルってのはできるんでしょうか?
(そういう言語仕様ではないのかな?)
あくまでOOなスクリプト?
0350126
NGNG「JavaチップのVM」でファイルI/Oとかネットワーク周りの物理層を
どう処理しているかって聞いたんだよ。
それに対する >>128, >>131, >>132 (レスありがと)で納得したんだが、
>VMとして提供するのが理想
>JNIという最終手段
では話になってないんだよ。
結論としては、VM内やJNIの先で FPGA にメモリマップされたI/Oを叩いたり、
サブCPUや非Javaバイトコードモードに遷移して、
Cやasmで書いたドライバを実行して物理I/Oを行うってことですな。
0351デフォルトの名無しさん
NGNG>>305の結果読め。rubyはコンパイルするまでもなくCより高速
0352デフォルトの名無しさん
NGNGそれってさ、単にforループを判定しただけだろ?意味無いよ。
実用的なアプリケーションでのベンチマークはどうよ?
「できる・できない」は別として、OOなスクリプトなんだから、Cと比較してること自体イタイ。
サーバサイドで、Javaと比較した客観的データくれ。
0353デフォルトの名無しさん
NGNG> 2.delete を意識しなくていい。
あんた、真のプログラミングでJava使ったこと無いだろ。
GCに悩まされているサーバサイドの皆さん、説教してやってください。
0354デフォルトの名無しさん
NGNGc言語なkん化かこの異物!
じゃヴぁなんか遅きゅ轍海野のにmな棚井悪阻。真のおおプロ蔵mなが類byを使う戊だ!
るbyさいこーまt″案sレー
0355デフォルトの名無しさん
NGNGそれも、推測だけど、gcc では出力をバッファリングしていないが、
Rubyはバッファリングしているために、見かけ上速くなってるだけでは?
ファイルにリダイレクトした場合の速度計測希望〜
0356デフォルトの名無しさん
NGNGRubyしらんけど
0357デフォルトの名無しさん
NGNGRubyのGC -> え、Ruby何それ?
0358デフォルトの名無しさん
NGNGRudyが速いと主張するなら、まともなベンチマークを取って
ほかの言語とも比べたものを示せ>ルビャー
0359デフォルトの名無しさん
NGNG0360デフォルトの名無しさん
NGNG知恵遅れのジジイはCでもやってろ
0361デフォルトの名無しさん
NGNG0362デフォルトの名無しさん
NGNG0363デフォルトの名無しさん
NGNGまずはRubyをインストールしてみることです。
0364デフォルトの名無しさん
NGNG0365P2-350
NGNGlong a,b,c;
long t1,t2;
t1 = System.currentTimeMillis();
for(i=0;i<10000000;i++){
a=i;b=i*2;c=i/3+1;
a= a*b/c;
}
t2 = System.currentTimeMillis();
System.out.println("time = "+(t2-t1) +"msec.");
8620msec
0366デフォルトの名無しさん
NGNGここに居るのは被害者かいな (w
0367デフォルトの名無しさん
NGNGごくごく1部の機能が優れている?(とは思えないけど)からって、そこにばっかり粘着してて。
枝葉を見て幹を見ず。木を見て森を見ず。
結局は、目的の解決に最適な言語を使えばいいだけなのに。
なんでもかんでもRubyでやろうっていうんだろうな。
0368デフォルトの名無しさん
NGNG0369デフォルトの名無しさん
NGNG0370デフォルトの名無しさん
NGNGAthlon 1GHz で、
1.700(秒) IBM jdk1.3.0
1.710(秒) WatcomC 11.0J
2.140(秒) jview 5.00.3802
2.850(秒) jdk1.4beta3
3.070(秒) jdk1.3.1-02
7.393(秒) Borland C++ Builder 4
っつーとこですか。
コンパイラは古いのしか持ってないので
新しい奴持ってる人は自分で測定してください
0371370
NGNGコンパイラのオプション間違ってるのかな…
それとも __int64 使っちゃいけないとか?
教えて>偉い人
0372デフォルトの名無しさん
NGNGですが本当ですか?
なんかすごい嘘くさいのですが・・・
0373デフォルトの名無しさん
NGNG何のオーバーヘッドっすか?
0374デフォルトの名無しさん
NGNG0375デフォルトの名無しさん
NGNGlongだと 32ビット値になるような気が…
0376デフォルトの名無しさん
NGNGそれと変数はcharとかbyteでもやってみー
0377デフォルトの名無しさん
NGNG>>それはコンパイラの最適化オプションを付けての結果かい?
そのつもり。
>>それと変数はcharとかbyteでもやってみー
やりたいのでしたら、ご自分でどうぞ。
0378デフォルトの名無しさん
NGNG関数を呼んだときのオーバーヘッドです。
0379デフォルトの名無しさん
NGNG両方覚えろ
0380デフォルトの名無しさん
NGNGそれは誰に言ってらっしゃるんで?
0381デフォルトの名無しさん
NGNGていうかJavaでは関数とはいわずにメソッドといいます(w
0382デフォルトの名無しさん
NGNGJavaのメモリリークについて言いたいのかな?
もちろんコーディングをミスればリークするけどさ。
VMが必要か必要じゃないかを判断できれば、メモリリークはなくなるけど
冷静に考えればそんな事が無理なのは明らかでしょ。
俺が言ってるのは、明示的にdeleteを書かなきゃならないコストは
どれくらいのものかって事。
C++を使ってる時、オブジェクトを生成するようなメソッドはあまり書きたくない。
effectiveC++にも似たような事が載ってたと思うので読んでください。
enumはいまいち便利な使い方が思いつかないんだけど、
便利な使い方があったら教えてください。
>>350
あんたインタープリターの意味がわかってないよ。
PERLとかRUBYのI/OとJAVAのI/Oは同じ類だってわかってます?
RUBYはまだ使い込んでいないので、特徴があまり把握できてないんで
何ともいえないですね。
作者が書いてる本は持ってるんですけど、あれには大規模開発には向かないって
書いてありますが、なんででしょうか?
RUBYにはコンパイラは無くても、コンパイル時に行うような
文法やら型のチェックってありますよね?
わかる人いたら教えてください。
0383デフォルトの名無しさん
NGNGリフレクションを使え.動的メソッド呼び出しやコールバック
関数なんかもJavaで作れる.
0384デフォルトの名無しさん
NGNGそういう場合は大きさ1の配列作ってやれば良いYO!
0385デフォルトの名無しさん
NGNGJAVAのメソッド呼び出しは、全て動的ですが。
コールバック関数・・・何がしたいのかよくわからん。
で、リフレクションなんてのはおそらく
普通の人には使う機会はない。
0386デフォルトの名無しさん
NGNGAbstractFactoryパターンやCommandパターン使うときには
必須だろ?リフレクションを使わないってのはJavaでただ
プログラム書いてるってダケのこと(w
0387デフォルトの名無しさん
NGNGなんの事をリフレクションって言ってるのかね・・・
リフレクションAPIをあげとくと、
Class,Member,AccesssibleObject,Field,Method,Construtor
Array,Modifier,ReflectPermission
ちょっと怪しげ・・・
なんせ使わないからね。
これで、あんたがデザパタもJAVAも
全然理解してない事がよーーくわかりましたよ。
0388!=385
NGNGクラス名でClassインスタンスとって、newInstanceして、
invokeMethodとかって、時々やるっしょ。
動いてるサーバーのビジネスロジックの追加・交換なんか
ができて便利。
0389デフォルトの名無しさん
NGNGまあ、そこはセンスの問題かな。
とりあえず、インターフェースだったらなーって思ったケースってどんな
ケースか参考までに聞かせてもらえるとうれしいな。
0390デフォルトの名無しさん
NGNGインターフェースを使って、実装と分離するのはよくある
話で、動的にサブクラスを生成して共通メソッドを呼び出す
てのは、ある程度の規模の開発になるとよくやるんだよ。
その際に、hogehoge.classなんてしてClassオブジェクトを
取得したり、Methodオブジェクトでサブクラスのメソッド呼び出し
を動的に制御したりする。こういうことをするために必要なのが
リフレクションです。まあ、漏れもめちゃくちゃ詳しいわけでは
ないけどね。
0392デフォルトの名無しさん
NGNG多重継承が必要な時。
Javaは多重継承ができないから、必要な機能が複数の抽象クラスに
分かれている場合なんかは不便だな。
まあ、普通にJavaでOOPをやってりゃその辺りで頭を悩ます必要はないんだけど。
0393デフォルトの名無しさん
NGNGイマイチいいたいことがわかんないっス。
もうちっと説明キボン。
リフレクションを使うと、コンパイル時の型チェックはできないので
実行時の動的型チェックしか行なえない。
0394デフォルトの名無しさん
NGNGあなたはOOPを根底から勘違いしてるようです。
>話で、動的にサブクラスを生成して共通メソッドを呼び出す
それを(実行時)ポリモーフィズム、レイトバインディング、
動的バインディング、ダイナミックメソッドディスパッチ等と呼びます。
それは、言語レベルで用意されてます。
抽象クラス、オーバーライド、インターフェースについて調べてみてください。
ちなみにリフレクションAPIは、かなり低レベルのAPIです。
もともと、JAVABeansを組み合わせたりするアプリケーションを
作るために作られたのだと思います。
(最初は用意されていなかったはず・・・)
ようするにクラスを解析するようなものです。
>>388
なるほど、そういう使い方もできるんですね。
止められないプログラムというのは身近じゃないので・・・
他にも使いかたってあるんですか?
0396デフォルトの名無しさん
NGNG例えば RandomAccessFile みたいな read() と write() を
両方備えたクラスを FilterInputStream とかで処理してた
いとき。 わざわざ RandomAccessFileInputStream みたい
なの作るのって疲れる…
0397デフォルトの名無しさん
NGNG思うに、アンタの方がよっぽど素人さんだと思う・・。
そんな単語だけ並べて・・中身を語ってみなさい。
リフレクションがJavaBeanのために作られたという根拠は??
0398デフォルトの名無しさん
NGNGいや、まあそうなんですが・・・
具体的なケースです。
理論的に、継承が必要なケースはポリモーフィズムを使いたい場合で、
ポリモーフィズムを使わない場合、集約(アグリゲーション)という
別の手段で回避できます。
現実的には、コーディングが面倒だったりしますが・・・
(そこら辺の自動化がIDEに組み込まれていないが無いところで、OOPLが浸透してない
事を実感させられるのですが)
0399デフォルトの名無しさん
NGNGうそだよーん。
Class.forName()でClassのインスタンスがとれて、
ClassからFieldやMethodインスタンスのリストが取れるんだから、
クラスファイルのURLとどのメソッドに何渡すかさえ与えれば、
あるプログラムから知らないクラスの知らないメソッド動かせる
よーん。
あんた偉そうな割に無知なのね。
0402デフォルトの名無しさん
NGNG>ClassからFieldやMethodインスタンスのリストが取れるんだから、
Listだったっけ?配列じゃなかった??
0403デフォルトの名無しさん
NGNGという事でWEBで探してきました
ttp://www.google.co.jp/search?q=cache:tnoExcybBsU:www.wakhok.ac.jp/~maruyama/summer98/node14.html+reflect+beans&hl=ja
だいぶ昔の事でどこで読んだかは忘れてしまったのですがね。
これで納得してもらえなければ、別に構いません。
開発同期が何であれ、そんな感じの使い方しかできないという事が
わかってもらえればいいです。
0404デフォルトの名無しさん
NGNGhttp://www.illy2.f2s.com/jpg/miruna.jpg
0405デフォルトの名無しさん
NGNG0407デフォルトの名無しさん
NGNGJavaBeansじゃなくて、java.beansパッケージのクラス群のことだったのね。
ハイハイ。
イントロスペクション云々は昔勉強したけど忘れてしまったよ。
でもこのリンクが言ってることがリフレクションのすべてだ、なんて
まさか思ってないですよね?
個人的には、java.beansパッケージのクラスを使ってる場面をみたことがないです。
0408デフォルトの名無しさん
NGNGmark / reset サポートしてないのも…
0409デフォルトの名無しさん
NGNGプロパティファイルからで良いんじゃない?
0410デフォルトの名無しさん
NGNG>それを(実行時)ポリモーフィズム、レイトバインディング、
>動的バインディング、ダイナミックメソッドディスパッチ等と呼びます。
>それは、言語レベルで用意されてます。
>抽象クラス、オーバーライド、インターフェースについて調べてみてください
>>390を読むと、この説明はあってるようだけど、そもそも、「実行時にサブクラスを生成」するのはレイトバインディングとかダイナミックバインディングとは言わないだろ。
0411デフォルトの名無しさん
NGNG多分それだと、静的だっていうぞ、こいつは。
サーバでソケットの向こうから飛ばしてもらうとか。
管理ユーザがGUIから必要になるたびに登録するとか。
あるディレクトリを常に監視して、そこにファイルが置かれたら
そいつをイベントにしてロードするとか。
まさかそれもダメって言うなら、あんた言うの動的なプロ
グラムのシンボル名称解決ってどうやるんだよ???
0412410
NGNG0413デフォルトの名無しさん
NGNGさらに、「言語レベルで用意されている」という受け答えがすでに意味不明。
この人本当にJavaが何かさっぱりわかっていないよ。
0414デフォルトの名無しさん
NGNGそうぢゃなくて、「こういう条件が揃った場合には、このクラスを
呼び出す」っていうことが必要な時によく使うけどね漏れは。
0415デフォルトの名無しさん
NGNGプログラムを止めたくない場合の例では、
サーバー用のクライアントを立ててローカルから送ってあげるって
とこですかね。
>JavaBeansじゃなくて、java.beansパッケージのクラス群のことだったのね
いえ違いますよ。
JavaBeansを使った開発環境作成のためです。
>でもこのリンクが言ってることがリフレクションのすべてだ、なんて
>まさか思ってないですよね?
古すぎるせいか、開発動機が書かれてるホームページはありません。
私はAPIリファレンスから知識を得ていますので、それ以外のことはわかりません。
>共通メソッドを呼び出す
こっちがレイトバインディング云々ですよ。
もちろん静的ですよ。
つうか、最初に明示した条件に反してるでしょう。アフォですか?
論破されたからって「こいつ」呼ばわりですか?
0417410
NGNG文字列を実行する、しかも呼ばれた側呼び出し元の環境を参照できる、ってことでいいんですよね?
>>413
おれもそうおもう。
なんでサーバーの話をしているのやら。
0419デフォルトの名無しさん
NGNG0420デフォルトの名無しさん
NGNG>古すぎるせいか、開発動機が書かれてるホームページはありません。
>私はAPIリファレンスから知識を得ていますので、それ以外のことはわかりません。
じゃあぜひシステム開発を経験して、リフレクションの便利さ・必要さを
身をもって体感してください。
私もリフレクションが好きでたまらないというわけでは全然ないんだけど、
使わざるを得ない場面に遭遇するから使っているだけです。
JavaでOOPやってるとかならず出てくるですよ、コイツは。
0421デフォルトの名無しさん
NGNGポリモーフィズムの説明はうんざりなんですが、
同じ事をC++でやる事を考えてみてください。
といってもC++知らないでしょうけど・・・。
ちなみにJavaではI/Oの機能はライブラリレベルで用意されていると
表現します。
PERLではI/Oの機能は言語レベルでサポートされています、
と表現します。
0422デフォルトの名無しさん
NGNG>ポリモーフィズムの説明はうんざりなんですが、
>同じ事をC++でやる事を考えてみてください。
>といってもC++知らないでしょうけど・・・。
漏れはいちおうC++のプログラマーなんだが・・。
うんざりせずにC++での実例をもとに語ってみてください。
0423デフォルトの名無しさん
NGNGどこがやねん。
0424デフォルトの名無しさん
NGNGどういう場合で使うのでしょうか?
是非教えてください。
私は一度も使ったことありませんので。
>なんでサーバーの話をしているのやら。
>>動いてるサーバーのビジネスロジックの追加・交換なんか
というわけです。
0425デフォルトの名無しさん
NGNGあの言語でファイルフォーマット解析しろって言われた時は
吐きけがしたよ。
0426デフォルトの名無しさん
NGNG構造体にがぽっとはめられないかね、がぽっと
0427デフォルトの名無しさん
NGNG上で出したけど、いくつかのデザインパターンではリフレクションを
前提としている場合があります。そして、それを適用した方が
後々のメンテ性が良いことが多いんです。
例えば、実行時のあるオブジェクトの状態によって呼び出すメソッドを
変えたい場合にはリフレクションしかありません。
まあゴリゴリと長いコードを書くのであれば別ですが、OOPだけに
そんなことはしませんよね?
0428デフォルトの名無しさん
NGNGライブラリレベルもそう。
言語仕様で定義されているとか、標準ライブラリに含まれているとか、そういう言い方してほしい。
0429デフォルトの名無しさん
NGNGC++でポリモーフィズムするには
親クラスのメソッドにvirtualをつけて
子クラスでオーバーライドするだけですが・・・
あとは親クラスの型を指すポインタ変数に子クラスを入れて
普通にメソッド呼び出しするだけで
動的バインドが行われます。
JAVAではvirtualをつけなくても全部virtualになってます。
わかっていただけたでしょうか?
あなたのリフレクションを使う動的バインドは
別物でしたか?
0430デフォルトの名無しさん
NGNG0431デフォルトの名無しさん
NGNGつーかC++とJavaの違いをまったく知らないねこの人。
0432422じゃないけど
NGNGポリモルフィズムとは言うけど。
リフレクションを使うのは、言語が動的バインドをサポートしていないから、別の手段でそれと同じ事をする、っていう気がするんだが…
0433デフォルトの名無しさん
NGNGC++で同じ事するときはどうするの?
でさ、デザパタの本ってリフレクションAPIが作られる前からあったけど
どうやってたんだろ??
ところでファイルフォーマットの解析って、
俺はバイナリーエディター使うんだけどさ、
コンパイラでどうやってやるの?
0434デフォルトの名無しさん
NGNGそれはウソ。
リフレクションを使わざるを得ないのは、実行時まで「クラス」「メソッド」を解決できない時だけ。
単に条件分岐で起動するメソッド変えるだけとかなら、デザパタに解決方法がいくつかある。
Class.forName()でクラスロードしてJITコンパイルして実行、つうのは
オーバーヘッドでかすぎなので、なるべくしないほうがいいよ。実行時にいちいち遅くなる
よりは、初期化時だけ遅いほうがナンボかましでしょ?
0435デフォルトの名無しさん
NGNGゴメン、もうちょっとわかりやすく書いて
意味が良くわからないっす。
0436デフォルトの名無しさん
NGNG別にウソではないだろう。引数を持つコンストラクタを持つクラスのインスタンスを
動的に生成したい場合はどーする。リフレクションでやるしかないだろ。
>Class.forName()でクラスロードしてJITコンパイルして実行、つうのは
>オーバーヘッドでかすぎなので、なるべくしないほうがいいよ。実行時にいちいち遅くなる
>よりは、初期化時だけ遅いほうがナンボかましでしょ?
ま、よーするにコードの見易さを取るか、速さを取るかだわな。
0437デフォルトの名無しさん
NGNG引数つきのコンストラクタの起動方法って、結構みんな知らないのね。
Constracterクラスのドキュメント見て味噌。
0438デフォルトの名無しさん
NGNG>俺はバイナリーエディター使うんだけどさ、
話がかみ合わないわけだこりゃ。
0439デフォルトの名無しさん
NGNGつまりはnewを使うことを動的にオブジェクトを生成すると
一般的には言うんだが、
どういう意味で使っているのか教えてくれないかな?
0440デフォルトの名無しさん
NGNGそれもやっぱりウソ。ある特定のインスタンスのフィールドをダイナミックに
初期化したい場合にはリフレクションを使う。
それから、単体テストをする場合になんかも使う。setAccessible(true)でフィールドの
中身を取り出す。
0441デフォルトの名無しさん
NGNGすまん。何言ってるのかワカラン。
動的に生成するって、何をさしていってるの?
JVMが目的のクラスを解決できていれば、単にそのコンストラクタで
newするだけだよね?
0442デフォルトの名無しさん
NGNGそれもリフレクションの一種じゃない?
0443デフォルトの名無しさん
NGNGと書き込んでみるテスト。
0444デフォルトの名無しさん
NGNGそういう隠蔽を破壊するようなことをなんでする必要があるの?
単体テストならわかるけど。
0445432
NGNG強い型付けの言語で、あるクラスの変数を宣言して、そのサブクラスのオブジェクトを代入する、っていうのは、
動的バインドとはいわないだろう、っていうことだ。
って、なんか、解かりやすくなった自身無いなぁ…
0446デフォルトの名無しさん
NGNGうーむ、言い方が悪かった。
条件によって生成するサブクラスが違う場合(ただし同じインターフェースを
実装しているか、同じ抽象クラスを継承していることが前提)に、getConstructor()
とかやるじゃない。
0447デフォルトの名無しさん
NGNGアサーションだよ。アサーション用のメソッドが無い場合は
そうやってクラス内の値を取り出すしかない。
0448親切な人
NGNGネットサーフィン中に、凄い人気掲示板、発見!!!
「はにちゃんねる」↓
http://www.isn.ne.jp/~honey/hc/
ネット内では、現在、この掲示板の話題で、持ちきりです。
0449デフォルトの名無しさん
NGNGあーわかりました。そういう時は、なるべくFactoryMethodとかで
やったほうがいいよ。(かのヒロミチュ先生もご推薦(藁))
0450デフォルトの名無しさん
NGNGJavaの場合、その変数(C++だと派生クラスポインタ)に対して
メソッド呼び出しをした時必ず動的バインドが行われる。
過去レスを読んでみると良い。
0451デフォルトの名無しさん
NGNGそう、だからFactoryMethodとかAbstractFactoryとかその辺のことを言ってるんだよ。
0452デフォルトの名無しさん
NGNG誰?
0453デフォルトの名無しさん
NGNG>そういう時は、なるべくFactoryMethodとかでやったほうがいいよ。
という意味がいまだにわかっていないじゃん(w
と書いてみるテスト
0454デフォルトの名無しさん
NGNG本当に、そのあたりを記述するのにリフレクション使う必要が
あるのかな???C++/Java両刀の人間には不思議なんだけど。
使ってもできるけど、避けたほうがいいんじゃない?という話
ですが、どないでしょ?
0455デフォルトの名無しさん
NGNG高木先生はすげーって。
0456デフォルトの名無しさん
NGNGもうほっといてあげなって。
これだけ説明してもわかってないし、
ヒープとスタックの区別もついて無さそうだよ。
0457デフォルトの名無しさん
NGNGきっとOOもわかってない。
あー、哀れ・・・
0458445>450
NGNG0459デフォルトの名無しさん
NGNG0460スレと全然関係無いけど
NGNG第三者装って揚げ足取るのが得意技。
0461デフォルトの名無しさん
NGNGClassクラスのfactoryメソッド使うだろ?
まさにそれがリフレクションの機能使ってるやんけ。
0462デフォルトの名無しさん
NGNG0463デフォルトの名無しさん
NGNG>使ってもできるけど、避けたほうがいいんじゃない?という話
>ですが、どないでしょ?
というのは何故??
0464デフォルトの名無しさん
NGNGけど、美しくないよね。
0465この人大丈夫か?
NGNGなんででしょ?普通にnewで対象クラスのコンストラクタ起動するだけでいいじゃない。
仮にそれでないとFactoryMethodが実現できないなら、C++の時どうするの?
0466デフォルトの名無しさん
NGNG君らの書くプログラムはファイルreadすると
勝手にフォーマットがわかるですか?
ずいぶん便利ですね。
0467デフォルトの名無しさん
NGNG「解析」をそんなに責めなくても…
0468デフォルトの名無しさん
NGNGgetConstructorメソッドちゅうのを使うことはリフレクションの機能を使っているということです。
ちなみにこの場合は対象クラスをnew演算子でインスタンス化しません。
0469デフォルトの名無しさん
NGNGあ、そうそう、Constructorクラスていうのがあるからね。
Java2のAPIガイドみてみ。
0470この人大丈夫か?
NGNGswitch分岐よりClass.forName().newInstance();
とかで一行で済ますほうが「ソースが美しい」って話ね。
ここから先は宗教戦争ですので、結論はでませんな。
インスタンス生成メソッドでさえswitchを嫌うことで失う実行時
コストととの相談というあたりを落としどころにしませう。でない
と終わらんよ。
0471デフォルトの名無しさん
NGNG0472デフォルトの名無しさん
NGNGnewする対象のクラスが動的に変わる場合はハードコーディングしないでしょ?
クラス名をひっぱってきて、Constructorオブジェクトを取得してからインスタンスを
取得する。まあ一度やってみてください。やらんとわからんと思う。
0473デフォルトの名無しさん
NGNG0474この人大丈夫か?
NGNG以外と多いんだね。知らんかった。気をつけよう。
0475デフォルトの名無しさん
NGNGアンタも大丈夫??
0476デフォルトの名無しさん
NGNGそうそう、そのへんから宗教戦争になるんだよ、たぶん…
0477デフォルトの名無しさん
NGNGコレクションとリフレクションを同じ感覚で捕らえられる感覚が
おれにはさっぱりわからん。まったく別物じゃん。説明してくれ。
0478デフォルトの名無しさん
NGNGそりゃアンタ、アフォですよ。
0479この人大丈夫か?
NGNGあーそうか。サブクラスを実行時まで解決できないパターンでの
ファクトリの話ね。了解です。
はうー、どんなシステムでそんなもんが必要になるのでせうか。
後学の為に教えてチョ。
0480デフォルトの名無しさん
NGNG3個ぐらいだったら分岐しちゃうような…
0481デフォルトの名無しさん
NGNG0482デフォルトの名無しさん
NGNG結構いろんなところで遭遇するよ。
例えばA/B/Cというシステムにメッセージを送りたくて、出口が一つしかない場合とか。
メッセージのあて先決定メソッドなんかはabstructにしておくんだよ。
0483デフォルトの名無しさん
NGNG3個程度しか増えないことがわかっているならそれでも良いんじゃない?
んで、将来も変わらないことがわかっているんならわざわざリフレクション
使うまでもないかもね。
0484デフォルトの名無しさん
NGNGそんなリフレクションAPIの末端使ってて、リフレクションとか言ってるんだもんな。
解析と判別も笑えたけど。
おめーのバグだろ・・・スレに登録済みですか?(笑)
>Class.forName().newInstance();とかで一行で
一行じゃかけないよ。
横に長くて(笑)
それは冗談にしろ、2つのメソッドは両方引数がくっついてくるわけで
そこら辺もとか考えると、
switchの方が、メンテするとき明らかに楽だと思うけど。
で、リフレクションおじさんは結局のところ
変なデザパタの本をそのまんま丸暗記してたって事なのかな?
さすがにスタックとヒープの違いはわかってると思うけど・・・
そう願いたいよ。
0485デフォルトの名無しさん
NGNG0486デフォルトの名無しさん
NGNG0487デフォルトの名無しさん
NGNG20個分岐するswitchって言うけどさ
20個クラスつくったり、ファクトリーメソッド呼び出す側とか
いろいろ考えてみると別にどうってことないと思うけど。
0488デフォルトの名無しさん
NGNG>というか、リフレクションって呼ぶとかなり誤解招くな・・・
>そんなリフレクションAPIの末端使ってて、リフレクションとか言ってるんだもんな。
えらそーなことをのたまうオメーが説明してみー。
0489デフォルトの名無しさん
NGNGバカかお前は?
クラスが増えるたびにいちいちソース直してコンパイルかけんのかよ??
そーゆーのはプロパティファイルに外だしするんだよヴォケが。
0490デフォルトの名無しさん
NGNGというかリフレクションクラス全部挙げたりしたんですが・・・
今日は70メッセージくらい書いたと思うけど。
今日も厨房が一人減って満足だ。
では、おやすみ。
0491デフォルトの名無しさん
NGNG0492デフォルトの名無しさん
NGNGそれは説明したことにはならんと思うぞ。
0493デフォルトの名無しさん
NGNG20個の分岐が、あっちこっちに散らばるようなら、ポリモルフィズムつかえっていう時に出てくるなぁ。
でも、20個のcaseのswitchが1つあって、そこで作るオブジェクトを切りかえるような使い方なら、
おれはまよわずそれを使うな。
リフレクション(?)なんぞ使わずに。
0494デフォルトの名無しさん
NGNGついでにJavaで仕事をしたこともないらしい・・
0495デフォルトの名無しさん
NGNG0496493
NGNG0497デフォルトの名無しさん
NGNGというかですね、あるシステムの汎用フレームワーク的な部分を構築する
場合は、スーパークラスやインターフェースのかたまりを作って
それをベースにいろんなシステムを開発していくわけです。
そのフレームワークからユーザーパッケージのクラスを、ソースに
ベタ書きで呼び出すわけにはいかんだろ、というワケです。
0498デフォルトの名無しさん
NGNG名スレだな。
0499デフォルトの名無しさん
NGNG0500デフォルトの名無しさん
NGNG出来るメソッド書くとき java.lang.reflect にお世話に
なりました。
0501デフォルトの名無しさん
NGNGストリングクラスのオブジェクト渡すのと、
派生クラスのオブジェクト渡すのと何が違うの?
それってファクトリーメソッドの話とは違うよね?
0502デフォルトの名無しさん
NGNGC#はうざいので消えてください。
0503デフォルトの名無しさん
NGNGなんか話がズレてるぞ。
汎用なんだから、ある特定のユーザーパッケージもしくはクラスを
importしたりベタ書きしたら、ぜんぜん汎用じゃなくなるじゃんか。
0504デフォルトの名無しさん
NGNG0505503
NGNGハードコードすると、汎用パッケージとして意味をなさなくなってしまう
という意味です。
0506503
NGNG0507デフォルトの名無しさん
NGNGだから、外部から派生クラスを受け取ればいいでしょ?
0508デフォルトの名無しさん
NGNGファクトリーメソッドの話はもう終わったのかな。
0509デフォルトの名無しさん
NGNGスマソ。意味がわからん。
「外部から派生クラスを受け取る」ってどういう意味?
0510ジーンズもケイタイも503が好き
NGNG汎用パッケージとユーザーパッケージが同時に存在してるなら、どういうことになるんだろうね。
0511510
NGNG0512デフォルトの名無しさん
NGNGずっと続いてます。
0513デフォルトの名無しさん
NGNGつまり Class.forName() で得られるような
クラスオブジェクトを渡すって事では?
0514デフォルトの名無しさん
NGNGつまりは、ユーザーパッケージの事。
0515513
NGNG0516デフォルトの名無しさん
NGNG汎用パッケージは、いろんなところに横展開が可能だ。
A社で使ったり、B社で使ったり・・。業界が同じなら流用しやすいだろ。
だけど中身の業務は違うから、そういう部分はユーザーパッケージのクラス
で実装するんだよ。汎用パッケージが提供するのは主にインターフェース
もしくは抽象クラスの部分。
0517デフォルトの名無しさん
NGNGだから、ユーザーパッケージのクラス名は外だしにするってことだ。
switch文を使ったら、クラス名をハードコーディングせんといかんだろが。
0518デフォルトの名無しさん
NGNGちょっと待て、switchはファクトリーメソッドの話。
ユーザーパッケージの中でnewされたオブジェクト(抽象クラスを継承した物
またはインターフェースをインプリメントしたもの)を受け取る関数を
汎用パッケージに持たせるのが普通では?
つまり、何らかの入力に対して何らかの出力をしたければ、
(例えばの話として)汎用パッケージでは、
constructor(InputStream is,OutputStream os)
というのを用意して、
ユーザーパッケージでは、相応のInputStreamとOutputStreamの派生クラスを
newして
コンストラクタに渡してあげればよい。
0519デフォルトの名無しさん
NGNG俺の構想とはアンタとちょっとずれているとは思うのだが・・
汎用パッケージからAというインターフェースを実装したクラスを
使いたい場合、ユーザーパッケージにはAを実装したクラスを作るよね。
だけど汎用パッケージ側はユーザークラスを知らないわけだ。
だけどインターフェース名で呼び出せば良いから、条件によって
クラス名だけフレームワーク側にあたえてやって、ユーザークラスの
インスタンスを取得すればよい。
こんな風に。
A a = Factory.getA(クラス名);
どうでしょうかね?
0520519
NGNG場合も、インスタンスの取得の仕方が違うだけで考え方は同じだよ。
0521デフォルトの名無しさん
NGNGと理解してるんだけど良いのかな。JavaBeanってプラグインだと決め付けてるけど。
0522デフォルトの名無しさん
NGNGリフレクションの応用範囲は広い。いろんな場面で活用されるということだ。
0523デフォルトの名無しさん
NGNGそれはリフレクションの一部の機能ね。
>>519
言いたい事はわかるけど、それだと
ユーザーが作ったAの派生クラスを外部で利用するには、
キャストをしなきゃならない事は理解できるかな?
Aがインターフェースである場合はそんする部分も大きいよ。
0524デフォルトの名無しさん
NGNG使わないこと。
まあ、ファクトリーメソッドとしては問題ないけどね。
0525デフォルトの名無しさん
NGNGそのユーザーが作ったAの派生クラスは、汎用パッケージがあることが
前提なんだから、他では使い道が無いよね?
万が一、外部で(外部とはどういう意味かよくわからんが)使いたい場合は
そのクラスをそのまま使えばいいんじゃないの?
例えばそのユーザークラスに独自のメソッドが実装されていた場合
(つまりスーパークラスにはないメソッドが定義されている)に
そのメソッドを使いたい場合は、Aというインターフェースで受けては
いけないよね。もしくはダウンキャストしなけりゃならない。
Java2における、Vectorクラスなんかそうだよな。Listで受けるときは
Listに定義されてるメソッドしか使えないけど、汎用的に使えるよね。
0526デフォルトの名無しさん
NGNGどういう場合か簡潔に説明してください。
0527デフォルトの名無しさん
NGNG後付けの部品を組み込む時以外の既知のクラス情報を参照するのに意味あるの?
クラス設計の不手際をコーディング時に辻褄あわせて再設計の工数とトレードオフ
するためには使えるけど、それって裏技の類だよね。
・・・設計に自信があっても障害検知時に利用するというのには大いに意味があるか。
0528デフォルトの名無しさん
NGNG0529デフォルトの名無しさん
NGNG0530デフォルトの名無しさん
NGNG嘆かわしい世の中だ。
0531デフォルトの名無しさん
NGNG逆です。
フレームワークをユーザーが使うの。
>もしくはダウンキャストしなけりゃならない。
既に書いたけど、
汎用フレームワークの外側でnewされてれば、ダウンキャストは起こらない。
リフレクション使うと、コンパイル時の型チェックもできないしさ。
>どういう場合か簡潔に説明してください。
ファクトリーメソッドで必ずオブジェクトを作るって事は、
複数のインターフェースをインプリメントできない。
つまりはインターフェースの意味が無い。
constructor(A a,B b)
というのがあったとき、
A,BをインプリメントしたクラスCがあると、
constructor(c,c)でOK。
これでいい?
0532デフォルトの名無しさん
NGNG0533デフォルトの名無しさん
NGNGきょうび Cだけしかできないなんてヴァカがいたらみてみたいものだ(w
0534デフォルトの名無しさん
NGNGJavaをわけもわからず無理やり使って、勝手に惨めな思いしている
Cプログラマなら、掃いて捨てるほどいるなあ。
0535デフォルトの名無しさん
NGNG年末に使われてないJava使いを集めて捨てました。
すっきりきれいになりました。GCって便利ですね。
0536デフォルトの名無しさん
NGNG0537デフォルトの名無しさん
NGNG0538デフォルトの名無しさん
NGNG>>JAVAで全てできると思っている奴は見ていてマヌケだ。
そんな人いないと思いますけど…
ひょっとして、過去の536ご自身ですか?
0539デフォルトの名無しさん
NGNG>JAVAと表記するやつは間違いなくマヌケさん(稿
おまえは些細なことにこだわって自滅するタイプ
0540デフォルトの名無しさん
NGNG0541デフォルトの名無しさん
NGNG0542デフォルトの名無しさん
NGNG0543あたまの容量が少ないひとっているんだね
NGNGきみってヴァカそう、僕のまわりには決していないタイプ(w
0544デフォルトの名無しさん
NGNG>>ヲタとは知識をひけらかして人を見下す人の事を言ったのが語源ですだ。
それって 542ご自身がヲタだという告白とみなしますが、
よろしいですか?
0545デフォルトの名無しさん
NGNG>>>539
> きみってヴァカそう、僕のまわりには決していないタイプ(w
おまえ、いつも一人ぼっち。周りにだれもいないタイプ(ヒ
0546デフォルトの名無しさん
NGNG不変的な仕様を理解できない。
0547デフォルトの名無しさん
NGNGはいはい、昔のキミがそーだったのね。
0548デフォルトの名無しさん
NGNG0549デフォルトの名無しさん
NGNG0550デフォルトの名無しさん
NGNG「普遍的な仕様」でない事だけは確かみたいです。
(それにしたって良く意味わからないけど)
0551デフォルトの名無しさん
NGNG0552デフォルトの名無しさん
NGNG> 「普遍的な仕様」でない事だけは確かみたいです。
> (それにしたって良く意味わからないけど)
「不偏的な仕様」かな?
惨に依存しないってことで。
0553デフォルトの名無しさん
NGNG0554デフォルトの名無しさん
NGNG>ヲタとは知識だけをひけらかして人を見下す人が、あいてを「お宅」と呼ぶのが語源ですだ。
そんな知識ひけらかしてどうするんだい?
0555デフォルトの名無しさん
NGNG>C厨半泣き状態
Java厨号泣。アイゴー。アイゴー。
0556デフォルトの名無しさん
NGNG愛子様ご生誕を 未だに祝ってらっしゃるのですね?
0557デフォルトの名無しさん
NGNGお宅、>>551程度で、「ひけらかされた」と感じるとでも?
0558デフォルトの名無しさん
NGNG0559デフォルトの名無しさん
NGNG人を見下したいという願望を持つ若いアフォを、
「Javaが現れるまで従来は・・・でした。」式の、
[決まった答えが出てくる嘘の知識]で誘導します。
その手のJavaの解説本を読んだアフォは
「旧世代を打倒してプログラミングの世界を革新しなければならない」
といったような「使命感」を植え付けられます。
騙されやすい若者を騙して使う汚いやり口だと思います。
ヒトラー・ユーゲントしかり、紅衛兵しかり、
これは全てJavaの仕掛け人サイドの計算通り。
いいかげん、目を覚ましましょう。
0560デフォルトの名無しさん
NGNG0561デフォルトの名無しさん
NGNGJava使いも昔はC使いだったんだが(Servlet&JSPが初めてのプログラミング
と言う真性厨房サラリーマンプログラマをのぞいて)。
仕事によってはCを選択することもあるというのは、言われなくてもわかって
るって。
0562デフォルトの名無しさん
NGNG560も含めてね。でも俺は例外(笑
0563デフォルトの名無しさん
NGNG前半と後半の文章矛盾してない?
0564
NGNGインターフェースのような後決めライブラリ構造がJava以前は無かったような
事を言うから。
再利用も同じ。
0565デフォルトの名無しさん
NGNG>>562
}
catch(例外 俺){
俺.氏ね;
}
finaly{
すっきり;
}
0566デフォルトの名無しさん
NGNGそれだと全員すっきりしてしまうが?
0567デフォルトの名無しさん
NGNG>>constructor(InputStream is,OutputStream os)
っつーか これ isのデータを osに出力するだけだったら
クラスメソッド(っつーか関数)でやるべきなんでは?
0568デフォルトの名無しさん
NGNG初心者でスマソ
0569デフォルトの名無しさん
NGNGはい。
0570デフォルトの名無しさん
NGNGアプリケーションを作るレベルでは使うべきでないと思うがどうか?
0571デフォルトの名無しさん
NGNG通信や画像処理では必須かと思われ。
ライブラリに隠蔽すればいいけども。
■ このスレッドは過去ログ倉庫に格納されています