質問: java言語、c言語のメリット・デメリットについて 初歩的な質問で大変申し訳ございません。 これからc言語もしくはjava言語のどちらかを勉強しようと 考えています。 それぞれの言語において、使用する上でのメリット・デメリットは あるのでしょうか? どなたか教えていただけますか?
回答: えーと、c/c++はポインタという初心者泣かせの概念があって、 分かってしまえば難しくはないんですが、 それでも初心者にとっては壁になりがちです。 javaはポインタの概念は表には出てこないのですが、 それでも実は全く存在しないわけではなく裏側に隠れていて、 個人的には、だからこそ厄介なように思います。 ですから、c++でしっかりポインタの概念を掴んでから、 場合によってはjavaに移る方を私としては勧めます。 c++からjavaに移るのはそれほど難しくありませんし。 ちなみに、c言語はもはや「古い言語」であり、 初学者が学ぶのはあまり勧めません。 c++はc言語にクラスとテンプレートという2大機能を導入したものですが、 それだけでなく、細かいところが色々使いやすく改善されていますので、 クラスとテンプレートを使わないとすれば、 cより学ぶのは楽だと思います。 c++とjavaの違いは、 まず1つにjavaがポインタの概念を表には持たないこと。 そのせいでc++ではメモリの管理を自前で行わねばならず、 若干面倒です。 (ある程度手間を軽減してくれるライブラリも、 c++を少し勉強すれば使えるようになりますが) そして第2に、javaはオブジェクト指向であること。 c++もオブジェクト指向とよくいわれますが、 javaよりは様々な考え方を許す言語であり、 その分使いこなすのが難しく、使いこなせば非常に便利です。