トップページ⇒tech
1001コメント273KB

C#とJava、どっちをおぼえればいいの?

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001デフォルトの名無しさんNGNG
C#とJava、どっちをおぼえればいいの?
0809デフォルトの名無しさんNGNG
>>806
Monoを調べれ。

>>808
必死だなw
0810デフォルトの名無しさんNGNG
PHP にしろ!
0811デフォルトの名無しさんNGNG
両方覚えようとは思わないのか?
0812デフォルトの名無しさんNGNG
J#は?
0813デフォルトの名無しさんNGNG
J#も覚えれ
0814デフォルトの名無しさんNGNG
そんなもん覚えなくても必要なときに勉強したら間に合う
0815デフォルトの名無しさんNGNG
C♭がいいと思います。
0816デフォルトの名無しさんNGNG
>>805
アンチではないがネイティブ吐きたい。
0817デフォルトの名無しさんNGNG
【質問】
C#とJAVA、将来性あるのはどっち!?
0818デフォルトの名無しさんNGNG
>>817
片方しか出来ない奴はプログラマとして将来性が無い。
0819デフォルトの名無しさんNGNG
>>818
お前の視野は歪曲している。
0820最凶VB厨房NGNG
VB.NETで十分
0821デフォルトの名無しさんNGNG
>>800
>>803

JAVAは仕様拡張時に間違った頃から少しおかしい気がする。
言語仕様としては後発のC#にどうしても軍配が上がってしまう。
拡張性については「言語対応環境を増やす」か「コード動作環境
を増やす」かの違いで単純比較は出来ない。
かじるだけでなく、C#の深い理念を知れば意味は理解できる。
今までのWindowsでのセオリーをひっくり返してでも仕様を正常
化している点をみればわかると思う。
0822デフォルトの名無しさんNGNG
> JAVAは仕様拡張時に間違った頃から少しおかしい気がする。
なんに関して「間違い」と言ってるのかわからん。

> かじるだけでなく、C#の深い理念を知れば意味は理解できる。
「深い理念」とやらを知った上で
> 拡張性については「言語対応環境を増やす」か「コード動作環境
> を増やす」かの違いで単純比較は出来ない。
程度の発言しかできんのだったら、C#の作者も悲しむだろうね。
0823デフォルトの名無しさんNGNG
結論:C# >>> Java
必死になって否定してる香具師は単なるMS嫌い
0824デフォルトの名無しさんNGNG
世に出ている資料やサンプルコードの量で、
Java>C#

言語自体の質については、正直よく分からん。
0825デフォルトの名無しさんNGNG
世のコードの量なら
COBOL>Fortran>C>>>>>>(超えられない壁)>>>>>>Java,C#
0826デフォルトの名無しさんNGNG
COBOL, Fortran, Cのサンプルコードとして出回ってるもののほとんどは、
Java, C#のAPIの中に入ってる。
0827デフォルトの名無しさんNGNG
JavaメインでC#かじってるけど、
コーディングのしやすさ、簡潔・簡単さは断然C#。
Linuxで使えないのでJavaやってるけど、
LinuxでC#のFormまで動くようになればC#に乗換える。
JavaやっとけばC#への移行はMSのいうとおり簡単。
また、ここまで成熟したJavaが消滅することも考えにくい。
とにかく初心者は無償PureJavaのNetBeans使ってみ!
それとWinしか使ったことない奴はLinux入れてみろ。
Linuxが使えるOSだということと共に、
クロスプラットフォームのJavaがいかに有難いかよくわかるから。
0828デフォルトの名無しさんNGNG
クロスプラットフォームは実際にWin以外の環境知ってる人しか
うまみわからんからな〜

クライアントはWin限定の場合javaじゃなくてもいいような気がするけど
実際はサーバーサイドもクライアントサイドも同じ言語で書かれることでの保守性
ってところだな

クライアントはwinでほぼ固定、サーバーは現状win、そのうちLinuxやUnixとか
ってことは割と多いし、企業も複数の言語を教えるのがコスト高くつく

個人ならどっち覚えてもいい
本当のプログラマなら言語一つマスターすれば移行もある程度しやすいだろう

javaの利点って長く使わないとわかりにくいのも問題かなぁ
動的クラスローダがわかるようになって自分でフレームワークガシガシ作るようになるまで
結構な時間かかると思う
0829817NGNG
すみません、非常に間抜けな質問かもしれないけど、
C#がLinuxで使えるようにはなるのでしょか?
また、使えるようになったとしても、Winに
有利な方向に進む(?)とかは考えられますか?

すみません、なんかこれからJAVA勉強しようって時に
C#出ちゃって、わかんなくなっちゃってます。
0830デフォルトの名無しさんNGNG
JAVA勉強しようとしてたならそのまま勉強すればいい
C#が必要になったら勉強すればいい
どちらか一つの言語に絞るような考え方のプログラマはいらね

0831デフォルトの名無しさんNGNG
>>827
正直、自前のWebサーバ立ち上げる位しか、
個人がわざわざPC買ってLinux入れる用途が見当たらないんだが…。
0832デフォルトの名無しさんNGNG
>>807
すでに仮想化されているな。
CPUの数なんか、プログラマが把握する必要はないわけだし。
ネイティブコードとはいえ、crusoeなんかだとそれがCPUのネイティブのコードとは限らないわけだし。
0833デフォルトの名無しさんNGNG
>>831
>個人がわざわざPC買ってLinux入れる用途が見当たらないんだが…。

私の場合PCが3台あって、全てにXP入れるのはバカらしいので、
タボ10Basic入れてみたら、今のディス鳥はデスクトップでも十分使えることがわかった。
こういう人これから増えてくるんじゃないだろうか?
そうなるとやっぱりスタンドアロンアプリでもJavaが便利、って感じです。
それに.NETアプリって遅いじゃん。あれなら1.4以降のSwingでも遜色ない。
ということで、書きづらくてもクロスで使えるJavaがメインです。
0834デフォルトの名無しさんNGNG
>正直、自前のWebサーバ立ち上げる位しか、
個人がわざわざPC買ってLinux入れる用途が見当たらないんだが…。

んなこたーない。
0835デフォルトの名無しさんNGNG
>私の場合PCが3台あって、全てにXP入れるのはバカらしいので、

ここに無理が…。最初に非Windowsありき、の発想じゃなぁ。
0836デフォルトの名無しさんNGNG
俺みたいにゲームやる人間はそれだけでLinux却下だな・・・・。
0837デフォルトの名無しさんNGNG
ゲーマーはともかく、実務上Windowsに固執する必要はないんでないの?
うちの会社(フツーの営業会社)、デスクトップLinux導入検討してますよ。
0838デフォルトの名無しさんNGNG
リナは遊ぶならPlamo
ター棒や赤帽は実用主義&初心者迎合化してて面白みが無い
0839デフォルトの名無しさんNGNG
>最初に非Windowsありき、の発想じゃなぁ。

Macみたいにハードから揃えろって訳じゃないんだから、
DOS/V系マシン所有者なら非Windowsありきでもいいんじゃない?
最初からWindowsしかないと思うほうが視野が狭すぎって感じがするが。。。
0840デフォルトの名無しさんNGNG
だって、よその会社がOfficeの文書送りつけてくるのに、どうするのよ。
0841デフォルトの名無しさんNGNG
>実用主義&初心者迎合化してて面白みが無い

その権化こそWindows。だから成功した。
LinaxやJavaが出遅れるのはその視点に欠けるから。
これからのLinaxやJavaに期待。
0842デフォルトの名無しさんNGNG
>>840

OpenOfficeを知らんのか?
0843デフォルトの名無しさんNGNG
>>840
ププ
0844デフォルトの名無しさんNGNG
>>842
OpenOfficeでまともにOfficeの文書が扱えると思っているのは、
実際にはロクに使い込んでいない何よりの証拠なワケだが…。
0845デフォルトの名無しさんNGNG
>>844

世間知らずの学生ハケーン。
一般のサラリーマンはそもそもOfficeをロクに使い込んでいません。
ほとんどのビジネス文書はOOで足りるのです。
0846デフォルトの名無しさんNGNG
Officeって
結局のところExcelの表の値があってさえいればどうとでもなるレベルがほとんどだ

wordは年々使用率が下がっているので問題なし
人に文章読ませるという時点でpdfにするか、htmlにするってことが多いから

プレゼンに関してはPowerPointよりいいことも多いんだっけ

ほかにもお絵かきソフトとかついてきて商用版で9800円だしな
0847デフォルトの名無しさんNGNG
>>845
世間知らずの引きこもりがめちゃくちゃいうな。
0848デフォルトの名無しさんNGNG
そろそろ関係ない話題はやめようぜ
0849デフォルトの名無しさんNGNG
>>845-846よ、世間ではエクセルはマクロを使うものですよ。
君は枠線描画ツールとしてしか使えないようだけれど。
0850デフォルトの名無しさんNGNG
>>829
すでにLinuxで使えるよーん。
まだまだな部分は多いけどね。
ただ次期Winでぶっちぎられるので置いてきぼりになる。
Windowsだけ(おまけでLinux)でいいならC#。
Win以外必要なら仕方なくJavaにしとけ。
0851デフォルトの名無しさんNGNG
お子様ですか
0852デフォルトの名無しさんNGNG
>>850
100%で無い互換性は、互換性で無いワケだが。
0853デフォルトの名無しさんNGNG
>>852
そういうのは完全互換と言う。
0854デフォルトの名無しさんNGNG
>>852
そもそもWORAは求められていないんだがご存知ないみたいだね。
0855デフォルトの名無しさんNGNG
一般の会社では”パソコンに詳しい人”か”派遣のねーちゃん”が得意になってマクロ使ってるくらいで、
大多数のオヤジ連中はエクセルを枠線描画ツールとしてしか使えないのが事実。
0856デフォルトの名無しさんNGNG
派遣のねーちゃんハァハァ・・・
0857デフォルトの名無しさんNGNG
エクセルでsmtpクライアント作った
0858デフォルトの名無しさんNGNG
パソコンに詳しい人が作ったマクロを皆で使う会社は多い現実。
0859デフォルトの名無しさんNGNG
>>821
>>827

同意。
かなりの実力者と見た。


>>850

dotGNUでもまぁ動くけど確かにまだまだなのよ。
Macでも動くようになるらしいが・・・。
0860デフォルトの名無しさんNGNG
脱線話を総括して、
StarSuiteでもマクロ組めるし、
マクロ組んだファイルを社外に出すことは少ない。
結果、Linuxも実用に耐えるということでクロスで使えるJavaに一票。
0861デフォルトの名無しさんNGNG
優れた言語であるC#にしとけば?
0862デフォルトの名無しさんNGNG
どっかに
Cはカローラみたいな国産車
C++はレーシングカー
C#は高級車
とか書いてあった記憶が。
0863デフォルトの名無しさんNGNG
C と C++ はなんとなく逆のような感じがする。
0864デフォルトの名無しさんNGNG
>>863
多分、そういう意味ではないと思う。
0865デフォルトの名無しさんNGNG
>>862

どれも種類は違えど免許が必要。
単に乗るだけならカローラみたいな国産車。
レーシングカーは速いが下手すりゃ大事故。
高級車は運転も快適で事故にも遭いにくい。
ただ、この高級車はレーシングカー並なんだが。
0866デフォルトの名無しさんNGNG
C#はDirectXとか使うとき楽だよ。
0867デフォルトの名無しさんNGNG
>>860
今Java言語勉強してます。
ホントはC#勉強したかったんですが、本屋に行った時良さそうな本が無かったんでJavaにしましたw
初心者がやる分にはJavaで大正解かなと個人的に思ってます。
0868デフォルトの名無しさんNGNG
結局目的に合った言語を使えということだ。

0869デフォルトの名無しさんNGNG
そんなこと言ってる間にsmalltalkerになった俺
0870デフォルトの名無しさんNGNG
正直、 C# の魅力はプロパティとインデクサ以外わからない。
Java書きから見るとC#が気持ち悪いのはデリゲートだけだけど。

Java書きといっても未だに1.1書(ターン
0871デフォルトの名無しさんNGNG
>>870
同じく1.1書ってかJ#(ターン

GUI楽なんだよ・・・
0872デフォルトの名無しさんNGNG
delegateいいじゃん!
Objective-Cのselector以来の衝撃だぜ!!
0873デフォルトの名無しさんNGNG
>872
やってることはまあJavaでいうアダプタクラスと一緒なんだけど、クラスの枠を飛び出るのが気持ち悪いのと、リスナを束ねることができないってのがちょっとね。
0874デフォルトの名無しさんNGNG
>>870
プロパティをインデクサみたいに引数つけて書きたくね?
int poi[int a] {
get {...}
set {...}
}
みたいに。
なんでインデクサはthisにしか使えないんだろ。
0875デフォルトの名無しさんNGNG
>874
C#わからないけど、インナクラスのインデクサ使えば同じだからじゃないかな。
逆に、外からどっちか区別できなくなるし。
0876デフォルトの名無しさんNGNG
>>873
> リスナを束ねることができない
delegate にも += で複数登録できるぞ。

今のC#では、ほんの少しプロトタイプの違うメソッドを登録できないのが難点だが、
C#2.0で無名delegateが使えるようになるので、Javaの無名クラスに追いついたと思う。
0877デフォルトの名無しさんNGNG
>876
そういう意味じゃなくて、1つのクラスにリスナを集約できないというか。
まあ、そう書けばいいんだけどね。

Java の場合 class Hoge implements ActionListener, ItemListener{
}
とか。
C#の場合、ここでimplements(みたいなこと)するのはメソッドになるわけでしょ?
1つだけのリスナを書くのにはdelegateの方が楽なのはわかってるんだけど。
0878デフォルトの名無しさんNGNG
うーん、妥当な対決例つーと、2000件程度の電話帳のソートとかかなぁ。
0879C#NGNG
トリプー?
0880デフォルトの名無しさんNGNG
>>877
C# の場合は "implements *" 自体を書かなくても良いと受け止めるべきだろう。
あと、例えば 2種類の ActionListener を集約したい場合に、インタフェースベースでは泥臭くなる。
まぁ、Javaには無名クラスがあるので、delegateの利点は 記述量が減る&IDEと連携しやすい程度だけどな。
0881デフォルトの名無しさんNGNG
>>806
わざわざC#使うんだったらJavaを使えばいいじゃん。
Linuxなどでは
0882デフォルトの名無しさんNGNG
え?今からC#製のソフトをJavaに移植しろってか?
0883デフォルトの名無しさんNGNG
>>1へ

この書き込みをもって僕のプログラマーとしての最後の仕事とする。
まず、僕の自作コンポーネント群をオープンソースとし公開をお願いしたい。

以下に、Windowsプログラミングについての愚見を述べる。
GUIを伴うWindowsアプリケーションの構築を考える際、第一選択はあくまでDelphiであるという考えは今も変わらない。
しかしながら、現実には僕自身の場合がそうであるように、非Microsoft製品を使用することによる情報の不足や互換性の無さが開発に支障をきたす事例がしばしば見受けられる。
その場合には、英語翻訳を含むWeb検索等が必要となるが、残念ながら未だ満足のいく成果には至っていない。
これからのWindowsプログラミングの飛躍は、Delphi以外の統合開発環境の発展にかかっている。
僕は、君がその一翼を担える数少ないプログラマーであると信じている。
能力を持った者には、それを正しく行使する責務がある。
君には.NET FrameworkによるC#の習得に挑んでもらいたい。
遠くない未来に、Javaによる開発環境がこの世からなくなることを信じている。
ひいては、僕の自作コンポーネント群を公開の後、君の研究材料の一石として役立てて欲しい。
サンプルは生ける師なり。
なお、自らWindowsプログラミングの第一線にある者が新技術を早期習得できず、情報の海に溺れたことを心より恥じる。

                                                             883
0884デフォルトの名無しさんNGNG
.NETマガジンに吉田某のレビューがあったよ。
Delphi.NETはC#よりも進んだ言語仕様を持っていて
現時点で最高かつ唯一実用に耐える開発環境だって。

今月号のdotNETマガジンに約10ページを割いてDelphi8の特集記事があったけど。
基本的にマンセー記事。
最終的には.netをやるのかどうかというところに行き着いてしまうのだが。
0885デフォルトの名無しさんNGNG



  ま  た  D  E  L  厨  か  !  !  


0886デフォルトの名無しさんNGNG
>>883
C#を勧めるお前はもう終わっている。

Javaの後継、D言語をお勧めする。

.net frameworkとC#がWin32 API, VC++の二の舞になることを信じている。

0887デフォルトの名無しさんNGNG
>.net frameworkとC#がWin32 API, VC++の二の舞になることを信じている。

それはつまり、大ヒットして息の長い業界標準ツールになる、ってことですね?
0888デフォルトの名無しさんNGNG
>>886 >>883は終わっちゃった人だよ?
0889デフォルトの名無しさんNGNG
財前ネタにマジレスしててワラタ
0890デフォルトの名無しさんNGNG
何が業界標準ツールになるって?

ドトネトフレムワクはまずまずだな、業界標準というには無理があるって凝った。

0891デフォルトの名無しさんNGNG
> ドトネトフレムワクはまずまずだな

そうそう。
0892デフォルトの名無しさんNGNG
結局、C#がJavaより優れている点は記述量が減るだけなんだね。
記述量減らしたいならVelocityで十分じゃない?
0893デフォルトの名無しさんNGNG
>>892
もう Velocity じゃなくて IoC コンテナだろ。
ビルド時じゃなくて実行時にコードが書き換えられる。
Tapestry、Webwork、Spring、Seasar とか。
0894デフォルトの名無しさんNGNG
>>893
障害解析で死にそう。
0895デフォルトの名無しさんNGNG
>>894
障害解析を IoC で組み込むとか。
0896デフォルトの名無しさんNGNG
C#はポインタがないから使いにくいとか誰かが言ってた
0897デフォルトの名無しさんNGNG
実際のところC#もJavaもどちらもポインタがあるんだけどね。
で、かなりつかいやすいようにできている。
そのポインタがないから使いにくい香具師がいっていると思われることを実現するには
C#ならunsafe, JavaならJNIを使って解決するってことだね。
0898デフォルトの名無しさんNGNG
レベルが高いな
0899ウィルスくださいNGNG
ウィルスください★
対処不可能なものやアプリケーションを食ってしますような
ウィルスでもいいです★
どんなウィルスでもいいので、送ってください!!
[email protected]
0900デフォルトの名無しさんNGNG
教育用言語としてはPascal、Rogoと並んでJavaに定評があります。
実用性はC#のほうがずっと上でしょう。
何をやりたいかによって選ぶ言語が変わると思います。
0901デフォルトの名無しさんNGNG
どっちか覚えろって言うのならJavaかな。
C#はネイティブコンパイルが出来るようになった時に、
後発のD言語と覇権争いをするだろうから今はパス。
0902デフォルトの名無しさんNGNG
>>900
ヴォケ 実用性はC++のほうがずっと上だろ
JavaやC++よりも実績もろくにないC#なんぞM$信者のオナニー言語。
0903デフォルトの名無しさんNGNG
eclispseは使いやすい
0904デフォルトの名無しさんNGNG
>>902-903
使ったこともないのに良くわかりますね。
感服いたしました。
0905デフォルトの名無しさんNGNG
>>904

うらやみか?
俺は仕事で会員登録サイトを作るのにeclipse(sclispse)を使ってるぞ
0906デフォルトの名無しさんNGNG
>>905
またつづり間違えた
0907デフォルトの名無しさんNGNG
>>904
おまいさんはJavaもC++もろくに使ったことがなさそうだな
>>900の発言がそう物語っている。
0908デフォルトの名無しさんNGNG
EclipseはPHPの開発にも使えるからな。

C#の開発にも使える。お勧めはしないが
レス数が900を超えています。1000を超えると表示できなくなるよ。