• 締切済み

なにアドバイスを・・・  参っています。

27歳にして、他業種からIT業界にPGとして転職しました。(java) 独学で勉強した程度では殆ど力は発揮されず、実務は難しく大変です。 今、あるプロジェクトにOJTで参加させていただいていますが、 わからなくて、1つのプログラムを永遠とやっている状態です。 出来る方からすると、なんでこんな簡単なものも出来ないの?と思われるようなものも、僕にはわからないのです。それは多分、その今携わっているプログラムをよく理解できていないからだと思います。 なんとなく、このような流れになっているんだなとはイメージは出来ているんですが、ハッキリとわかっていないために、簡単にソースコードを追加したり、少し編集すればいいのにそれもうまく出来ません。 プログラム自体には嫌気をさしたり、もうプログラムなんてやりたくないといった気持ちはないので、その辺は大丈夫ですし、頑張って出来るようになりたいし、先輩に怒られたけど、早く出来るようになって見返してやりたいといった気持ちもあります。だから頑張る気持ちはすごくあります。 よくプログラマとしての適正といいますが、自分自身、適正があると言えるかはわかりませんが、無いとは思っていません。必ず頑張れば出来ると思っています。 そして、その為にはいろいろと努力しなければなりません。 こんな未経験な自分に普段どのようなこと(勉強等)をすればいいのでしょうか? 例えば、こんな雑誌を読むだけでもいいとか、帰宅して10分でもいいからこんなことをしたらいいとか、このサイトを少しでも眺めるとか、こんなメールマガジンがお勧めとか、こんな勉強したらどうかとか. いろいろあると思いますが、何かアドバイスがほしいです。 出来ない自分にいらだちや悔しさ、会社の周りの皆さんへの迷惑などいろんなとこを思って、精神的結構参っています。 何かアドバイスがほしいです、 どうかよろしくお願いします。

みんなの回答

noname#13675
noname#13675
回答No.4

こんにちは、 すでにいろんな人がアドバイスされているので、指摘されていない点だけを書きます。ハズレかも知れません。 プログラミングを教えていて、言語仕様はほとんどの方が理解してもらえます。脱落が多いのは、「アルゴリズム」です。 仕様書は基本的なアルゴリズムは認識しているもの、ということで書かれていますから、仕様書を見て、どういう風に書くかアルゴリズムを組み立てるのはプログラマーにまかされています。 遠い昔は、アルゴリズムを補完するためにフローチャートというものを書いていましたが、めんどくさいのと構造化プログラミングのおかげで、どうとでも書けるフローチャートはすたれてます。 簡単なプログラムといっても、if文ひとつない、というものはないと思います。ハズレかも知れませんが、アルゴリズムの組み立て方は大丈夫でしょうか?これできないと、先はないです。 WEB見ていたら、参考URLみたいなものがありました。

参考URL:
http://www.forest.impress.co.jp/article/2005/08/08/madota121.html
  • atnk08
  • ベストアンサー率13% (3/23)
回答No.3

まず、今渡されている仕様書をきちんと理解することが可能でしょうか?。 また、プログラムインターフェース(外部仕様)把握されてますか?。 言語は何であれ、インプット→処理→アプトプット(または戻る)が、プログラムモジュールの基本かと。 そこを、整理することが、肝心だと思います。 それを理解していたなら、どんな廻りくどいやり方でもプログラムは動くものです。しかし、言語の知識・振る舞いも理解不足だとうまくいきません。 したがって、今目の前にあることに集中すべきかと思います。

  • DIGAMMA
  • ベストアンサー率44% (620/1404)
回答No.2

こんにちは、 JAVAも含めて、C言語系ならば、「演算子」を まず、把握してください。 「1+1」は誰でも2だと知ってますが、 「1>1」は幾つか判らない方がおります。「>」は演算子ではない!という方もおりますが大間違いです。(答えは0です) 次に、演算子の優先順位。 「(1+2)*3」の()が、優先順位の一番高い演算子だと思っている方がおりますが、これも大間違いです。上記の()は演算子ではありません。 優先順位の一番は関数を意味する()です。 上記の様な基本を忘れているならば、もう一度、しっかり把握してください。  何も、新しいサイトや本を探す必要はありません。 貴方が始めてJAVAを覚えた時に使った本を、もう一度、最初から最後まで、見落としている点はないか、理解しないで読み飛ばした点はないかを注意しながら一時一句、読み直すのが先です。  そうすれば、本当は何がわからないのかが、はっきりします。それが判ったら、またここに来てください。  御参考になれば幸いです。

  • g_nekoru
  • ベストアンサー率34% (30/88)
回答No.1

個人的な見解ですが、プログラム作成の重要度として単純にまとめると 仕様の確定 : 3 プログラム  : 1 テスト     : 6 と言った割合だと思っています。 仕様をしっかり理解し流れを考えるのが大切です。 流れさえしっかりしていれば言語に関係なく後はパズルのピースをはめて行く様にプログラミングできるようになると思います。 mstkさんの会社では仕様書や流れ図を作成しているでしょうか? きちんと流れをつかめば何処に処理を追加するか何処を直すかが判ってくると思います。 まずは、流れ図を書いて何度も見直すのがいいかと思います。 一度流れ図を書いても何度も見直しているうちにここはこうした方がいいかもしれないと言うのが見えてきたりする事もあり見直すことで流れをより理解できるようになります。 プログラムのそれぞれの言語の命令や書き方は国語や英語の文法の様なものなので数をこなして行くうちに自然と身に付いてくると思います。 それと、人の作ったプログラムを理解するだけでもかなり勉強になります。 会社で過去のプログラムを見せてもらえるのであればそれを見て解読して行くのもいいと思います。 OJTで参加と言う事で今は訓練中なのですから、間違って怒られるのも仕事のうちと考え仕事の成功よりも自分の成長を第一に考えてよいと思います。 今は周りの人に迷惑をかけてもそれがいずれは会社や周りの人の力になります。

関連するQ&A