- ベストアンサー
プログラミングが出来る人
私は、プログラミングを始めて1か月ほどです。 基礎的なことを覚えて、プログラミングコンテストの問題をやっているのですが、 途中から全く進まずに、数日頭を抱えています。 プログラミングが出来る人は、そういった経験をしたときにどう乗り切ったのでしょうか? 自分の実力がないのでしょうか? よろしくお願いします。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
1つの言語をそれなりに使えるようになるまで、簡単な言語で半年くらい、オブジェクト指向言語となれば、2,3年は普通かかるでしょう。それも、毎日4,5時間くらい言語に触っていてね。 1ヶ月でできるようには、まずなりませんね。 小学1年生が入学して1ヶ月ほどで、「2次方程式が全く分りません!」って言っているようなものですね。 >>プログラミングが出来る人は、そういった経験をしたときにどう乗り切ったのでしょうか? うーん、プログラムが作れる人は、自分の実力の範囲+αで作れるプログラムしか作らないでしょう。 テストで、バグがなかなか取れないってことはあるかもしれませんが、作成で全く進まないってことはないと思う。 他人が作った難しくて巨大なプログラムの解読が必要な場合は、根気よくひたすらソースコードを読んだり、関連する分野の専門書で勉強するってことになりますね。 場合によっては、対象のシステムを解読するのに半年とか1年がかりってこともあります。
その他の回答 (6)
- titokani
- ベストアンサー率19% (341/1726)
こんにちは。 プログラミングコンテスト云々はとりあえず置いておいて、基礎の次の段階ということですね。 具体的な何かを作るという話になると思いますが、それにはまず、その対象をとことん細かく分析、解析するということが必要です。 とことん分割していけば、基礎で学んだところにたどり着くはずです。 たどり着かなかったら、まだ分割が甘いか、勉強が足りない。 あるいは目的によっては専門的な勉強が必要になる場合もあります。 例えば顔認証をしたいという話であれば、自分の頭だけで考えるのは無茶なので、専門の文献や論文などをあたる必要があるでしょう。 プログラミングコンテストのサイトも見てみましたが、わりと漠然としたテーマなので、 まずはどんなものを作るのかを明確にして、それを自分で実現可能な程度にまで分析、解析して、分割していくというのが基礎の次のステップにつながると思います。
お礼
ありがとうございます。 基礎で学んだことが、まだ活かしきれていない場面も多数ありましたので、今基礎の復讐をしています。 定着がしてきたら、またレベルを上げたいと思います。
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)
今から40年前に初めてプログラムとやらを知りました。 10 INPUT A, B 20 C = A + B 30 PRINT C 最初に知ったのはこの3行。岩波講座「情報科学全24巻」の初回配本(プログラム入門)の冒頭のそれです。私は、「CとA+B」とがなーんで等しいのだろうとの疑問にぶつかって一ヶ月の立ち往生。結局、手持ちのパソコンの設計書を入手し、それが処理される仕組みの解析に没頭すること二ヶ月。その後、「Fortran演習」の全問をやりきり、また、「情報科学全24巻」を読破することで、「ウン、俺でもプログラムできそうだ!」と思ったのはパソコンの電源を入れてから8ヶ月後。そうして、日本で初めてCAD、CAMの電子タイプライタをPCに置き換えたのは、更に、その一年後。 >そういった経験をしたときにどう乗り切ったのでしょうか? 「Fortran演習」や情報科学全24巻」の例題を解くことに夢中になって気が付けば朝が来ていたなんてのは珍しくはなかったですね。で、そのまま一睡もしないで出勤していましたよ。要は、プログラミング能力を獲得するには学習時間の量を圧倒的に増やすことです。 理工系でもなく、また、周辺にプログラム経験者が皆無という状況の中で独習を進めるのは、一にともかくPCが好きであること、二に学習量を蓄積することが苦にならないこと、三に己の能力を開発することに喜びを見出す性格であること。 頑張って下さい。
お礼
知識を覚えていくのが、好きなのでプログラミングに興味を持ちました。 自分のシステムが、世の中の役に立つものができればと思っています。
- mk48a
- ベストアンサー率56% (1133/2007)
プログラミングって言語覚えるだけじゃないんですよね。 数学やアルゴリズムの勉強もしないとたいしたものは作れないです。 一ヶ月でプログラミングコンテストの問題は早すぎでしょう。 回答例があるならそれを見てみて理解できるかどうか確認してみると良いです。 プログラミングコンテストの経験談を書いているページがあったので見てみてください。 http://wtkw.net/tech-blog/?p=62 多くの手法が必要なのがわかると思います。 基礎的な文法が問題ないなら中級者用のアルゴリズムの本などで勉強することをお勧めします。 自分の作成したいプログラムがある場合はどの方面の知識を学ぶべきかわかってくるかと。 あと、自分では回答はわからないけれども回答例がある場合はさっさと回答例を見て理解するようにした方が早いです。 代表的なアルゴリズムが使用できる問題を我流で解決しても上達しません。 それでオライリーなんかの本を読んで勉強するのですが、書籍代がすごいことに・・・。となる人が多々います。
お礼
アルゴリズムの本も、勉強しているのですが、それもなかなか進まずにいます。 回答例をさっさと見るほうがいいのですか? いつも、ずっと悩んで調べていました。
- _backyarD
- ベストアンサー率34% (199/580)
焦りすぎですね。既に出来る人達が、いつ頃から興味を持って、今に至るまでどれくらい時間が掛かっているか、もし機会があれば聞いてみてはいかがですか? ちなみに私は最初に興味を持ってパソコンなるものに触れてから、30年以上経過しています。仕事の中で若手さん達からそれなりに経験者として見てもらってますが、その背後には30年以上続けてきたという実績があります。そこまでは行かなくても、多分ある程度やっている人だと3年、5年くらいは「好きで、コンピューターに触れる」という事を地道に続けていると思いますよ。 焦らず、じっくりと楽しみながら覚えていってください。
お礼
ありがとうございます。 再就職するために、技術を習得しないと面接ができないところが多く、焦っていました。 じっくり楽しみながら覚えていきます。
- hiodraiu
- ベストアンサー率15% (451/2846)
「プログラミングコンテストの問題」というものが、どのレベルのものかは知りません。1ヶ月では難しいものなのかもしれないですね。 ただ、プログラムを習得するにあたって問題を解いて行くなんてやり方は、やったことないですし、聞かないやり方なので、そもそも、その方法自体がプログラムを習得するに有効なのかも怪しい気がします。 > 自分の実力がないのでしょうか? 1ヶ月じゃ普通は実力はない筈です。それよりやり方を見直してみては如何ですか。
- nan93850673
- ベストアンサー率32% (179/553)
ほんの一月程度で、コンテストの問題ですか。 例えると、サッカースクールに入ったばかりの小学生がJリーガーに勝負を挑むようなもので、歯が立たないのも当たり前ですよ。 >プログラミングが出来る人は、そういった経験をしたときにどう乗り切ったのでしょうか? 地道に地力を鍛えるだけです。
お礼
ありがとうございます。 地道に鍛えるだけですよね。 プログラミングの基礎を覚えたら、 どのようなことにシフトしていくのがいいのでしょうか?
お礼
自分の実力を再就職にアピールするのに、 プログラミングコンテストの問題が少し解けることを アピールポイントにしようと考えていました。 ありがとうございます。 少し気が楽になりました。