• ベストアンサー

新米プログラマの相談:理解に時間がかかる。いい方法はありませんか?

未経験からプログラマに採用され、C言語の研修を受けていますが、理解するのに時間がかかります。 例えば、他の研修生が3時間で終わる課題が、私は6時間かかる…といった具合です(もっとひどいかもしれません)。 まったく理解できないわけではないのです。 時間をかければわかるようになるんですが、 どうにも時間がかかりすぎて、いたたまれなくなりますし、こんなことで実務について大丈夫か?と心配です。 とはいっても、プログラミングが嫌いなわけでもないし、今のところは諦めるという選択は考えていません。何とか効率を上げて頑張って行きたいのですが、どうすればいいのやら。 お勧めの勉強方法、仕事の進め方、心構えなど、アドバイスをいただけないでしょうか。

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

  • ベストアンサー
  • likipon
  • ベストアンサー率38% (44/114)
回答No.4

おまじない的に原理を理解せずに色々覚えていく人よりも, その原理や意味, 意義を確認しながら覚えていく人のほうが後々で有利になると思います. C言語は, 数あるプログラミング言語の中でもコンピュータの ハードウェアに近いところにあります. ある意味で原始的なので, コンピュータの動作原理を絡めてきちんと理解してゆけば プログラム中の「おまじない」が減ってきてそれぞれの意味がわかるようになります. プログラムの設計手法には色々あり, いつかはそれらに触れることになると思います. しかし, 色々なものの動作原理を理解しないで小手先の手法にだけ飛びつくと, 迷信に振り回されることになって実務で恥ずかしい思いをするかもしれません. とりあえず, 今は時間がかかっても動作原理から着実に理解されていくのがよいでしょう. 原理がわかるようになれば, そのうち学習効率も作業効率も上がってゆくはずです.

0xo888ox0
質問者

お礼

おまじない的! そうですね、そういうところがあったかもしれません。 「何だかわからないが、とりあえずそういうものだと思っておこう」は危険ですね。 時間がかかっても動作原理を着実に、ですね。 ご回答ありがとうございました。

その他の回答 (7)

  • fx70_2150
  • ベストアンサー率57% (123/213)
回答No.8

 プロの書いたプログラムを読みまくって下さい。  プロの書いたプログラムを変更したり、肉付けをしてみたり、してみて下さい。  自分は、どんなプログラムを作成したいのか?  そのためには、どんな手法でプログラムを作成すればいいのか?  明確な目標を立てて下さい。  「どうしても、こうゆうものを作りたいんだ!」という意欲が最も大切です。

0xo888ox0
質問者

お礼

ハイレベルなご回答ありがとうございます。 これからの参考にさせて頂きたいと思います。

回答No.7

 どのような事でも最初は丸暗記しなければいけないことがあります。 その部分は無理に論理付けを行わずに丸暗記し、応用問題的に検討する部分と丸暗記しなければいけない部分を自分なりに整理しながら覚えれば良いと思います。 例. 変数Aと変数Bの中身を入れ替える。 X=A A=B B=X  これは考える余地のない例で丸暗記するしかないです( 適切な例かどうかは自信ありませんが・・・ )。

0xo888ox0
質問者

お礼

なるほど。 私は結構覚えれば済むことまで 考え込んでしまう性質かもしれません。 ご回答ありがとうございました。

noname#181803
noname#181803
回答No.6

業界カミングアウトの者なので、へんてこなこと書いてるかもしれないですが。(^^;) 一応、経験的に思ったことを投稿してみたいと思います。 >未経験からプログラマに採用され、C言語の研修を受けていますが、理解するのに時間がかかります。 ものすご~く基本的なことで申し訳ないのですが、御自身が理解できない(理解し難い)ところは理解できてますか? ちょっと変なこと書くかもしれないんですけど、自分が理解できないところが理解できないというパターンにハマッてしまうとなかなか効率は上がらないと思います。 理解しようとする前に、理解できない(又は、理解し難いこと)を、一度整理するという手順を踏んでみたらどうでしょうか? 逆に、遠回りになってしまうかもしれませんが・・・。(^^;;) >どうにも時間がかかりすぎて、いたたまれなくなりますし、こんなことで実務について大丈夫か?と心配です。 全く問題ありません。 どのような開発に携わるのか分からないので、推測になってしまいますが、実務を遂行する上で大事なのは、開発対象業務をきちんと理解できているかどうかだと思います。 例えば、物流業界のシステムを担当するとか、金融業界のシステムを担当するとか、社内システムを担当するとかだとすれば、 その企業が実際に行っている商売やニーズ、システムの構造、開発工程などが理解できているかどうかが重要になってくると思います。 まぁ、これはSE的な要素になってくると思うのですが、そもそもSEとPGの明確な区別はほとんどなく企業独自で区別してるというのが現状なので。 苦労する点に関してですが、開発環境が使ったことないとか、開発の工程とか、言語に関係ないとこで苦労する可能性の方が大きいと思います・・・。(^^;) >お勧めの勉強方法、仕事の進め方、心構えなど、アドバイスをいただけないでしょうか。 基本的にプログラミング言語はメモリをどう使うかになってきますし、ループとかポインタなど基本は同じようなパターンの使いまわしなので、やってるうちに理解できるようになると思います。 既にみなさん書かれていますが、言語云々じゃなくて設計手法を身につけることが大事。 「継続は力なり」ってことわざありますが、まさにこの言葉どおりだと思いますヨ。 あと、これはちょっとおせっかいかもしれないのですが、言語というものは手段であって、目的ではないという認識を持ってた方が良いかも。 例えば、文章作るのにWordを使うとすれば、"文章を作る"というのが目的で"Word"が手段ですよね。 同じように、あくまで"開発"が目的であって、"言語"というものは手段です。 "言語"が目的になってしまったら、学校で教わるのとなんら変わらないので。(^^;) 以上おせっかいでした。m(_ _)m ガンバって下さい!

0xo888ox0
質問者

お礼

>御自身が理解できない(理解し難い)ところは理解できてますか? それです!何かがわからないけど、何がわからないんだかわからなかったりするんです。。。じっくりテキストを読み直したら、基本的なところを勘違いしてたこともありました。 >実務を遂行する上で大事なのは、開発対象業務をきちんと理解できているかどうか プログラミング以外の面も重要だということなんですね。 丁寧に答えてくださって、ありがとうございました。

  • suseimei
  • ベストアンサー率35% (17/48)
回答No.5

> 未経験からプログラマに採用され、C言語の研修を受けていますが、 > 理解するのに時間がかかります。例えば、他の研修生が3時間で終わる > 課題が、私は6時間かかる… 具体性がないため、明確な回答を用意できません。ただ、この文面を読む限り、自然な結果だと思います。教え方が悪い、という面も否定できないと思います。 Cを設計したDennis Ritchie氏は、大切なのはコーディングではなくプログラム設計、と述べています。この意味を理解するには相当の時間がかかります。もしかすると、あなたは、コーディングは苦手でも、課題の理解はしっかりしているのかもしれません。少なくとも、課題の分析に時間をかけているのでしょう。 参考URLから公開されているCやC++などの設計者の考え方に触れてみるのも1つの手かと思います。完璧なプログラミング言語などありません。 あなたはまじめな方だと思います。視野を広げてください。大丈夫ですよ。

参考URL:
http://www.ttoyota.com/php/cppintro.php
0xo888ox0
質問者

お礼

ご回答ありがとうございます。リンク先、読んでみたいと思います。 私は現時点ではプログラマさんSEさんの知り合いがほとんどいないので、どのようなアドバイスでも頂けるとうれしいです。ありがとうございました。

  • linus1974
  • ベストアンサー率19% (71/370)
回答No.3

<補足要求> これだけではアドバイスのしようが ありません。具体的にどういう問題で どう苦慮しているのかを教えてください。

0xo888ox0
質問者

補足

説明不足で失礼しました。 困っていることというのは、専門的なことがわからないことではなく(それもありますが)、自分の力量のなさをどうカバーしていくかという精神的な部分です。精神的、というか頭の鍛え方を知りたいと思いました。

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

経験を積むにつれて自然と効率が上がっていくと思います。

0xo888ox0
質問者

お礼

経験を積むことで解決するなら、長い目で見てじっくりがんばりたいと思います。 ご回答ありがとうございました。

回答No.1

フローチャートをスラスラ理解して、スラスラ書くことができるようになれば、あとは全部応用です。 私もフローチャートを徹底的に勉強した事が役に立っていると思っています。 参考にやってみてはいかがでしょうか http://www.nikonet.or.jp/spring/sanae/program/flow/flow.htm 私の会社でも、未経験の新人を採用していますが、配属後の叩き上げでみんな一人前にできるようになります。 心配せずに頑張ってください。

0xo888ox0
質問者

お礼

やはりフローチャートは大事なんですね。まだループを真で抜けるか偽で抜けるか間違えてしまい、変なプログラミングをしてしまいます。 ありがとうございます。がんばります。

関連するQ&A

  • 未経験からOKのIT系プログラマー求人について

    名古屋市住在の25歳女です。 プログラマーの求人情報に未経験OKとよくありますが、 (1)言語やプログラミングの勉強をしたことがあるが実務未経験でもOK。 (2)プログラミング?言語って何?状態の業界未経験のド素人でもイチから育てます。 と2種類あるようで、私は後者の求人情報を探している者です。 「プログラマーになるには?」というような検索をすると、全くの素人でも採用され、入社後数ヶ月~1年の研修を経てプログラマーへなることが出来るという記事があるサイトを見て、そういった会社を探している段階です。 自分でも色々検索してみましたが、内容も2種類どちらなのか曖昧だったり、そして名古屋限定となるとなかなか見つかりませんでした。 後者のような素人を一から研修して下さる会社を知っている、もしくは面接を受けた、勤務している(いた)という方いらっしゃったら是非教えてほしいです。 ちなみに、PCスキルはWord・Excel・Dreamweaverを少し触ったことがある程度で、HTMLは多少理解できますが言語は全くわかりません。勉強して努力していくやる気だけはあります。 条件は、以下のとおりです。 ・名古屋市内で研修、勤務ができること。 ・未経験OK、素人OKであること。 ・一から学べる研修制度があること。 ・研修中も給料が出ること。 ・時短制度がある。(できれば) よろしくお願いします。

  • プログラマになるにはどうすれば良いのでしょう?

    プログラマになるにはどうすれば良いのでしょう? はじめまして、プログラマになりたい中学1年生です。 将来はソフトプログラマー(PCソフト系)になりたいと思います。 プログラミングの知識は全くありません。経験もありません。 (関係ないでしょうが、HTMLができるぐらいです) 今回質問したいのは....。 ・プログラマとはどういう職業なのか。 ・プログラマにはどのような種類があるのか(ゲームプログラマやソフトプログラマなど) (そして、その種類に属する人達は、主に何をやるのか) ・システムエンジニアとの違いは。 ・数学が苦手でもできるか。 ・プログラマに必要な知識・資格・心構え・道具はなにか。 ・プログラマの平均年収・月収は? ・C言語の活用法 などです。 ちなみに、高校は工業高校に進学したほうが良いのでしょうか? 大学はどのような学校にはいれば良いのでしょうか? やはり、C言語は覚えたほうが良いのでしょうか? 質問ばかりですいません。 どなたか、詳しい方、ご回答お願いします。

  • web プログラマ はどのプログラムを使えなければならないでしょうか

    未経験でも研修があるwebプログラマの仕事に興味があります。 webデザインはデザイナーが行う為、webプログラマでの求人 です。 この場合、覚えなければならないプログラム言語は何になりますか? 複数あると思うのですが、実務経験者のご教授お願いいたします。

  • プログラマー

    将来プログラマーを目指している15歳です。 そのために、高専に入学しました。 やはり初めのうちはプログラミングはやらずに情報系の勉強ばかりをしています。 自分的には開いた時間でプログラミングの勉強をしたいと思っています。 パソコンの知識はそこそこありますが、プログラミングに関しては全くの初心者です。 自分的にはC言語から始めてみようかなと思っています。 しかし、どんな勉強をすればいいのかが分かりません。 どのような勉強をすればいいか、またどんな本がオススメかを教えてください。 もう一度言いますが、全くの初心者です>< よろしくお願いします。

  • 働きながらプログラマーになるには

    SEやテスト・評価の仕事をしています。 プログラミングの知識は以前はなかったのですが、仕事で要求仕様書や画面遷移書、テストケース書類を日々見ると同時に、プログラマーがCCで入れてくるメールの内容を見ていたため(CやJava)、コンパイル、ビルド、などの仕組みを覚えていきました。 仕事でExcelのVBAは簡単なものは覚えていき、自分もなにか言語をもっと理解できるようになりたいと、スクールでJavaを身につけましたが、仕事はあいかわらず開発進行やテスト・評価をやっています。 この仕事とは別に、何年かかかってもよいのでJavaかVBAでの開発の仕事を受託でできるようになりたいのですが、ビギナーではプログラミングの仕事にありつける可能性は少ないとおもいます。新卒を企業がOJTからプログラマーに育てるコースに乗った方もいるようですが、新卒ではもうないので、それは望めません。 質問ですが、プログラミングをスクールや趣味からはじめて自分の仕事にもっていくには、どのような方法があるでしょうか。 もちろんコツコツいろいろプログラミング・スキルを身に続けるのは当然です。 JavaはSilver資格を受けたら実務経験ないのに受かってしまいました。

  • プログラマー 半年契約

    プログラマー 半年契約 自分はITやプログラミングといったものを職業にしようと思って勉強をしています。 それで今日東京の会社に面接に行ったのですが そこで言われた事が 「あなたの場合、未経験なので最初は自分にできそうなプロジェクト(実務未経験なのでExcelなどの表作成)などから初めて頂きたいと思っています。半年は契約社員として働いてもらって、それでこうゆうプログラムを作れたからこうゆう案件はできるんじゃない?とプロジェクトに配属が決まった時点で採用。そこからまた試用期間を半年行います。」と言われました。 そこで疑問なのですがやはりプログラマー(東京のある程度大きな企業)の場合 ・いきなり正社員じゃないのは当たり前なのでしょうか? ・契約社員として半年過ごしその半年というタイムリミットがある中である程度のプログラムを作れるのは普通でしょうか? ・やはり実務経験不問で入社し実務を着実にこなしていくのが良いでしょうか? ・プログラミングは自分でやって覚えるものですが9割は自分で覚え残り1割は相談とかいったことは甘いでしょうか? ・未経験でプログラマーとして入社する場合、色々な言語、色々な案件を扱う会社に入社するのと一つ(少なめ)の言語を狭く深く集中してできる実務につくという事、ケースバイケースだとは思いますがどちらが良いと思いますか? 25歳男性で実務経験はないのですが職業訓練校で半年間Webの職業訓練を受講していました。 休職活動はリクナビネクストで行いPHP、java、C、COBOLなど本当に様々な言語を扱う所に面接に行きました。 どこか誤字があったり意味の通じていないところがあったら申し訳有りません。 多少厳しめの回答で良いので貴重な回答募集致します。 すいませんがよろしくお願い申し上げます。

  • プログラマーに転職して2ヶ月目。かなり難しい課題を

    学生の頃2年間プログラミングの勉強をしてきました。 しかし、最初に就いた仕事はプログラミングが必要としない仕事で2年半働いてきました。 しかし、プログラミングをしたくて8月に転職し、研修期間もあります。 しかし、急に難しい課題を出されて困っています。 社内システムを作って欲しいと。 しかも研修中に勉強したての言語でかなり困っています…

  • プログラマー

    プログラマー、SEの方に質問です。(答えられる物だけで結構です) 要件定義が終わり実務(新規プロジェクトなど)をするに当たって、まず最初に考えることなどはありますか?(将棋や囲碁でいう定石、自分オリジナルなものなど) プログラマーやSEは気分転換とは無縁な職業でしょうか? (徹夜してコーディングをしたからといってアイデアが出るかといったらそうではなく 気分転換だけしていれば大丈夫かと言われればそうではないと思いますが) また実務以外にITプログラミングスクールに通うことに意味はないと思いますか? (実務 > 学校なので学校や参考書などで得た知識は実務では通用しないという意見もあると思いますがググって自分で勉強する以外にも他のIT従事者と実際に会話をすることによって解決の糸口が見つかるケースもあるのではないかと思っています。) 個人の主観が入ってしまい絶対的な意見はないと思いますが 今後、発達していく言語、環境。 逆に落ち込んでいくと予想される物があれば教えて頂けると嬉しいです。 この業界自分の実力が全てでしょうか?それとも仲間とうまく連携をとるコミュニケーション能力が重要でしょうか?(それ以外でも構いません) 話が逸れてしまいますがプログラミングを自動でしてくれるコーディングロボ(プログラマーいらずの人口知能(AI))は今後生まれると思いますか? 質問が多くなってしまったので答えられる範囲だけで構いません。 (全部答えなくて大丈夫です。) 厳しい意見くださった方がありがたいので 一番自分の意見と真逆の事を考えてる方にベストアンサー出します。

  • プログラマーの方に質問です

    プログラマーのかたに質問です。 定義はあいまいですが、皆さんは自分のやりたいプログラミングをできるようになるまでどのぐらい時間がかかりましたか??できれば言語も教えてください。

  • Javaプログラマーとして、生計を立てたいのですが・・・

    自分は電気工事10年間勤務・機械工7年間勤務の高卒の35歳の独身男性です。 趣味で、VBで簡単なプログラムをつくっていて、この歳になって、Java言語を本格的に習い、35歳で実務未経験でプログラマーの仕事に就きたいと行動しているのですが、まず、年齢で不採用になり、なおかつ、実務未経験っていうので40社ともみごとに不採用になりました・・・・でも・・・もしかしたら、景気がよくなったら、採用してもらえるのではないか?と希望をもってしまいます。勤務地は大阪・神戸で、アルバイトでもパートでも時給750円でもいいので、Javaプログラマーの経験を仕事をしながら積ませてほしいのですが・・・・どこもやとってくれません・・・もう駄目なんでしょうか?なにか解決策はないでしょうか?どうかどうか、教えてください。