解決済みの質問
質問タイトルのとおりなのですが、これから、プログラミングをやってみたいと思っている者です。
C言語やJavaを学びたいと思っているのですが、市販の書籍を
何冊か買ってきて一通りの基本的な事項というのは独習・体得できるものなのでしょうか。
良書を調べたりもしていますが、結構、初心者には熟読しても難しい概念が多いですよね。
応用や発展的な技術はたしかに、長い期間をかけての実際の仕事現場での経験、積み重ねが必要であるとは思いますが、変数、関数、クラス、条件分岐などの基礎的な概念や、文法は理解できるのだろうかと思ったりもしました。
プログラミングをマスターしている方というのは、だいたい本を見て独学でやられてきたのですか。
それとも、よくある大学や、「WAVE」「インディーフォルダ(元アウズ)」「ヒューマンアカデミー」などのスクールに通われて身に付けた方も多いのでしょうか。
私も体験入学などしてきましたが、「わからないところを質問できる」、「お金を払ってまで通うのであるから、なまけたり、挫折しないで学習を持続できる心理的な強制力がある」との利点はあるものの、それ以外での実際の学習内容は、一般の書籍と中身は大して変わらないのかなと思ったのですが。
たしかに自己管理をなかなかできない場合は、学費も大きいけれども、長い目で自分に投資するという観点から見た場合、非常に大きな払うだけの価値があるのかもしれませんが。
学費を払うだけの価値があるのかなと思い、迷っています。
もし、何かしらのアドバイスをいただけたら、ありがたく思います。
投稿日時 - 2008-01-10 00:36:28
nobulinさんがプログラミングを何のために勉学するのかによります。
つまり、情報科学科の学生さんで学業のため、就職のため、趣味のためなど。
就職のためなら、自分に投資しても体系的に勉強する価値はあります。
学業なら、学校の先生や先輩に本や勉強法を伺うのもよいでしょう。
趣味ならば、その言語を使って何か製作したいソフトウェアを
考えて、それを作るにはどうやればよいか調べていくのも手です。
勉強するときは、まずはサンプルプログラムのソースコードが
書いてある本を見ながら自分でまったく同じプログラムをつくったり、
それをちょっとずつ改造・改変しながら応用していき、コマンドを
覚えるのが早道だと思います。
1つのプログラム言語を覚えれば、2つ目からは前に覚えた言語との
違い、コマンドの名前、引数の使い方の違いを覚えていけばよいと
思いますよ。
私は大学卒業後SEの道に進みました(今はSEを辞めぜんぜん違う仕事をしています)が、
学生時代は、大学の授業で今は無きMacのHyperTalkからスタートし、
会社に就職してからは会社の新人研修や実JOBで
COBOL→C言語→VB(VBA)→HTML/Perl→Oracle PL/SQLと
覚えていきました。
(覚えた順番はその時代およびお客様のシステムに関係する上、
すべての言語をパーフェクトに覚えたわけではありませんが)
また、できるだけ同じ言語を勉強している友達を見つけて
情報交換をしてみてください。
投稿日時 - 2008-01-10 01:01:32
お礼
回答ありがとうございます。
第一にはどうせやるなら就職ということを考えています。
趣味としても、将棋などと同じく、非常にやりがいのあるものだとは思いますが。
そうですね、例題にあるソースコードを自分なりに改変したり、工夫したりして試行錯誤していくことはたいへん勉強になりそうですね。
勉強法など詳しくありがとうございました。
投稿日時 - 2008-01-10 01:50:02
30人が「このQ&Aが役に立った」と投票しています
ベストアンサー以外の回答(13件中 11~13件目)
本は、買ってきただけではできない。ただ読んだだけでもできない。
数十回と呼んで、実際に数十、数百と書いてみる努力ができれば、多分できる。
もちろん、個人差はありますが。結局、「人造の言語」に過ぎないので、
とにかく書いて、使ってみてナンボです。言語学者じゃあるまいし、
文法書だけ読み漁っても「ネイティブな」プログラマにはなれません。
英語スクールに通って身につくくらいには、スクールも役に立つのではないでしょうか。
それを、コストとしてどうみるかは、あなたしだいだと思います。
# スクールに行くか、短期でも海外にいくか、独習するか、
# 日本で外人と知り合いになるか、webで知り合いになるか、組み合わせるか…。
# 少なくとも私は、学生時代に書籍ベースの独学で覚えました。
# (当時はインターネットなんてなかったので…)
投稿日時 - 2008-01-10 01:08:59
お礼
回答ありがとうございます。
そうですね。水泳や柔道などのスポーツと同じく、実地にコードを構築していく実践が力になりますね。
たしかに英語スクールでも同じようなものですね。
まったく役に立たないわけでもないし、独学でがんばろうと思えばできる。
学費を払うだけのものかどうかは個人が判断するしかないですね。
わかりやすい例えでありがとうございました。
投稿日時 - 2008-01-10 01:55:25
すべては"あなた次第"です。
> 市販の書籍を何冊か買ってきて一通りの基本的な事項というのは独習・体得できるものなのでしょうか。
それと処理系(コンパイラ/開発環境)があればできます。
ただし、ノコギリ/カナヅチが使えるようになるのと
犬小屋が作れるのとは違います。
一軒家を作るのとは大きく違います。
> 学費を払うだけの価値があるのかなと思い、迷っています。
ならばお試しに教本と無償のコンパイラを用意してやってみるといい。
思い悩んでる時間がもったいない。
投稿日時 - 2008-01-10 01:07:50
お礼
回答ありがとうございます。
一通りの基本事項を修めても、たしかに数十行程度のプログラムが書けるようになるのと、アプリのソフトを作るのとでは天地の差がありますよね。
教本片手にパソコンに向かい実際にやってみます。
投稿日時 - 2008-01-10 01:52:11
まったくの初心者の方のようですが、プログラムの考え方が理解できるようになるためにはいくつかの壁があります。その壁を越えるために初めのうちは誰かに教えてもらった方が近道だと思います。今までの学校教育で体験したと思いますが、同じ内容を勉強するにしても自分で教科書を読んで理解できることと、先生から教えてもらって理解できることはずいぶん違うのです。ソフトウエアが上達するにはプログラムのセンスを身につける必要があります。それを的確に教えてくれる先生に出会えれば上達しますが、そういう教師をさがすこと自体が至難ですので、とりあえずは手近で低価格なコースを探して受講してみてはいかがでしょう。
プログラムのセンスが身につけばあとは独学でもできます。高度なプログラミング力を身につけるとすれば教えてもらってできる部分は少ないので、独学で力をつけるしかありません。
投稿日時 - 2008-01-10 01:00:59
お礼
回答ありがとうございます。
仰る通りまったくの初心者です。
貴重な御意見ありがとうございます。
最初のうちは壁が高いと感じるでしょうし、試練の期間ですね。
投稿日時 - 2008-01-10 01:47:25
OKWaveのオススメ
おすすめリンク