• ベストアンサー

プログラミングが得意な方への質問です。

プログラミング言語を複数使われている方へ質問です。 (1)一言語使えるようになるのに掛かった期間や経過など簡単にまとめて教えてもらえませんか? (2)言語マスターに時間が掛かっている人に対してどこが問題だと思いますか? (3)新しい言語の学習を始めるためには何から手をつけますか? (4)関数やクラスなどはどれ位使えば覚えられますか?  存在を知っていて使う時に調べればよい派ですか?  それとも初めに必要な部分は覚えてしまいますか? (5)言語マスターへの必要要素は、  概念の理解、文法の理解、必要性の高い関数やクラスの熟知  それ以外にありますでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • rajison
  • ベストアンサー率100% (1/1)
回答No.3

>>1 まず、自分はHTMLから入り、その次にJavaScript→VBS→C→Java(今)の順にやっています。 それで、一言語使える期間ですが、その言語の仕組みや特徴によって変わります。 JavaScriptはすぐに理解しましたし、逆にCやJavaは理解するのに時間が掛ったと思います。(今でも) 大体の高水準言語は半年あれば基礎がついて、1年経ってひとまず一人前になると聞いています。 >>2 多分、そのような人はただコードだけ見ていて、実際に打っていないんだと思います(^^;)A プログラミングは見るんじゃなくて、打つんです。とにかく打つ。 >>3 その言語の構造体や、基礎(if分やfor分、出力系等々)を押えます。 また、その言語の特徴について調べるのもアリかと。 ある程度基礎がついたら次に簡単なプログラムを作ります。 それが出来れば次に少し上のプログラムを。その繰り返しです。 >>4 どちらも使う派ですね。 ほとんど使う関数やクラスなんかは覚えておきます。 というか、大半のやつは勝手に覚えてしまうかと思いますよ。 プログラム組む時に、こうこうしたいって時はネットで調べる。そして次に使うときのために覚えておく。 こういう感じですね。 >>5 先の回答の通り、アルゴリズムが大切だと思います。 まずはどういうプログラムを組みたいか、それでどのような処理をすればよいか、それをもとにしてプログラムを組んでいきます。アルゴリズムが出来なければ、プログラムを組むことも困難ですからね。 あと、論理的発想力も必要かと。なにか問題に当たってしまった場合、論理的発想力がなければ、中々解決できなかったりします。(経験と勘で解決できる場合もありますけど・・・。) 参考になれば、幸いです。

akaginoyama
質問者

お礼

回答ありがとうございます。 >プログラミングは見るんじゃなくて、打つんです。とにかく打つ。 これにつきますね。

その他の回答 (2)

回答No.2

>(1)一言語使えるようになるのに掛かった期間や経過など簡単にまとめて教えてもらえませんか? 私はCから入った口ですが、WinAPIを使ってウィンドウズプログラミングを始めたのは Cを始めてから2か月くらい後だったと思います。 >(2)言語マスターに時間が掛かっている人に対してどこが問題だと思いますか? 「言語マスター」という言葉の定義があいまいですが、 普段接する人の中で優秀な人とそうでない人を比べると 最も違うのは勤勉さでしょうね。 プログラムに優秀な人は、それ以外のこともよく知っています。 >(3)新しい言語の学習を始めるためには何から手をつけますか? 入門書を一冊買って文法を一通り覚えたら、何かソフトを作ります。 仕事とは関係がなくて、ちょろっと使いたいくらいなら Web上の入門サイトを読んだりしますね。 (4)関数やクラスなどはどれ位使えば覚えられますか? 何か課題を見つけて、とにかくソフトを作ってみることです。 >存在を知っていて使う時に調べればよい派ですか? 使うときになったら調べる派ですね。 ファイルIOとかログとか検索とか、当然あるだろっていうようなものは ソフトを作っている過程で必要に応じて調べます。 あるいは「こんなメソッドあれば便利なのにな~」って思うときは 大抵すでに存在してたりするので、そう感じたときに調べます。 Windowsであれば、SDKが公開された時点でリファレンスを読んだりして 気になったものを使ってみるって感じですかね。 (5)言語マスターへの必要要素は 1.ライフサイクルやメモリ管理の考え方は必須でしょうね。 2.言語とは別次元ですが、DBやネットワークの知識も必須。 3.あとはたくさんのデザインパターンを踏襲しているほうがいいですね。 4.保守性の高いコードを書けることも大事です。 こっちの方が処理速度が速いとか、ちゃんと理由があればいいですが マイナーな書き方を多様するなど、保守性の低いコードを書く人はダメですね。 保守性の低いコードを書く人って、他の人がどんな書き方してるか知らないんですよね。 他の人の書き方を知らない=勉強してないってことです。 5.最後に流行に乗れる人です。 流れの速い世界ですから、新しいことについていこうとしない人はダメです。

akaginoyama
質問者

お礼

当たり前のことのようですが、自身が出来ているかどうか?と問われたら まだまだ、やるべき事がたくさんあることに気がつかされました。 回答ありがとうございます。

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

(1) 基礎は大昔のBASICで。 雑誌の載ってるプログラムを打ち込んで、意味を理解して、改造して、とやってるうちに覚えた。 構造化とか考えるようになったのは、学生のときに理論を勉強してから。 (2) 「言語」なんてマスターしても、大した意味は無いと思っています。 命令とか覚えるのに必死になりすぎて、「解こうとしている問題を分析する」訓練を忘れているように感じることがあります。 (3) 基本の構文(分岐、ループ、変数)これが分かれば、とりあえずのプログラムは作れます。 ある程度慣れてきたら、その言語の特徴に合った構造を覚えます。 (4) 私は「使う時に調べる」派です。 自分の足りない脳に、そんなに沢山の関数だのクラスだのを全部覚えておくのは無理です。 その点、目の前に「コンピュータ」という優れた記憶装置があるのですから、使わない手はありません。 (5) アルゴリズムとデータ構造 現在の問題を解析する能力  まず、これらが先です。プログラミング言語はこれを表現する手段でしかありません。

akaginoyama
質問者

お礼

(4)使う時に調べる 最近動画サイトのLIVEコーディング等を見て、仕込みがあるとは思いつつも凄い速さでコード書き上げて行く様をみて、やはりメインで使う言語くらいは、少なくとも入力保管を使ってもスラスラとネットを調べないで書けるのが上級者の標準なのかな?なんって考えが強くなりました。 実際の現場ではどの位、スラスラ派が居るのか知りたいものです。 特に(5)のアルゴリズムとデータ構造これはプログラミング外での問題ではありますが 重要だと再認識いたしました。 回答ありがとうございました。

関連するQ&A

  • プログラミングは独学で習得できるか。

    質問タイトルのとおりなのですが、これから、プログラミングをやってみたいと思っている者です。 C言語やJavaを学びたいと思っているのですが、市販の書籍を 何冊か買ってきて一通りの基本的な事項というのは独習・体得できるものなのでしょうか。 良書を調べたりもしていますが、結構、初心者には熟読しても難しい概念が多いですよね。 応用や発展的な技術はたしかに、長い期間をかけての実際の仕事現場での経験、積み重ねが必要であるとは思いますが、変数、関数、クラス、条件分岐などの基礎的な概念や、文法は理解できるのだろうかと思ったりもしました。 プログラミングをマスターしている方というのは、だいたい本を見て独学でやられてきたのですか。 それとも、よくある大学や、「WAVE」「インディーフォルダ(元アウズ)」「ヒューマンアカデミー」などのスクールに通われて身に付けた方も多いのでしょうか。 私も体験入学などしてきましたが、「わからないところを質問できる」、「お金を払ってまで通うのであるから、なまけたり、挫折しないで学習を持続できる心理的な強制力がある」との利点はあるものの、それ以外での実際の学習内容は、一般の書籍と中身は大して変わらないのかなと思ったのですが。 たしかに自己管理をなかなかできない場合は、学費も大きいけれども、長い目で自分に投資するという観点から見た場合、非常に大きな払うだけの価値があるのかもしれませんが。 学費を払うだけの価値があるのかなと思い、迷っています。 もし、何かしらのアドバイスをいただけたら、ありがたく思います。

  • クラスを使用したプログラミングの練習

    クラスを使用したプログラミングは学校で習ったことがあるのですが、 机上での学習のみで実習はありませんでした。 クラスを使用したプログラムを勉強したいのですが、 どんなプログラムを作る練習をすればいいのでしょうか? ちなみに今パソコンで使用可能な言語でクラスの概念が用いられているのは RPGツクールVXに付いているRGSS2だけです。

  • プログラミングを学びたい。

    プログラミングについて学びたいと考えているのですが、 私は具体的にどういった事をすればよいのでしょうか。 自身でも色々と調べているつもりですが、この手の事については無知で、 どこから手を付けてよいやら、という様な右も左も分からない状態です。 質問1 . プログラミングの基本というか、流れと言えばいいか、 プログラミングの概念的なものを理解する為にはどうすれば良いんでしょう。 質問2 . 簡単なソフトウェアやゲームを作れるようなレベルに至るまでに 苦労する事とはどういった物が挙げられるんでしょうか。 質問3 . 言語というものがいくつかあるらしいのですが、 初めにどれを学ぶ事が望ましいのでしょうか。 質問4 . 私のような無知者向けの役に立つサイトや書籍を教えて下さい。 (可能ならあまり本には頼らずサイトから知識を得たいのですが…) 全くの素人なのでおかしな質問もあるかもしれません。 又、すべてにお答えいただかなくても構いません、 何かヒントの様なものでもいただけないでしょうか、よろしくお願い致します。

  • 8085系プログラミングについて

    ついこの前、同じを質問したのですが、私の理解不足と説明不足により質問の仕方が悪いと回答され、自分なりにアセンブラ言語について学習してみました。学習してみるとたしかに私は何も理解しておらず、8085系のプログラミングということも書き忘れていました。ここでのスレでまずお詫びしたいと思います。誠に申し訳ありませんでした、こんな私ですが、もしよければアセンブリ言語での8085系のプログラミングでこの質問に対する回答と解説のご教授お願いします。 9000H番地の1バイトデータをa、9001H番地の1バイトデータをbとしたとき、axbを16ビットで求め、下位1バイトを9002H番地、上位1バイトを9003H番地に格納するプログラムを作りなさい。またこのプログラムの実行時間をデータがA=65H、B=0AEHのときに計算しなさい。実行時間の計算では各命令の実行回数を示し、計算式を詳しく書くこと。 8085系のプログラミングでは、掛け算の関数がないので、掛け算についての表わし方だけでもいいので教えてください、お願いします

  • プログラミングの学習の手順がわかりません

    最近プログラミングの学習が行き詰っています。(Visual BasicとExcel VBAをやっています。いずれはC++も勉強するつもりです) 理由は、本のコードを丸写ししてばっかりで、いつになったら本なしでオリジナルのコードが書けるようになるんだと考えるようになったからです。 プログラミングをどういう手順で学習していけばよいですか?今は本を借りて真似をしているだけです。 もう一つ聞きたいのは、1つのプログラミング言語をマスターする上で覚えなくてはならないのはどんなことですか?あと、どのくらいの時間を費やして勉強すればよいですか?(まだ中2です)

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

    質問とはいえないかもしれませんが助けてください。 大学のプログラミング講座の募集があり(私は高校生です) 予備知識は必要ないとのことで参加したのです。が 今日参加者と会ってみると既にかなりの知識を 持っているようなのです。会話についていけませんでした・・・。 逆に私はプログラミングに対しての知識が全くありません。 どうにかなりませんか?なにか必要な知識ってありませんか? ET言語というものを学習するらしいです。

  • どのプログラミング言語を学習しようか迷っています

    こんにちは、プログラミング言語のことで質問させて頂きます。 私は情報学部の一年生です、この夏休みに堕落した生活を送るのも無駄なので、学校ではやらないプログラミング言語を少しでも学習し、何かを作って遊んでみようと考えています。 目的もどのような会社に就職したいかの希望も今のところは無く、何かを学習したいから、とりあえずどれかを学んでみようかという考えです。 ですがどの言語を学ぶべきかがわかりません、大学ではC言語を「明解C言語」の関数の範囲まで完了し、後期で残りをやる予定となっています。 また、二年次にJavaをやる予定です。 なのでJavaとC以外のどれかの言語を学ぼうと思っているのですが、C++やC#やCOBOLなど、種類も多く、どれも使い方が違い、どれを学ぶべきかで迷っています。 どの言語を学ぶにしても、C言語と混ざってC言語が使えなくなる、といったこともあるでしょうし・・・・どの言語を学ぶのがいいのでしょうか。

  • 信号処理とプログラミング

    信号処理とプログラミング こんにちは、私は大学3年生です。電気電子学科に所属しています。 通信の分野に興味があり、MATLABによる信号処理を学ぼうと思っています。 ただ、MATLABって別にプログラミング言語じゃないんですよね? 1,2年の頃は電気回路や電気磁気学といった理論の授業ばかりで、筆記さえできれば、プログラミング能力は必要とされていませんでした。 なので、言語についてはC言語しか知らず、ポインタって星印がつくやつでしょ程度の理解です。 仮にも通信分野に進もうとしている人間がプログラミング能力がこんなものでいいのかと不安に感じてきました。 なのでMATLABを学ぶと共にプログラミング言語もやろうとは思うのですが、フィルター処理や伝達関数や信号処理ってプログラミング言語でできるんですかね? もしやるとしたらC言語とJAVAのどっちがいいんですか? プログラミング言語で具体的にどんなことができるかよくわからないので質問しました。回答お願いします。

  • プログラミングと人間の思考に関する本

    普段思考するときにプログラミングの関数型を使用するような感じで思考するための枠組みを学びたいなぁと思っています。あるオブジェクト(概念の固まり)に関数を適用して望む結果を受け取る…、あるいはちょっと言語学寄りで動詞にオペレータを追加することで熟語動詞をつくってそれが拡張関数になってるとか…言語空間をブラウズする上での効率的な方法が知りたいです。そのような内容の本があれば教えていただきたいです。

  • プログラミング言語の使い分け

    当方、PerlとHSPを使って実際にプログラミングをしたことがあります。 Perlは今でも使っていますが、もちろんWindowsで動くアプリケーションには使用できません。 HSPは使い勝手が悪く、あまり使いたくありません。 そこで、新しく他の言語でプログラミングを始めようと思っています。 Visual Basic Visual C# Visual C++ これらの言語は機能面でどのように違うのか、プログラムの書き方(文法)はどう違うのかなどを教えてください。 (文法面はPerlと違って...Perlと同じで...というふうにPerlを交えていただければ理解しやすいと思います)

専門家に質問してみよう