• 締切済み

プログラミング言語の質問です。

プログラミング言語の質問です。 プログラミング言語を今から勉強しようと思います。 そこで、オブジェクト指向の言語として(というより、今の社会で役立つ言語として)習うべきなのはどの言語でしょうか? 私は候補として、javaとC++を知っていますが、どう違うのかは分かりません。 どちらもCからの派生みたいなことは知っています。 そこで、javaとC++を比較して (1)どう違うのでしょうか?(できることの違い) (2)どちらの方がより優れていると思いますか? 今のところjavaとC++を考えていますが、他の言語の方が良いなら教えてください。 その他、プログラミング言語に関して知っておいたほうが良いことがあれば、 ぜひ教えてください。 回答よろしくお願いします。

みんなの回答

回答No.1

>(1)どう違うのでしょうか?(できることの違い)  Javaは実行ファイルが仮想マシン上で動くので比較的機種依存を考えなくて、マルチターゲットで開発できる。自動的なガベージコレクションを備えているのでメモリの管理が楽。ただし、仮想マシンの環境が必要なのでソフトの動作環境が限られる。  C++はターゲット向けに最適化された実行ファイルを作るので対象マシン以外では動かないが、その代わりシステムに深く入り込んだ作り込みが出来る。基本的にガベージコレクションは自分で行う必要がある。仮想マシン等の環境は(場合によってはOSも)不要なので、どんな環境でも動くものが作れる。  オブジェクト指向という点では、Javaはクラスをベースに開発するのがデフォルトだけど、C++はクラス無しでも開発できてしまうので要は開発者の作り方次第ということになる。 >(2)どちらの方がより優れていると思いますか?  手続きの簡単さとか、汎用的なソフト開発が出来るという点ではJava。  動作速度とか知識と技術次第で何でも作れるという点ではC++。  ま、世の中には2通りのソフト開発者がいて、片方は楽な開発環境に慣れると面倒な開発環境では開発できなくなる。もう片方は面倒でも好きなことができる開発環境に慣れると楽でも出来ることの限られる開発環境では何もやる気が起こらなくなる。  どっちが自分に適してるのかということを十分考えて選べば良いかと。「社会に役立つ」というのはどんな仕事をするかであって、言語とは関係ないでしょう。

関連するQ&A

  • プログラミング言語の質問です

    プログラミング言語の質問です プログラミング言語を今から勉強しようと思います。 そこで、オブジェクト指向の言語として(というより、今の社会で役立つ言語として)習うべきなのはどの言語でしょうか? 私は候補として、javaとC++を知っていますが、どう違うのかは分かりません。 どちらもCからの派生みたいなことは知っています。 そこで、javaとC++を比較して (1)どう違うのでしょうか?(できることの違い) (2)どちらの方がより優れていると思いますか? 今のところjavaとC++を考えていますが、他の言語の方が良いなら教えてください。 その他、プログラミング言語に関して知っておいたほうが良いことがあれば、 ぜひ教えてください。 回答よろしくお願いします。

  • オブジェクト指向のプログラミング言語の勉強法について

    オブジェクト指向のプログラミング言語の勉強法について お尋ねします。 iPhoneアプリを作ってみたいと思い、最近プログラミングの勉強を始め、C言語の入門書を一通り熟読しました。そして、次にオブジェクト指向の言語を勉強しようと思っているのですが、iPhoneアプリの開発に用いる言語は「Objective-C」で、他にも開発に使用できる言語として、「C++」や「Java」などいくつかあると聞き、どれから勉強すればいいのか迷っています。 Objective-CとC++やJavaでは、技術的(表現力?)に大きな差はあるのでしょうか?それとも、Objective-Cだけでも十分なのでしょうか? そのほか、まだC言語を勉強したばかりでわからないことが多いのですが、ゲームアプリの開発にどのような知識が必要なのか、また効率のよい学習順序、お勧めの書籍など助言を頂ければ幸いです(__) ちなみに、 ・プログラミングの経験は全くありません。 ・はじめはシューティングなど動的なゲームアプリを作ろうと思っています。 ・妥協せず、基礎からきちんと勉強したいと思っています。

  • 新言語プログラミング2005?

    以前にC/C++言語・Javaプログラミングを勉強したことがあるのですが、今は違う業界にいて、最近では何のプログラミングが最新なのか分かりません。 「これから」という新言語プログラミングを、誰か知っていたら教えてください。 ちなみに、C言語とJavaの検定・2級を持ってます。

  • プログラミング言語について

    コンピューター関連に詳しい人にお聞きします。 最近プログラミングに興味がわいてきました。 調べてみるといろいろな言語があるということが分かり、うぃきなどで調べてみたのですが意味が分かりませんでした。 javaやc、c++,phpなど実生活ではどのような場で使われているのでしょうか? それと俗にプログラマーと呼ばれる方々は、それらの言語すべてに対して知識があるのでしょうか? またプログラミング言語同士には、なにか繋がりがあるのでしょうか?例えばc++はcの派生といったようなもの。 回答よろしくお願いします。

  • Cとjavaの違い

    学校でC言語プログラミングを学んでおり,新たにjavaも習うことになったのですが, C言語とjava言語の違いはどのような所なのでしょうか? java言語は「オブジェクト指向」ですが,C言語は何指向なのでしょうか? よろしくお願いします。

    • ベストアンサー
    • Java
  • 関数型言語の普及について

    関数型言語の普及について 趣味でプログラミングを勉強しているものです。今までにJavaやRuby等、オブジェクト指向言語を中心に勉強してきました。 今日、あるきっかけで関数型言語のHaskellを勉強し始めました。 そして、実際にプログラミングをしてみたり、関数型言語について調べてみると、まだ大きなアプリは書けないものの、今までのやり方(手続き指向、オブジェクト指向)が不要なのではないかと危惧する程の斬新さ、強力さが感じられました。 しかし、そんな関数型言語も未だに普及しているとは到底言えません。Haskellは関数型言語の中でも新しいもののようですが、それでもJava、Rubyよりも昔に発表されている言語です。 どうしてHaskell等の関数型言語は主流になっていないのか、関数型言語が従来の言語に劣っている点を中心に、皆さんの意見を聞かせてください。

  • オブジェクト指向で作るプログラミング

    オブジェクト指向プログラミングで作るものってどんなものですか??(たとえば、、、ゲームとか、エクセルとかですか??) あと・・・Cを勉強してから、javaにいく人がいますが、Cとjavaは似ているのですか??

  • Javaにおけるオブジェクト指向とは?

    現在Javaを勉強しております。 以前はC言語を勉強しておたのですが、 JavaとCの違いにおいてJavaの特徴としてオブジェクト指向と習いました。 しかしいまいちこのオブジェクト指向を理解できません。 プログラムを一つのまとまりとして考えるというのはどういうことなのでしょうか? 確かにJavaはC言語とは違いいくつかのプログラムからできている (はず?見当違いだったらすみません) C言語が一つの大きなプログラムでできているとすると、 Javaは細かいプログラムの集合体であると私は考えていました。 この細かいプログラムの集合体というのがオブジェクト指向なのでしょうか? 全くの見当違いだったらすみません。 よろしくお願いします。 

    • ベストアンサー
    • Java
  • プログラミングのセンスをあげたい

    C、C#、JAVAを勉強してきたのですが自分のセンスの無さに 愕然としています。授業ではJAVAで電卓を作っているのですが正直1人でできそうではありません。 それ以外にも自分で、仕様書などは作らずにオブジェクト指向言語で作っているのですができません。 最近作って挫折したのは小遣い帳です。 Excelで作ることは出来ると思います。 あと家にSQLサーバーが無いため、配列を用いてファイルに書き込むと言う手段を考えています。 プログラミングのスキルをあげるにはどうすればいいのでしょうか?

    • ベストアンサー
    • Java
  • Macでプログラミング

    中学生です。PC等の知識はかなりある方だと思います。 今までWindowsでJavaを使ってのプログラミングを入門程度にやってきました。しかし、Macに乗り替え、また、将来的にiPhoneアプリの開発をしたいと思っています。UNIX系のコマンドも分かりませんし、iPhoneアプリの開発言語はオブジェクトCなので、これからそちらを勉強しようと思い始めました。もちろん、途中でJavaを投げ出すのには抵抗があったのですが、この方法が一番合理的かな、と思っています。 そこで質問ですが、オブジェクトCとC言語はどう違うのでしょうか。互換性はあるらしいですが、どのように勉強したらいいか分かりません。また、違いがあったとして、片方勉強すると、ごっちゃになったりしませんか? Mac向けのいい書籍を御存じの方も教えてください。

専門家に質問してみよう