プロが教える店舗&オフィスのセキュリティ対策術

プログラミング言語の習得について


こんにちは。某大学の理工学部数学科に通う4年生です。
プログラミング言語について質問させていただきます。

僕は先日基本情報技術者試験を受験しました。
その試験ではプログラミング言語を1つ習得しないといけなかったためC言語の入門書を一冊勉強しました。

今家にはC++とJavaの入門書、C言語の中級書もあります。

そこで質問なのですが、

続けてプログラミング言語を勉強するには、C言語の中級書、上級書というように1つの言語を徹底的にマスターした方がいいですか?
それとも、C++、Javaの入門書を一通りやってC以外の言語も一応使えるようにした方がいいですか?

ちなみに大学院に進学する予定なのでまだまだ勉強できる環境にあります。


宜しくお願いします。

A 回答 (11件中1~10件)

水を差すようでなんなんですが、プログラム言語って目的の機能を電算機上で実現するための単なる一手段に過ぎません。


言語なんて必要なものを必要になってからやりゃあいいんです。
せっかく大学院で勉強できるのだったら、そんな泥仕事前提の勉強よりは情報処理論や論理学などアカデミックなことに力を入れることの方がいいと思います。
最近の人たちは特定のアプリを使ったりタイピングが早かったりと実用的ではあるのですが、「エラストテネスのふるい」だとか「ブール代数」「シャノンの定理」とか内容はともかく名前すら知らなかったりする方がほとんどです。
理数系離れの多い昨今、そういう分野に力を入れて基礎を固めてがんばっていただければ、社会に出てからもマンパワーが発揮できるとおもいます。
泥仕事っぽい部分は暇なときに趣味でやるか、就職してからやればいいと思います。
泥仕事専門(ある意味大好き)でやってきてる人間からの単なるアドバイスというかたわごとですjavascript:void(0);ので、話半分に聞いといてください。
    • good
    • 0

アルゴリズムを習得。

並べ替え、順位づけ、マッチングがプログラムできない人多いのでこういう基本から。

コマンド等わからないときどうやって調べるたらよいか。

プログラムの不具合箇所見つけるにはどうしたらよいか。

各言語の種類、特徴。

こういうことをマスターしておけばどの言語でもそこそこ使えることです。

上級は実務経験必要です。コマンドばかり知ってても役に立ちません。コマンドという道具を使う事を目指すのでなくて、考えて何か生み出すことを目指す。


言語に向き不向きあります。Cの考え方では思いつかないがVBならできそう、とか。自分に合う言語ならそれを伸ばす。
    • good
    • 0

色々な考え方があると思いますので、いくつか書いてみます。



1.C言語を徹底的に勉強する
Cさえ理解していれば読むことが可能な言語はいくつかあります。
たとえばJavaも、Cの知識があれば大体読めます。
他の言語を扱う場合、その差を埋めるだけですぐに書けるようになるはずです。
したがって、C言語を徹底的にやるのはありだと思います。

2.オブジェクト指向を勉強する
C++でも、Javaでも何でもいいと思いますが、オブジェクト指向を理解するのもいいと思います。
Javaはライブラリが豊富なので、何かを作る場合便利だと考えます。

3.C言語でプログラミングをする
ある程度Cが理解できているということで、C言語で何かプログラムを作ってみてはいかがでしょうか?
あくまで言語は手法ですので、プログラムを作ってどこまで自分が扱えるのかを試すのもいいと思います。
プログラムを作っていく中で、アルゴリズムを考えたりすと思いますが、それは他の言語を勉強した先の部分で活きて来ると考えます。

ちなみに、私の場合ですと、3を実行しながら、1をする。(わからない部分を勉強)
飽きそうになったら気分転換に2といった具合に、よくばりますw
    • good
    • 0

とりあえず C をある程度はやっておかないとダメかな. 今どきの手続き型言語は C に影響されてる部分が大きいから.... まあ, 「書き方」なんかの違いはあっても考え方はそんなに違わないから, 手続き型言語は 1つやっておけばなんとかなることが多い.


あと, どこまで「プログラム」をやるかによるんだけど, 手続き型とは違うパラダイム, 例えば関数型の言語を 1個知っておくと幅が出ると思う... と言いつつできてないんだけど.

ちなみにプログラミング言語を研究してもノーベル賞は無理. その線なら普通は「京都賞」っていいそうなんだけどなぁ....
    • good
    • 0

>C言語の中級書、上級書というように1つの言語を徹底的に


>マスターした方がいいですか?
野球やサッカーの入門書や解説書をどれだけ読んでも、試合に
出て活躍できる様な選手にはなれません。
実際に体を動かして、いつでも体が即座に反応するまで練習を
繰り返し、鍛える必要が有ります。
プログラミング言語の習得も同様です。
    • good
    • 0

ちょっと違う意見を、


 大学院まで進んでコンピュータープログラミングを研究するのであれば、
あるプログラミング言語について精通するよりは、あらゆるプログラミング言語
(機械語、アセンブラー、FORTRAN、COBOL、PL/1...に始まってC、LISP、PROLOG、から
 JAVA、JAVASCRIPT、PHP、RUBY、VB...にいたるまで)
について、幅広く、遊んでみて、特徴が分かるようになり、構造化プログラミング
とか、オブジェクト指向とか、リレーショナルDB等のデータモデルとか概念がわかる
ようになりましょう。

 そして、よりすぐれたプログラミング技術を研究して、人類に貢献してください。
ノーベル賞をめざしましょう!。

※就職のためだけなら、....
    • good
    • 0

C++でもJavaでも良いですが、オブジェクト指向の言語にチャレンジしましょう。


これがクリアできれば、最近の他の言語も、必要な時に覚えれば良いでしょう。
#所詮、道具の一つですから・・
    • good
    • 0

良いか悪いのか、という話になると難しい部分もありますが、


自分は「まずはひとつの言語について理解を深める」事を
オススメしたいです。

理由は、ある言語について「使いこなせてきたかも!」と
感じられると、自信に繋がるからです。加えて、アルゴリズム
的な部分。言語は変われど、アルゴリズム(や発想自体)は
同じなのです。プログラミングにおける「文法」はオマケで、
そっちの方が重要ですよね。それと、1つの言語に慣れると、
他の言語にもすんなり入りやすいという事もあります。

何をもって言語を「習得した」と言えるかは、なかなかに
判断が難しいところです。だからといって、ずっと1つの
言語にこだわるのは今の時代、マズイですし……。
いや、マズイというより「もったいない」という感じです。

なので、自分なりに何か目標を設定してそれをクリアしたら、
サクッと次の言語をやってみる、というのはどうでしょう?
それは、小規模な自作アプリを完成させる!であったり、
ミニゲームを作る!など様々でしょうけれど、自分として
が納得できる目標であれば何でもOKだと思います。
    • good
    • 0

LinuxはOSでCは言語ですが・・・。



情報処理会社の元採用担当として言うなら、「一つの言語を極めている人の方が、複数の言語を中途半端に使える人より能力が高いことが多い」です。ですので「一応VBとCとCOBOLと・・・」という人より「C++なら任せて下さい。でもVBはちょっと読めません」という人の方を優先して採用したいです(でも、ウチの会社の環境はC系じゃなくVB系なんですけどね)。

プログラム言語なんてのは、基本的にちょっとした読み変えで他の言語が読めます。ですので、世間一般で利用頻度が高い、C++やJavaをつきつめた方が私は良いと思いますよ。
    • good
    • 0

言語の話をしているのにOSを持ち出す謎回答は置いておいて。



理屈から言えば一つを深く学んでおいた方がいろいろと便利です。
そこで得た知識は他の言語を学ぶときにも役立つでしょう。

ただ、深く学ぶときに「全てをナイフ一本で片付けようとする」ようなことにならないよう注意は必要です。
それを防ぐには、複数の言語を扱える方がいいんですが……
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!