• ベストアンサー

プログラミングのコツを教えてください

閲覧ありがとうございます。 私は今未経験でプログラミングの研修をしているのですが、わからない所だらけで調べて(大体解決しません...)人に質問してばかりです。 しかし、私と同じように未経験なのに進捗がすごく進んでいる方もいます(私よりも後に入ったのに...( ;´Д`))。 そこで質問です。プログラミングのできる方は、作業の際にどのような事をしているのでしょうか?私のような素人にプログラミングのコツを教えていただきたいです。回答よろしくお願いします。

  • Java
  • 回答数18
  • ありがとう数18

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

  • ベストアンサー
  • mitoneko
  • ベストアンサー率58% (469/798)
回答No.3

 おそろしく、個人差があるので、隣の人と自分を比較しない方が良いですよ。  良く、数学的な素養とかいう表現がありますが、論理的に手順を分解できるかどうか言う訓練がちゃんと出来ているかどうかで全然違ってきますから。  プログラミングのコツなんて、即効薬はなかなかないもので、地道に思考能力を鍛えていくしか無いです。  さて、研修の内容をそのまま家に帰ってまでやっても面白くないでしょう。人は、面白いと思えないと、のめり込めませんから、  折角、書店でいろんな本を眺めているなら、研修の内容なんかお構いなしで、自分が面白いと感じる本を買って読んでみるのも一つの手です。出来れば、ちゃんとコンピュータに実際に入れて実行して見ること。さらに、その後で、少しでも良いから、「ここをこうしたらどうなるだろう?」という所を見つけて実際にやってみることです。  後は、そうですね。もし、書店にSBクリエイティブ刊行の数学ガール(結城 浩著)が見つけられるようなら、のんびりと読んでみると、頭の体操になります。このシリーズの内容の幹の部分の考え方は、まさに、今あなたが必要としてることだと思います。

augmydt
質問者

お礼

回答ありがとうございます! 本を買ってコンピュータに入れて実験してみますね(`・ω・´)数学ガールも読んでみます 回答ありがとうございます!

その他の回答 (17)

回答No.18

プログラミングはできるようになってしまうと 「できなかった頃」の悩みを忘れてしまいます! 講師や周りの人のトゲのある言葉は 無視した方があなたにメリットがあります! 自分もプログラミング未経験 で入社しました プログラミングの研修では 講師の話は早くて 何を言っているかわからないまま進むし 周りの同期の研修生たちは どんどんコードが書けてるし・・・ 毎回テストが出されるんですけど 自分は隣の人に教えてもらいながら 回答していました・・・ 最初の2週間くらいは 隣の人によく質問してたんですけど だんだん気まずくなってきますよね 「こいつ、クソ頭悪いんじゃ・・・?」 って思われるのが嫌で 質問もしないようにしていました 家に帰ってから インターネットや参考書を 調べ漁ってましたね、あの頃は 寝る前とか 「なんで自分だけこんなできないんだろう」 「やっぱ頭の出来が悪いのかな・・・」 なんて悩んでました 日に日にストレスも溜まっていって 朝、会社に行く前に吐いたこともあります 表現するなら、本当に「地獄」でした 最初は会社を辞めたら 再就職に苦労するだろうし・・・ なんて思って頑張ってたんですけど もう耐えきれなくて 「本気で会社を辞めよう」 と決心して、先輩に相談したんです 「プログラミングの勉強をいくらしても 研修に全くついていける気がしないんです。 このままだと、仕事で絶対に足手まといに なりますし、向いてないんだと思います」 こんな感じなことを言った気がします (昔の話なのでうろ覚えです) そしたら、私に個人指導という形で ある先輩を紹介してくれたんですね 今までは、周りの同期とか 講師にしか聞いてなかったんですけど 個人的に質問に答えてくれる先輩で ずっとその人に聞いてました 少しずつ研修もわかるようになってきて コードも書けるようになってきたんですよ 会ってから 2ヶ月くらい経った頃には ほぼ同期の人と並ぶレベルになってて (もしかすると少し上だったのかも) その先輩の意見を参考にしつつ 自分でサーバーを借りて Webで何か作ってみたんですね その時のサービスは お試しって感じだったんですけど それから、いろんな言語を吸収していって Web上でいろんなものを作って・・・ 今では、会社を辞めちゃいました ちょっと非道徳ですけどね 自分のスキル一つで 暮らしていけるようになったので いわゆる在宅ワーク状態です 何より、未経験で入社してしまって 会社を辞めにくい以上 誰か頼りにできる人を探してください 研修についていけなくて 誰から見ても落ちこぼれになって 周りの人のヒソヒソ声が気になるようになったり この先、仕事をしている時に先輩から 「お前、ほんと使えねえな」 と言われる こんな状態になってからでは モチベーションの修復が難しいです 私自身そうだったので プログラミング未経験で入社した人向けに 勉強法を紹介しています 勉強用の教材も作成し 無料でプレゼントしています 私でよければ サポートするのでご連絡ください

参考URL:
http://ameblo.jp/programming1208/entry-12157834033.html
augmydt
質問者

お礼

回答ありがとうございます!

回答No.17

セキュリティーの問題で(Webでの) Java アプレットは敷居が高くなりすぎてしまいました(それならアンドロイド Java の方が敷居が低いくらいです)。 もし、将来的にホーム・ページとかの作成を考えているのなら、Java ではなくJavaScript が必要になると思います。 下記は僕が作った JavaScript のサンプルです。 CheckQuestion031 http://ashtarte.hotcom-web.com/utf8/smt.cgi?r+sara/&bid+00000020&tsn+00000039&bts+2016/05/01%2012%3A11%3A41& TabSelector005 http://ashtarte.hotcom-web.com/utf8/smt.cgi?r+sara/&bid+0000001C&tsn+0000001C&bts+2016/05/01%2000%3A20%3A15& MyPicture http://ashtarte.hotcom-web.com/museum/mypicture/

augmydt
質問者

お礼

回答ありがとうございます!

回答No.16

> 意味分からんでもコツコツ書け 僕としては意味を理解しながらコツコツ書けです(フレーム・ワークなどを使う場合は(フレーム・ワーク自体の)意味は分からんでも おkです) 重要なので2度書きます(笑) 大工になりたい人が本ばかり読んでいても技術が上達しないのと同様に、プログラマーはプログラムを組まなければ上達しません。 プログラミングの研修以外に、自分の作りたいプログラムを作って見ましょう(これこそ正にプログラミングの勉強です)、ただし自分の作りたいプログラムに熱中しすぎると学校の成績が下がるかもしれません。 > プログラムをイメージする (1).大まかなフローをイメージしましょう(このレベルではフローチャートは必要ありません)。 (2).それより少し細かい、肝となる処理のフローをイメージしましょう。 イメージできない場合はフローチャートを書きましょう(イメージできるならフローチャートは必要ありません)。 書き直しで1枚の紙に収まらなくなったら、ハサミとテープで切り貼りしましょう、フローで他のページに飛ぶ場合はページ番号とフローの番号を書いときましょう(2ページ目に飛ぶ場合は「P2:X」みたいな感じで)、ページ番号は連番である必要はありません(2ページ目に1枚追加したらページ番号を「P2.2」みたいにするとか、既に「P2.2」、「P2.3」が存在して、その間に追加したいなら「P2.2.2」みたいにするとか。 授業でフローチャートを提出する場合はチャント清書しましょう。 (3).最後にソースの打ち込み。

augmydt
質問者

お礼

回答ありがとうございます!

  • Wap58
  • ベストアンサー率33% (29/87)
回答No.15

JAVAカテゴリーなのでオブジェクト指向に例えます 目的は「プログラミングのコツを教える」です ルートクラスは暗黙な、言語入出力があります 継承したサブクラスには抽象化された質問者さんの思考 質問者さんのサブクラスは将来拡張されるでしょう 答えを得るにはまずプロパティで言語などを指定します 提供されたメゾット(考え方)を憶測して演算を送ります 実際、質問される内容からしか送る内容も判断できません 関数部分だけで通用するか、ルートクラスまでさかのぼるか 今、送れるメゾットは「意味分からんでもコツコツ書け」そんで ハチャメチャなソースで分からん、動かんで頭グチャグチャなら 具体的にネットに提示すれば、おそらく最速でサブクラスから return(解答)が得られて閃きや気づきで自身も拡張できます これがオブジェクト指向の趣旨に合ってるのか知らない

augmydt
質問者

お礼

回答ありがとうございます!

回答No.14

> プログラムの見通しも良くなりました。 プログラムの見通しが良いと言うのは、新しい機能を追加する場合など割と重要な要素です。

augmydt
質問者

お礼

回答ありがとうございます!

回答No.13

>> また、ご自身の犯したミスを修正したことに自信をもっているようですが、全て設計ミスです。これは、上流工程のミスでM/UTレベルでこんなミスを犯したらただではすみません。 > 構造化できなかったと言う事であり、正常に動かなかったと言う事ではありません。 > (構造化できなかったので)当然、自由度に制限はありましたが、実質的には その部分は固定的な処理なので その自由度は特に必要ないモノでした。 後で簡単に構造化できました、それによってプログラムの見通しも良くなりました。

augmydt
質問者

お礼

回答ありがとうございます!

回答No.12

> なぜ、私が非難されるのかわからないのですが、"人を馬鹿にする"といったところに反応したのでしょうか? 別に非難ではありません、どうしても問題があるのなら、それは言ったほうが良い場合もあると言う事です。 > 他人のコードを読むのが苦手と言っておりますが、これはSE、PGとして仕事をする上で致命的な欠陥です。 それは自覚してます。 > また、ご自身の犯したミスを修正したことに自信をもっているようですが、全て設計ミスです。これは、上流工程のミスでM/UTレベルでこんなミスを犯したらただではすみません。 構造化できなかったと言う事であり、正常に動かなかったと言う事ではありません。 (構造化できなかったので)当然、自由度に制限はありましたが、実質的には その部分は固定的な処理なので その自由度は特に必要ないモノでした。

augmydt
質問者

お礼

回答ありがとうございます!

noname#223464
noname#223464
回答No.11

>amanojaku1 様 なぜ、私が非難されるのかわからないのですが、"人を馬鹿にする"といったところに反応したのでしょうか? 大変失礼ですが、あなたの回答には全く興味が湧かなかったため、ほとんど読んでおりませんでした。 また、私の回答は"仕事"で悩んでいる質問者さんへ向けたもので、個人の趣味でプログラムをしている人にむけたものではありませんことをご理解下さい。 個人の趣味でといった理由を書きます。まず、他人のコードを読むのが苦手と言っておりますが、これはSE、PGとして仕事をする上で致命的な欠陥です。また、ご自身の犯したミスを修正したことに自信をもっているようですが、全て設計ミスです。これは、上流工程のミスでM/UTレベルでこんなミスを犯したらただではすみません。このようなことを平気で言ってしまうあたりから判断させて頂きました。 違っていたらすいません。一応、謝っておきます。 >質問者様 想定外でしたが、これがいわゆる"人を馬鹿にする"人の意見の良い例です。 どれだけ視野が狭いかご理解頂けたら幸いです。 また、荒らすつもりは全く無かったのですが、結果的に荒らしてしまい申し訳ございません。 私のことは運営に報告していただいて構いません。 大変ご迷惑をおかけ致しました。

augmydt
質問者

お礼

回答ありがとうございます!

回答No.10

> 3.ロジックに正解は無い。他人の力量、ロジックを批判したり、馬鹿にする人間が言うことは一番参考にしてはいけない。 言いたいことは なんとなく分かりますが。 まず、構造化してないと(いわゆるスパゲッティーだと)、(天才は別として)作った本人でさえデバッグが困難になる。 クラスを使えばオブジェクト指向になると勘違いしている人がいるが、クラスを使ってもオブジェクト指向になっていなければ、それはオブジェクト指向とは呼べない(なぜならオブジェクト指向のメリットを享受できないから)。 > 構造化してないと(いわゆるスパゲッティーだと)、(天才は別として)作った本人でさえデバッグが困難になる。 僕のスキルではチャント構造化できなかった事はありますが、それでも後から構造化しやすいように作って対処しました。 作ってからなら構造化のイメージはしやすいので、(後から構造化しやすいように作ってあったので)簡単な修正で構造化できました。 教訓:どうしても構造化がイメージできない場合は、後から構造化しやすいように作っておきましょう(作ってからなら構造化のイメージはしやすい)。

augmydt
質問者

お礼

回答ありがとうございます!

回答No.9

> 3.ロジックに正解は無い。他人の力量、ロジックを批判したり、馬鹿にする人間が言うことは一番参考にしてはいけない。 言いたいことは なんとなく分かりますが。 まず、構造化してないと(いわゆるスパゲッティーだと)、(天才は別として)作った本人でさえデバッグが困難になる。 クラスを使えばオブジェクト指向になると勘違いしている人がいるが、クラスを使ってもオブジェクト指向になっていなければ、それはオブジェクト指向とは呼べない(なぜならオブジェクト指向のメリットを享受できないから)。

augmydt
質問者

お礼

回答ありがとうございます!

関連するQ&A

  • 仕事をさせるコツ

    初めまして、ちょっと悩んでることがあるので質問させていただきます 私は現在、人を集めてゲームを制作しようとしています。 みんなで集まってやれる場所がないので、それぞれに仕事を振って週に一度、 進捗報告をさせるというスタンスをとっています。 個々の能力は高くて助かるのですが、チームの一部に漂っている雰囲気が 「進捗報告会までにやればいい」といった感じになってしまっているのではと思うことがあります。 というのも、その日までに定めた進捗はこなしてくれることが多いのですが、 (こなしてこないこともありますが) それ以上のことをしようとしてくれたことはないのです。 進捗報告会で初めて見せるのではなく、何度か見せてもらってその都度手直しして進捗報告会で完成版!とすれば効率も良くなるはずなのですが・・ 現在は 進捗報告会で見せる ↓ ここだけ直してね ↓ 次の進捗報告会で修正版を見せてもらえる あまりかかるように思えない作業でも、このようにこの会議の前にあわててやっているのではないのかと思う節があります。 「提示されたやつはこんな感じで終わったんですが、次の作業でなにかやることはありますか?」 というレベルまでみんなのモチベーションを上昇させるにはどうしたらよいのでしょうか? 参考になるサイトや書籍、指示することのコツでも回答いただければ幸いです。 自分ひとりだけモチベーションが高くて失敗してしまった経験もあるので、 自分のモチベーションに任せてどんどん他人のケツを叩いていくというやり方には少し不安を感じています。

  • プログラマーの方にお聞きしたいことがあります

    閲覧ありがとうございます。プログラマーになっておよそ1ヶ月の者です。 今の現場で進捗通りに作業が進まなくて困っています。 「他の人がコミットしたのを見れば似たような機能あるから大体わかるよ」と言われたのですが、その通りに入力したらエラーが出たりと進捗が進まないのです。 今までは他人のソースを真似しながら、やってきました。しかし、実装が完了して、コードテストの段階で引っかかってしまいます。 ここで、「どうしようか」ということで、二つのことで迷っています。 (1)進捗を改善するためにひたすら他人がコミットしたソースをコピペする。 →進捗は改善するが、長い目で見てそれでプログラミングが身につくか? (2)他人がコミットしたソースを見て「これがどういう事を意味しているのか」理解、or理解できないなら質問して作業をすすめる →進捗が遅れてしまうが、バグが出た際に対応しやすいかもしれない。土台が(1)よりも固まっているので 理想としては(1)と(2)の長所を兼ね備えているのがベストなのですが。。アドバイスをよろしくお願いいたします。 また、同じ現場の先輩方はコピペをしているような速さでコードを書いているので凄いなと思います(´・ω・`)ふえーん

  • プログラマー 進捗

    閲覧ありがとうございます。プログラマーになって1ヶ月の者です。 今の現場で進捗通りにいかなくて困っています。 「他の人がコミットしたのを見れば似たような機能あるから大体わかるよ」と言われたのですが、その通りに入力したらエラーが出たりと進捗が進まないのです。 今までは他人のソースを真似しながら、やってきました。しかし、実装が完了して、コードテストの段階で引っかかってしまいます。 ここで、「どうしようか」ということで、二つのことで迷っています。 (1)進捗を改善するためにひたすら他人がコミットしたソースをコピペする。 →進捗は改善するが、長い目で見てそれでプログラミングが身につくか? (2)他人がコミットしたソースを見て「これがどういう事を意味しているのか」理解、or理解できないなら質問して作業をすすめる →進捗が遅れてしまうが、バグが出た際に対応しやすいかもしれない。土台が(1)よりも固まっているので 理想としては(1)と(2)の長所を兼ね備えているのがベストなのですが。。アドバイスをよろしくお願いいたします。

  • マルチタスクプログラミング

    マルチタスクプログラミング ド素人な質問ですみません、マルチタスクを意識したプログラミングをC言語で実現するにはどうしたらよいのでしょうか? 自前のHPにあるデータ数十万件をバッチを組んでデータの移行を考えていますが、その移行方法として工夫無しですと理論値で半年かかることがわかり、何とか移行時間を縮められないかなと考えている中、マルチタスクでプログラミングしてみたらどうかな?と思ったのが始まりです。 C言語の経験は大学で習った程度(なんとなくポインタが分かる程度)ですが、具体的な方法など教えていただければと思ってます。 また、ほかにもっとこっちのほうがいいとかありましたらご教授ください。

  • たとえばオークションのプログラミング

     コンピューターの素人ですが質問があります。  たとえばヤフーのオークションを一人でプログラミングする場合、どれほどの時間や日数がかかるのでしょうか。  条件は、オークションの構想、スタイルなどの必要事項がすべて決まって、あとはプログラムとして打ち込むのみという場合とします。  大体で結構ですのでよろしくお願いいたします。

  • プログラミングの本当の初心者は・・・

    プログラミングのまったくの初心者です。 このような質問は多いと思いますが、是非経験者の方の意見を聞かせてください。 興味を持ったのは仕事で使えると便利なことが多く是非やってみたいと思いました。 しかし、まったくの素人、そして年齢的にも40歳です。 こんな私が始めるためにはどのようにしたらよいでしょうか? また、言語がたーくさんありますがまずどこから始めたらよいのでしょうか? 個人的にはRubyがいいと詳しい人からは聞きますが素人には無理なのでしょうか? ちなみに仕事では解析業務等を行いたいと思っております。 皆さんの貴重な意見をどうか聞かせてください。

  • なかなかプログラミングができない

    文系大卒30歳、4年ネットワークエンジニアとして働き、SEを目指して3年大手SI屋でSEとして働きました。 大手SI屋ではプログラミングは協力会社さんに委ねることが多く、すでに社会人5年目だった私はプログラマとして即戦力にならないため、最初の1年はマニュアル作成やドキュメント作成が主な仕事でした。結局プログラミングすることもほとんどなく、そのうち小規模のサブプロジェクトリーダーなどをやったり、提案活動をさせられたりしてました。 プログラミング経験のないままこういう仕事をすることに限界を感じ、小さなSI屋に転職して半年になります。小さいながらプライマリで仕事を受けている会社ですが、プライマリで仕事を受けているとドキュメント作業などプログラミング以外の仕事がやはり多く、なかなかプログラミングができません。 プログラミングをしたければ、やはりSI屋から仕事を請けるような小さな会社に転職したほうがよいのでしょうか? もうSE業界に来て4年になろうとしているのに、未だプログラミングができない自分にいらだっています。。。

  • 初歩からのプログラミングの勉強について

    5月から某企業でSEになる為に働く者です。 厳密にはその企業がSE・PGを育成する子会社を設立しており、 その子会社に採用を頂き5月からまずアルバイトとして研修を受ける事になっています。 私は現在24歳。今まで社会人経験はありません。 高・短大と工業の電気化におりましたので多少勉強してはいたのですが、 当時PCに興味がなく苦手意識があった事から、また学業を離れて長かった事から プログラミング経験などは素人と思って頂いて構いません。 もちろん研修で1から学んでいくのですが、研修中も随時試験などを行いついていけない 人間は足切りされて行きます。まだ研修まで時間がありますので今のうちに独学で勉強したいと思っています。 そこで勉強する為のテキストなのですが、初心者からでも分かり易く覚え易いものを探しています。 なにかいいテキストがあれば教えて頂きたいと思います。 ちなみに研修ではC言語→C++言語→VC++で学んでいくようです。 また社会人としてのマナーも身に付けたいと思っております。 こちらも同じく良い書籍などがあれば紹介して頂きたいです。 よろしくお願いします。

  • ネットワークプログラミングについて

    C言語のネットワークプログラミングについて質問です。 UDPで通信を行う際に、daytimeクライアントとサーバの変更する必要がある所はどこになるのでしょうか?  また、どのようなヘッダや関数になるのでしょうか?

  • プログラミングの学習方法を教えてください。

    ご閲覧ありがとうございます。 23歳学生です。 現在、ソフトウェア開発に興味をもっています。 ですが、全くの素人ですので、何から手をつけて学んでいけばよいのか分からず困っています。 情報技術の知識レベルは中小企業診断士の学習がきっかけで、以下のことを学びました。 1)ハードウェア、ソフトウェアの基礎 2)ファイル、データーベースの概要 3)通信ネットワークの基礎 4)システム開発の手法 5)その他 しかし、実用的なプログラミングや開発に関して全くわからずじまいで、プログラミング=ソフトウェア開発?といった具合です。 ソフトウェア開発の技術者の方は、どのようにプログラミングをスタートをされたのでしょうか? 目標は、最終的には「オリジナルの家計簿ソフト」を作りたいと考えています。 経験談、書籍、URL等何でも結構ですので、一から学べるアドバイスをよろしくお願いいたします。

専門家に質問してみよう