トップページ⇒tech
571コメント167KB

CとJAVAを比較した場合Cの良いとこと悪いとこ

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
ってある?
0153デフォルトの名無しさんNGNG
>>152

1ビットくらいケチるなよ。
0154デフォルトの名無しさんNGNG
別のスレでやってなかったか?
0155デフォルトの名無しさんNGNG
>>151
こないだ買ったJava本にポインタの解説がイパーイありました。
Javaにはポインタがあるらしいです。
0156デフォルトの名無しさん NGNG
Cの長所
・実行速度が速い。
・アセンブリに近い記述が可能。
・C++はCを言語体系の一部分に含めているので、
C++を学習するとき得なくてはならない知識を
ある程度小さくできる。
Cの短所
・最新の言語に含まれている、魅力的な機能がない。
0157デフォルトの名無しさんNGNG
>>154

確かに以前にも書いた覚えが(^^;
0158デフォルトの名無しさんNGNG
>155
関数ポインタもかいてあったか?
0159155NGNG
>>158
いえ、それは書いてませんでした。すいません。
0160デフォルトの名無しさんNGNG
ポインタらしきものがあるということで。
0161デフォルトの名無しさんNGNG
関数ポインタは、望んだ実装のメソッドを持つobject(のクラス)を作れ、ということで。

ただしそうすると、好きな名のメソッド(を参照する変数)ってものは
結局使えないので、微妙に嫌な気分だが。

javaも軽く使う分には悪くない言語だが、
ちと手のこんだ事をしようとすると、C以下の柔軟性しかないのが壁となる。
lispやrubyみたいな方向性の柔軟さも、少しは欲しい。

せめてクラス変数の型を継承で作れるようにしてほしかった。
Classっていう唯一の型しかないのは面倒だ。
うわ。java.lang.Classってfinalなのか。
変数どころかObjectとしても継承できないわけか。

あと、逆にC++のような方向性もまた切りすててるんで、
javaって、「エレガントに」やれる事柄が本当に少ない言語だ。
0162デフォルトの名無しさんNGNG
Cのほうが全然早い、理解しやすい。
しかしネットワークとか付加的なのが少ない
0163デフォルトの名無しさん NGNG
>>162
C言語は開発当初から言語仕様をスマートにする方向で
設計されたらしい。
いまだにそれを貫いているところを残してあるが故に、
付加的な仕様が少ない。
しかし、だからこそ学ぶ際に煩雑な感じを受けずにすむ。
それもここまでC言語が普及した理由の1つだろう。
0164デフォルトの名無しさんNGNG
欲しい機能があれば自分で作る。
これが言語仕様上ほとんど制限の無いC言語の
正しい使い方。
0165デフォルトの名無しさんNGNG
欲しいソフトが存在しなかったら自分で作る。
これがコンピュータの正しい使い方。
0166デフォルトの名無しさんNGNG
関数ポインタって、java.lang.reflect.Method
使えば似たような事出来るような気がしますが。
0167デフォルトの名無しさん NGNG
>>164>>165
似ているわけね。
0168デフォルトの名無しさんNGNG
>>せめてクラス変数の型を継承で作れるようにしてほしかった。
って意味わからない。
class ClassA{ static int val; }
のvalみたいのをクラス変数っつーんだよね?
0169 NGNG
>>166
定義済みで既知のクラスでないと呼べないでしょ。
Javaはどこまで行っても固定プログラム。
手を変え品を変え、関数ポインタがあるように書かれてるけど、
同じ材料が形を変えているだけ。

焼きそばとたこ焼きとお好み焼きみたいな物。
0170デフォルトの名無しさんNGNG
そーいや 一昔前は、
アセンブラで作ったプログラム vs Cで作ったプログラム
の議論(水掛け論のような気も…)が結構あったと思いますが、
Javaごときと速度比べるとは、最近のCユーザってココロザシ低く
なってません?
0171デフォルトの名無しさん NGNG
クラス変数なんて用語はないのでは・・・。
>>168が書いているvalのことは単にオブジェクト間で静的な
データメンバ(静的データメンバ)なのでは?
0172デフォルトの名無しさん NGNG
>>170
Cのいいところを挙げるとなると普通出てくるだろ。
スレタイトル読めやボケ。
0173デフォルトの名無しさんNGNG
>>定義済みで既知のクラスでないと呼べないでしょ。
バイトコードをJavaプログラムに生成させて、
クラスローダに読ませる、Class取得、Method取得、invoke()
ってやれば?
出来るかどうか知らないけど。
0174デフォルトの名無しさんNGNG
>170
こんなアホスレ立てるお子ちゃまがいるから
解りやすく教育しているだけ。
0175デフォルトの名無しさんNGNG
>>174
君もここよんでよく勉強してね。
0176デフォルトの名無しさんNGNG
>>173
その発想が出る時点で答えになってない。
ポインタについて勉強しましょうね。
0177デフォルトの名無しさんNGNG
>>171
クラス変数って言うみたいですけど?
少なくとも Java では。

http://www.google.co.jp/search?q=%83N%83%89%83X%95%CF%90%94&hl=ja&lr=lang_ja
0178デフォルトの名無しさんNGNG
>>176
なんだ、
>>定義済みで既知のクラスでないと呼べないでしょ。
ってのは 実験して出来ないって言ってるわけじゃないのか。
0179デフォルトの名無しさんNGNG
>>171
> クラス変数なんて用語はないのでは・・・。

OOの基本的な用語のような気が…。
0180171NGNG
>>177>>179
そうか・・・。
すまんな、俺の間違いだったようだ。
0181デフォルトの名無しさんNGNG
なんか このスレみてると Javaのおかげで厨房少ないはずの
Cユーザのレベル低下が目立ってるような… なげかわしや…
0182CopyBorotNGNG
>>181
> なんか このスレみてると Javaのおかげで厨房少ないはずの
> Cユーザのレベル低下が目立ってるような… なげかわしや…
"Java厨がいるから"と安心しきったのが低下させているんでしょうな。
0183デフォルトの名無しさんNGNG
>181
具体的には?
0184デフォルトの名無しさんNGNG
>>181

どの発言から「レベル低下」だと思われました?
0185デフォルトの名無しさん NGNG
年始もハイだぜ、ベイベー!
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄
      ,〜((((((((〜〜、
     ( _(((((((((_ )
     |/ ~^^\)/^^~ヽ|
      |  _ 《 _  |
      (|-(_//_)-(_//_)-|)
      |   厶、    |
      \ |||||||||||| /
      ⊂ \_______⊂ ⌒`つ≡≡≡(´⌒;;;≡≡≡
              ̄ (´⌒(´⌒;;
0186えなりくんNGNG
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱成‥‥‥‥
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱戸‥‥‥
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱江‥‥
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬼鬱鬱鬱鬱鬱鬱鬱鬱鬱子‥
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬼成成戸成豆鬼豆成戸戸成成成豆鬼鬱鬱鬱鬱豆‥
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱豆戸江江江江戸戸戸戸江江江江江江戸成豆鬱鬱鬱鬱江
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱豆戸江江江江江江江江江江子江江江江江戸成豆鬱鬱鬱鬱
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱豆戸戸江江子江江江子子子子子子子子江江戸戸成鬱鬱鬱鬱
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱戸江江江子子子子子子子子子子子子子江江戸戸成豆鬱鬱鬱
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬼戸江江江江子子子子子子子子子子子子江江江戸成豆鬱鬱鬱
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱成江江江江江江江子子子子子子子子子子子江江戸成豆豆鬱鬱
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱戸江江江子江江江子子子子子子子子子子子江戸鬼鬱鬼鬼鬼鬱
鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱戸江子江江江江江戸鬼鬼豆成戸江子子子江戸豆鬱鬱鬱鬱鬼鬱
鬱鬱鬱鬱鬱鬱鬱鬱鬱豆戸江江江江戸成鬼鬱鬱鬼豆成成戸江江江江戸戸成豆豆鬼鬱鬱
鬱鬱鬱鬱鬱鬱鬱鬱豆戸江江江江豆鬼豆成戸江江江江江戸戸戸戸戸戸江江子江戸成鬱
鬱鬱鬱鬱鬱鬱鬱成江江子子子戸成江子子子子子子江江戸戸戸戸戸江江江子江戸戸鬱
鬱鬱鬱鬱鬱鬱豆江江江子子子江江子子子子子子江戸戸江江江江江江戸戸鬼鬼成成鬼
鬱鬱鬱鬱鬱鬱豆江江江子子子子子子子江江成鬱鬱成戸江子子江江江戸子鬱鬱鬱成豆
鬱鬱鬱鬱鬱鬱豆江江江子子子子江江成鬼戸戸鬱鬱豆戸子子子江戸江戸戸成成成成成
鬱鬱鬱鬱鬱鬱鬼戸江子子子子子子江子子子江江戸戸江子子子子戸江江江戸戸江江戸
鬱鬱鬱鬱鬱鬱鬱戸江子子子子子子子…子子江江江子子子子子子江戸江子江江江子江
豆豆鬼鬱鬱鬱鬱戸江江江子子子子子子子子子子子子子子子子子子戸戸江子子子子戸
江戸豆鬱鬱鬱鬱成江江江江子子子子子子子子子子子子子子子子子戸戸江子子子子戸
戸戸成成豆鬱鬱豆戸江江子子子子子子子子子子子子子戸江子子…子戸戸子子子子江
江子成江江鬱鬱豆戸江江子子子子子……子子子子子江子子……子子戸戸江子子子江
子子江江江豆鬼戸戸江江子子子子子子…子子子子江戸子子江江戸成豆成戸江江子戸
戸江戸豆戸戸戸江江江子子子子子子子子子子江江江戸戸成江戸豆鬼豆戸戸戸江江戸
戸江子戸戸江江江江江子子子子子子子子子江江江子子子子江江江戸戸戸戸戸江江戸
江戸江江子戸江江江江江子子子子子子子子江江江子子子子子子江江戸戸戸戸江戸江
子戸江子戸鬼江江江江江子子子子子子子子江江江江子子子江江戸成豆豆成戸江成子
江戸鬱鬱鬱鬼戸戸戸戸江江江子子子子子子江戸成成戸戸戸戸成成豆鬱鬱成江戸成‥
戸江豆鬱鬱成成戸戸戸江江江子子子子子子子江鬼鬱成戸子子江江豆鬼豆江江戸戸‥
戸江江鬱鬱成豆成戸戸戸江江江江子子子子子江戸戸戸戸戸戸戸成豆成戸江戸成子‥
戸江江鬱鬱鬼成成成成戸戸江江江江江子子江江子子江江江戸戸戸成豆戸戸成戸‥‥
江江江戸成鬱成成豆豆成成戸戸江江江江江江江子子子江江戸成成成戸戸戸成子…‥
戸江江江鬼鬱戸成豆鬼豆豆成成戸戸江江江江江子子子子子江江江江江戸成江子……
江江豆豆鬱鬱成成成豆鬼鬼鬼鬼成戸戸江江子子子子子子子子子子子江戸成子子子…
江鬼鬱成鬼鬱成成成成豆鬼鬼鬼鬼鬼豆成戸江江江子子子子子子江江戸成鬼鬼戸子…
鬱鬱鬼豆鬼鬱豆成成成成豆豆鬼鬼鬼鬼鬼鬼成戸江江江江江戸戸成成豆鬱鬼鬱鬱戸…
鬱鬱鬼鬼豆鬼鬼成成戸成成成豆豆鬼鬼鬼鬱鬱鬼豆豆成成豆豆豆鬼鬱鬱鬱鬱鬼鬱鬱戸
鬱鬱鬱鬱成鬱鬱鬼成成戸戸戸戸戸戸成豆鬼鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱
鬱鬱鬱鬱豆鬱鬼鬱成戸戸戸江江戸江戸戸成豆鬼鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬱鬼鬱鬱
0187 NGNG
アンチC房が荒らしてるな。
0188デフォルトの名無しさん NGNG
タイーホされて以来、婦警にC言語を教わってるぜ、ベイベー!
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
      ,〜((((((((〜〜、
     ( _(((((((((_ )
     |/ ~^^\)/^^~ヽ|
      |  _ 《 _  |
      (|-(_//_)-(_//_)-|)
      |   厶、    |
      \ |||||||||||| /
      ⊂ \_______⊂ ⌒`つ≡≡≡(´⌒;;;≡≡≡
              ̄ (´⌒(´⌒;;
0189デフォルトの名無しさんNGNG
ホントレベル低いな・・・
>2)プリプロセッサが無い
プリプロセッサがないとなんで困るんだよ・・・

>3)ポインタが無い。特に関数ポインタ
ホント学習してくれ。
オブジェクト変数に入ってるのは、メモリアドレス。
関数ポインタが、オーバーライドとかインターフェースとか
(実行時)ポリモーフィズム=レイトバインディング=動的バインディング=DMD
になったんだけど。
0190  NGNG
>>189
ロクに実務やった事無いか、低レベルの奴は問題に気付かないだけ。
死ねよ。
0191デフォルトの名無しさんNGNG
>javaも軽く使う分には悪くない言語だが、
>ちと手のこんだ事をしようとすると、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
他にJava使いもいるぜ!
婦警と、このスレみたいな言い合いしてるぜ、ベイベー!
俺からみてもレベル低いぜ、ベイベー!
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
      ,〜((((((((〜〜、
     ( _(((((((((_ )
     |/ ~^^\)/^^~ヽ|
      |  _ 《 _  |
      (|-(_//_)-(_//_)-|)
      |   厶、    |
      \ |||||||||||| /
      ⊂ \_______⊂ ⌒`つ≡≡≡(´⌒;;;≡≡≡
              ̄ (´⌒(´⌒;;
0193デフォルトの名無しさんNGNG
馬鹿が自分の不勉強さ加減をさらすスレですか。
馬鹿とか無知とかって、自分がそうであることに気がつかないからね。
元旦からアホさらして、かわいそうな人生だね。
0194デフォルトの名無しさんNGNG
ついでに教えておくと、
C++ではプリプロセッサは使わない。
というか、使わなくて済むように機能が追加された。
それをJAVAが真似したんだから、プリプロセッサなんて
あるわけ無いだろ。
OOだとプリプロセッサは不都合が起きる。
クラスで名前空間を区切っても、DEFINEで破壊されるなどと・・・

まあ、構文を無視した#IFは便利だと思うが
それはC++のコメントがアホだからだ。
emacs使ってれば問題はないが。
0195  NGNG
>>189
の信じる学習とはJavaのプロパガンダ本を鵜呑みにすることじゃない?
0196  NGNG
>>194
死ね!
0197デフォルトの名無しさんNGNG
>>195
いいかげん知らない事を突っ込むのやめなよ、あんた。
どうやるか知らないのはあんたが不勉強だからだよ。
0198デフォルトの名無しさんNGNG
この天然ぶりは圧巻だ。
0199デフォルトの名無しさんNGNG
>欲しい機能があれば自分で作る。
>これが言語仕様上ほとんど制限の無いC言語の
ボケですか?
JAVAも同じ。
0200  NGNG
はあ、Javaの宣伝間に受けて「勉強」したと思ってる真性馬鹿か・・・
最近減ったんで安心してたのに・・・。
0201  NGNG
それにしてもJavaにプリプロセッサが無い理由なんて始めて聞いた。
煽り用の捏造かな?
煽ってる奴はプログラムの素人臭いし。
0202デフォルトの名無しさんNGNG
>ファイルI/Oとかネットワーク周りの物理層をどうやって処理
C言語の場合、同じソースでも環境によってはコンパイルできない。
なぜなら、I/Oは言語仕様外だから。
言語仕様外の物は、ライブラリーとして提供するしかないわけで
互換性を保つにはヘッダファイルを共通にして、なるべく同じように動くような気がする
バイナリーを作ると。
C++も同じね。
JAVAはライブラリーとして提供するのではなく、VMとして提供するのが理想。
でもVMに組み込むのが面倒な場合は、JNIという最終手段を使う。
0203デフォルトの名無しさんNGNG
JAVAチップでさえもドライバの開発環境はCしかないね。
JAVA単体では割り込みの記述なんてできっこないからね。
0204 NGNG
あーん 真性Java房だよー。
Rubyにあげるから取りに来てくれ。
0205デフォルトの名無しさんNGNG
ドライバを書くときにヘッダを読み込むでしょ。
それのソースを見てくれればわかるけど、
実際の中身はシステムコールか、アセンブラなんだよね。
それってのは結局のところ、アセンブラ(機種依存)で書かれた、
ライブラリーを呼び出したりしてるだけであって、
C単体でやってるんじゃないよ。
で、JAVAでやりたければJNI使って、システムコールを呼び出すクラスを作って
開発するわけだけど。
現実問題として、OSに組み込むにはOSがJVMで動くドライバをサポートする
必要がある。
理由はわかるよね?
0206デフォルトの名無しさんNGNG
なんかまともな質問はないですか?
0207ひとりごちてみるNGNG
環境によってコンパイル出来ないってのはI/Oとはあんまり関係無いと思うが、
まぁ、動かないっていう意味で言ってるんだろうな。
言語仕様って、標準ライブラリも含んでるんだろうな、とすると入出力関数はあるぞ。
そもそもメモリマップドI/Oなら、ポインタがあればいいし。
でも、I/Oを切り離してライブラリにするってのは、ふつーそーだしな。
JavaはVMに入出力組み込むのが理想なのか??
VMの仕様はかなり厳密に定義されてるから、動作を変えちゃうのは理想なのかなぁ??
ま、JMVはまだ勉強中だから、よくわからないけど。
0208デフォルトの名無しさん NGNG
>>206C++のbool型はどうやって実装しているのですか?
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
      ,〜((((((((〜〜、
     ( _(((((((((_ )
     |/ ~^^\)/^^~ヽ|
      |  _ 《 _  |
      (|-(_//_)-(_//_)-|)
      |   厶、    |
      \ |||||||||||| /
      ⊂ \_______⊂ ⌒`つ≡≡≡(´⌒;;;≡≡≡
              ̄ (´⌒(´⌒;;
0209ひとりごちているちゅうNGNG
Cだけで全部書かれたドライバだって、あるぞ。
でも、アセンブラで書くのがあたりまえな環境もあるだろうな。
ケイタイとか。
0210デフォルトの名無しさんNGNG
>まぁ、動かないっていう意味で言ってるんだろうな。
ゴメソ、そうだ。
入出力関数もそう。
たとえば、ソケットでブロックされてる時に
printfをすぐに表示する処理系と、そうじゃない処理系ってあるでしょ。
そんな感じの違い。
ある程度互換性があるような気がするのは、処理系ごとにアセンブラを書く
ライブラリー作成者の努力。
(一部アセンブラね。)
機種依存部分をライブラリにすると、コンパイラ作成時にメリットがある。
で、CとかJavaとかと逆の立場なのがPerlね。
VMはもうちょっと勉強してみてね。
VMって言うよりはバイトコードについて調べてみてください。
0211デフォルトの名無しさんNGNG
>>205
組み込みやってる俺から言わせて貰えば
はっきり言ってその発想から抜けた方がいい。
割り込みっつーのはアセでベクタ定義されたアドレスにJUMPしてんの。
つまりアセで関数名定義して実態はC等のマイクロコードを生成する言語で書かれてるんだよ。
OSなんてまったく関係無い。
0212Javaの良いところNGNG
1.Webシステムが簡単に作れる。
2.ミーハーな客が、簡単なシステムにカネを沢山出す。

仕事でやる分には、これだけ利点があれば充分だと思うが。
とくに2が重要。
0213205NGNG
>>211
それは俺に言ってるの?

>つまりアセで関数名定義して実態はC等のマイクロコードを生成する言語で書かれてるんだよ。
そういう意味で書いたんだけど。

>OSなんてまったく関係無い。
システムコールはどうなるよ・・・
0214デフォルトの名無しさんNGNG
>2.ミーハーな客が、簡単なシステムにカネを沢山出す。
これかなり重要だね

知人は23で400万オーバーしてるのに
俺は 200万いかないし・・・・・

俺がゲームPGだからっていうこともあるけど・・・
0215JavaのC++に比べて良いところNGNG
1コードがかなーり読みやすい。
2deleteを意識しなくていい。
3ライブラリとリファレンスが良い。
4JavaDocも便利で見やすいのができる。
5コンパイル時間が短い。
6名前空間が容易に分割できる。
7配列の仕様はかなりいい。
0216デフォルトの名無しさんNGNG
>>211
> つまりアセで関数名定義して実態はC等のマイクロコードを生成する言語で書かれてるんだよ。

折れ組み込みのことよくわからないし、プロが言うから間違いないんだろうけど、
それって「マイクロコード」っていうの?
0217デフォルトの名無しさん NGNG
>>215
Javaってコンパイラ言語だっけ?
0218デフォルトの名無しさんNGNG
俺が今でも疑問なのは、
始めてやった言語がJavaで
Javaをマスターするのにどれくらい時間がかかるのか、
という事。
参照とOOの壁ってでかくない?
間違ってもC言語やる前にJAVAをやらない事を
俺はすすめる。
0219デフォルトの名無しさんNGNG
コンパイラ言語ってなんですか?
0220デフォルトの名無しさんNGNG
>>217
JavacはJVMへのコンパイラ。
JVMはインタプリタ。
0221デフォルトの名無しさんNGNG
Javaソース から バイトコード 生成する作業は
コンパイルと言われていますが、何か?
0222JavaのC++に比べて良いところ NGNG
1コードがかなーり読みやすい。
2deleteを意識しなくていい。
3ライブラリとリファレンスが良い。
4JavaDocも便利で見やすいのができる。
5コンパイル時間が短い。
6名前空間が容易に分割できる。
7配列の仕様はかなりいい。
8コンパイルエラーがわかりやす過ぎる。
9実行時のエラー(例外)もわかりやす過ぎる。
0223 NGNG
>>214
ゲームPGだって1000万行くのいるよ。
会社が悪いのか腕がないのか・・。
0224デフォルトの名無しさんNGNG
× JavacはJVMへのコンパイラ。
○ Javacはバイトコードへのコンパイラ。
0225デフォルトの名無しさん NGNG
>>215
C++のコードは読みにくいと?

>配列の仕様はかなりいい。
どのようにいいの?知らないから教えてほしい。
0226 NGNG
>>222は煽ってるの?
0227デフォルトの名無しさん NGNG
>>220
JavacはJVMへのコンパイラ(プッ
0228デフォルトの名無しさんNGNG

>>224
そだね。
0229デフォルトの名無しさんNGNG
>ゲームPGだって1000万行くのいるよ。
20代前半で1000万行く人いるんですね。
私もそのぐらいになりたいです。
そこまでの腕になるためには数年はかかると思いますけど・・・
0230  NGNG
ああ、二十台前半という条件つきかあ・・・。
0231デフォルトの名無しさん NGNG
誰か答えてよ・・・。
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄
      ,〜((((((((〜〜、
     ( _(((((((((_ )
     |/ ~^^\)/^^~ヽ|
      |  _ 《 _  |
      (|-(_//_)-(_//_)-|)
      |   厶、    |
      \ |||||||||||| /
      ⊂ \_______⊂ ⌒`つ≡≡≡(´⌒;;;≡≡≡
              ̄ (´⌒(´⌒;;
0232JavaのC++に比べて悪いところ NGNG
1new,deleteで精神的に疲れる。
2意味ない部分でのパフォーマンスが気になる。
3潔くvirtualをつけることができない事がある。(継承のコストが気になる)
4コンパイル時間が長すぎてキレる事がある。
5::の前が長い。
6ヘッダを書くのが面倒。
7doxygenは日本語が入ると読みずらい。(誰かクッキーを)
8stlのコード汚い。
9#includeの数は減らない?
10#typedefは気分的に嫌。
11ポインタか参照どっちかにして。
12どーせ、クラスはポインタでしか扱わないって・・・
0233デフォルトの名無しさんNGNG
>>232
それは 「JavaのC++に比べて悪いところ」ではないような…
0234デフォルトの名無しさんNGNG
>>232
名前の欄、逆じゃないの?
0235デフォルトの名無しさんNGNG
>C++のコードは読みにくいと?
::が痛いし、ヘッダが痛い。
要するに冗長な部分が多かったり、一箇所に情報がまとめられなかったりと
プログラミング言語C++(赤いやつ)には、コンパイラ作成者の怠慢って書いてなかった?

>どのようにいいの?知らないから教えてほしい。
最初から、配列の長さを記録していて
アクセスする時も、配列の長さを超えていないか確認するので
C++で経験する恐怖のデバッグはない。
その分パフォーマンスは犠牲になるけどね。
でも、ほとんどのプログラムでそのロスは気にならない。
なぜなら、C++のメソッド呼び出しのオーバーヘッドより
ロスが少ないから。
0236デフォルトの名無しさんNGNG
VCで挫折してSwingでやっと表示できた厨房が
クラス作って「オブジェクト指向を理解した」と喚いてる光景が
目に浮かびますが何か?
0237デフォルトの名無しさん NGNG
>>232
陰険な奴だな
0238デフォルトの名無しさんNGNG
>>233,234
せーかい!!
0239デフォルトの名無しさんNGNG
>>205
>システムコールはどうなるよ・・・
OSが用意するハンドリング可能なAPI。
OSによって異なるが抽象化されたI/Oを操作するときに用いる。
デバイスドライバはその下層に位置する。
しかしシステムコール、ドライバの概念が無い、カーネルだけの
OSもある。(ITRON)
携帯のJAVAなんてRTOSのタスクの1つで動いているだけ。
周辺デバイスへのレジスタへのI/Oはベクタ以外は全部C。

>>216
そう。
0240デフォルトの名無しさん NGNG
 ,〜((((((((〜〜、
    ( _(((((((((_ )
    |/ ~^^\)/^^~ヽ|
     |  _ 《 _  |
     (|-(_//_)-(_//_)-|)
     |   厶、    |
     \ |||||||||||| /  < >>232あんた詳しそう!答えてくれよ!>>208の質問に!
       \_______/
     /⌒    ヽ
    / /    ノヽ    _ー ̄_ ̄)',  ・ ∴.'  , .. ∧_∧ ∴.'.'  , .
    ( /ヽ   | ) --_- ― = ̄  ̄`:, .∴ '      ((( #)゚Д゚) .∴ '
    \ /  _, -'' ̄  = __――=', ・,' .r⌒>  _/ / ・,' , ・,‘
      (   _~"" --  _-―  ̄=_  )":" .' | y'⌒   ⌒i .' .   ’
      |   /,,, _―  ̄_=_  ` )),∴. ).  |  /  ノ | ∴.'∴.'
      |  / /   ―= _ ) ̄=_)   _), ー'  /´ヾ_ノ
      (  ) )      _ _ )=  _) ,./ ,  ノ  '
      | | /          = _)  / / /   , ・,‘
      | | |.               / / ,'  , ・,‘
     / |\ \            /  /|  |
     ∠/   ̄            !、_/ /   )
                           |_/
0241デフォルトの名無しさんNGNG
Cの言語仕様をちょろっと改良した、BetterCが欲しい。
C99がそれか?
0242 NGNG
>>240ウザイ!
ワードの1ビット使ってるに決まってるだろうがボケ!
0243JavaのC++に比べて悪いところ NGNG
ゴメソ>>皆様
お詫びに。
1バイナリーがはけない。
2よって、遅い。
3たまには、メモリーをきっちり使いたい。
4メモリがきっちり使えなくても、newのオーバーロードもしたかった。
5演算子のオーバーロードは是非できるようにしてくれ。
6でも、演算子のオーバーロードサポートしても実はJAVAだと言語仕様が汚くなりそうだ。
7stlは必要ない。アグリゲーションを貫いて欲しかった。
8インターフェースと継承で名前が衝突した時はかなーーーりいただけない。
9unicodeでの処理は、パフォーマンスがちょっと気になる。
10unsignedは欲しいかも。(これは何ともいえない)
0244デフォルトの名無しさん NGNG
 ,〜((((((((〜〜、
    ( _(((((((((_ )
    |/ ~^^\)/^^~ヽ|
     |  _ 《 _  |
     (|-(_//_)-(_//_)-|)
     |   厶、    |
     \ |||||||||||| /  < >>242ひどい・・・初心者なのに・・・。
       \_______/
     /⌒    ヽ
    / /    ノヽ    _ー ̄_ ̄)',  ・ ∴.'  , .. ∧_∧ ∴.'.'  , .
    ( /ヽ   | ) --_- ― = ̄  ̄`:, .∴ '      ((( #)゚Д゚) .∴ '
    \ /  _, -'' ̄  = __――=', ・,' .r⌒>  _/ / ・,' , ・,‘
      (   _~"" --  _-―  ̄=_  )":" .' | y'⌒   ⌒i .' .   ’
      |   /,,, _―  ̄_=_  ` )),∴. ).  |  /  ノ | ∴.'∴.'
      |  / /   ―= _ ) ̄=_)   _), ー'  /´ヾ_ノ
      (  ) )      _ _ )=  _) ,./ ,  ノ  '
      | | /          = _)  / / /   , ・,‘
      | | |.               / / ,'  , ・,‘
     / |\ \            /  /|  |
     ∠/   ̄            !、_/ /   )
                           |_/
0245デフォルトの名無しさんNGNG
馬鹿に付ける薬はない。
0246デフォルトの名無しさんNGNG
>周辺デバイスへのレジスタへのI/Oはベクタ以外は全部C。
実際にレジスタへのI/Oはasmで記述してるんでしょ?
0247デフォルトの名無しさんNGNG
>>243
個人的には
・enum が欲しい。
 enumへの コンパイル時の代入チェックが欲しいのね。
・InputStream と OutputStream を
interface に代えてくれれば…

遅いのは、ある程度までなら腕でカバーできる
のと、delete に苦しまされるのと引き換えと
思えば我慢できるけど。
0248デフォルトの名無しさんNGNG
俺、この前Cでドライバ書いたよ。
0249デフォルトの名無しさんNGNG
>>247
漏れもenumはなんでJavaにないんだろう?
って思うYO
0250デフォルトの名無しさんNGNG
昔はネタだったが 今は現実問題。ホントにこんな奴がいるとはねえ。
http://www.javaopen.org/jfriends/cforjava/
0251デフォルトの名無しさんNGNG
リアルモードとかプロテクトモードってゆう古いアーキテクチャ
の残骸を引きずっているCPU(たぶんあんたがパソコンで使ってる奴)
ではアセじゃないと書けないかもね。
でも今日びのメモリマップドCPUではリニアアドレスでアクセスできるから
ポインタ使って

unsiguned char *reg;
reg = 0x80000;
*reg = 0xff;
でアクセスできる。
こういうときunsigunedじゃないとイタイわけよ。
0252 NGNG
>unsiguned
unsignedでは?
■ このスレッドは過去ログ倉庫に格納されています