プログラミングにコツってあるの?できない原因や学習のコツを分かりやすく解説!
  • facebookページ
  • twitterページ
  • 2018.10.11

    プログラミングにコツってあるの?できない原因や学習のコツを分かりやすく解説!

    プログラミングを覚えたてのころ。次の段階へ進もうとしたときに、はた、と手が止まってしまう。「自分にはプログラミングができないのではないだろうか」。そんな気持ちになってしまう瞬間が訪れることがあります。

    しかし、折角興味を持って勉強し始めたものを、「できないから」といって放り出してしまうのは非常にもったいないことです。ここでは、一般的に見られる「プログラミングができない」現象について、その原因の分析と対策の例をみてみましょう。

    プログラミングができない原因

    そもそも、「プログラミングができない」とは、どういう状態でしょうか。

    プログラムが思った通りに動かない

    いわゆる「バグ」がある状態なのに、どこにバグがあるのかわからない。「自分の書いたプログラムは正しいのに!」こんな思考に陥ってしまうことがあります。しかし、ほとんどの場合はプログラムが間違っているのが原因です。どんなベテランプログラマーでもバグは起こります。しかし、できるプログラマーほど、デバッグに力を入れます。自信を持ってプログラミングするのは大事ですが、落ち着いて少しだけ顧みる余裕を持ってみましょう。

    プログラムの書き方がわからない

    言語仕様のドキュメントも読んだ、文法もバッチリ覚えた、でも今実現したい機能をどう書いたらいいかわからず、途方に暮れてしまった…プログラムを一気に書き上げようとするとこういった事象に遭遇しがちです。こんなときはプログラムの機能を徐々に分割していきましょう。「この機能を実現するためには何をしなければならないか」を考えて更に「分割された機能を実現するためには何をしなければならないか」を考えて、更に分割を繰り返して。そのうち、1行のコードで実現できるところまで分割されれば、あとはそれをタイピングしていくだけです。

    プログラムの意味がわからない

    プログラムというものがどんなものなのかは理解したのだけれど、英語みたいだし(英語は苦手だし)、計算してるし(数学も苦手だし)。確かにそうなのですが、英語といっても殆ど単語でしかありませんし、計算といっても基本は四則演算程度です。参考書も多数出版されていますし、インターネットで調べることも可能です。学校の試験ではありませんので、カンニングも咎められません(もちろん、他人の書いたプログラムを自分のものと主張するのは違法ですが)。一つ一つ落ち着いてプログラムを辿ってみると、意外とわかってくることが多いですよ!

    プログラミング学習のコツ

    では、どうやったら「プログラミングできる」ようになるのでしょうか。

    目標・目的を明確に

    いつ、どこで、誰が、何のために、どのように使うプログラムなのかを意識して、どういうプログラムにするか、つまりプログラムの仕様を決めましょう。プログラミングしていくうちに仕様に誤りや疑問が発生してくるかもしれませんが、その場合には一旦プログラミングを止めて仕様を検討し直しましょう。

    いつまでに達成したいのか期限を明確に

    仕事としてプログラミングするのであれば、もちろん納期が発生します。仕事でなくとも、実際に使用するタイミングに間に合わなくては意味がありません。しかし、期限に間に合わせるためにいい加減なプログラムを作るわけにはいきませんし、そのために毎日徹夜してボロボロの身体になってしまうのでは本末転倒です。仕様と併せて無理のないスケジュールを立て、日々進捗状況を管理し、場合によっては仕様・スケジュールの見直しも検討しましょう。

    暗記しようとしない

    参考書やテキストを隅から隅まで読解しても、実際のプログラミングが完璧にできるようになるわけではありません。机上や電車の中で参考書を読むのも必要かもしれませんが、それよりは少しづつでも実際にプログラミングをしてみて、わからなくなったら参考書やインターネットに頼ってみましょう。「習うより慣れろ」です。

    最初からすべてを理解しようとしない

    どんなスーパープログラマーでも最初からスーパープログラマーだったわけではありません。皆、挑戦と失敗を繰り返して徐々に「プログラミングができる」ようになっているのです。仕様でもプログラムでも、自分の理解できる言葉に噛み砕いてみましょう。そして、自分で理解できた部分から全体へと範囲を広げ、全体へ広がったら細かい部分に矛盾がないかを確認していきましょう。そのうちに、自分の理解できる範囲や言葉が広がっていることに気づくことでしょう。

    疑問点を放置しない

    参考書やインターネットにある回答やヒントを元にして、一部のソースコードが一体何のために必要なのかがわからないけれど、とりあえずプログラミング終了。これをそのまま放置しないで、自分の記述したソースコードは全ての行に何の意味があるのかを理解しましょう。全ての行にコメントをつけて意味を明示する、というのもひとつの方法です。

    他人に助言を求める

    プログラミングの目的は正常に動作するプログラムを作ることです。そのために他の誰かに助けを求めるのは何の問題もないことです。インターネットのQAサイトで問いかけるのもいいでしょうし、先輩や同僚に質問するのもいいでしょう。

    しかし、質問にミスリードがあったり要点のわからない質問をしたりすると正しい回答は返ってきません。正しい回答を導き出すためには、正しい質問の仕方が必要です。正しい質問をするためには、何がわからないのかを明確にする必要があります。どんどん質問して「質問のスキル」を磨きましょう。質問のスキル、それは即ちプログラミングのスキルとなっていくことでしょう。

    初心者におすすめの学習法

    プログラミングに慣れるためにお勧めの学習方法です。野球をするときにキャッチボールから始めるように、プロになってからでも肩慣らしになる学習方法です。

    入門書を読む

    難しい専門書を読む必要はありません。また、前述のように暗記する必要もありません。ザックリ概要を理解する程度で十分です。新しい対象をいくつも経験するうちに、対象の持つ「特徴」を読み取れるようになります。あとは、実際にプログラミングしている過程で、疑問に思ったことがあれば必要に応じて読み返してみましょう。

    とは言え、どの入門書でもよい、というわけではありません。自分に合った書き方をしているものでなければ読み進めるのは苦痛ですし、入門書自体が導こうとしている方向性もあります。自分に合った入門書を選ぶのは難しいですが、実際に書店や図書館で手に取って選んでみてください。上記のような使い方をするのであればサンプルプログラムが多い目次(インデックス)が充実している書籍がお薦めです。

    写経する

    僧侶は、写経することで仏陀の教えを理解し、仏陀の心に触れようとしました。梶井基次郎は、他の作家が書いた作品を書写することで著者の心情や、文体の流れを感じようとしたといいます。同様に、と言えるかどうかわかりませんが、参考書やインターネットにあるサンプルプログラム、または他人が作成したプログラムをそのまま自分で記述してみる、というのもひとつの勉強になります。

    1ステップ1ステップを確実に意識することで、「あ、ここでこういう処理が必要なんだ」とか「何でこんな書き方をしているんだろう」という発見や疑問がきっと出てくるでしょう。それはそのまま今後のプログラミングに役立つはずです。

    まとめ

    プログラミングは英語ができて数学ができる頭のいい人でないと理解できないほど難しいもの、ではありません。事実、現役プログラマーにも英語が苦手、数字が嫌いといった人達がゴマンといます(著者もです)。

    本当に「プログラミングができない」ということは殆どないはずです。但し、プログラミングには王道はありません。ひとつひとつを確実にこなしていくことで必ず理解できるものですので、諦めずにチャレンジしてください。


    ポテパンが提供するサービスについて

    本メディア「ポテパンスタイル」を運営する株式会社ポテパンは、エンジニアキャリア領域で複数サービスを提供しています。

    ポテパンフリーランス

    ポテパンフリーランス

    フリーランスエンジニアの方に高単価案件をご紹介しております。弊社ではフリーランス案件を常時300件ほど保有しており、その中からあなたに適した案件をご案内いたします。また、これから独立してフリーランスになる方の無料個別相談も承っております。フリーランスになった後の案件獲得方法やお金面(税金や保険など)についてお答えいたします!フリーエンジニアになりたい方向けのコンテンツも盛りだくさんです。

    ポテパンキャリア

    ポテパンキャリア

    エンジニア職専門の転職エージェントです。ポテパンキャリアでは、技術のわかるエージェントがあなたの転職をサポートします。エージェント自身がエンジニアなので、あなたと同じ目線で仕事内容や今後のキャリアについて一緒に考えることができます。年収800万円以上のハイスペック転職をご希望の方は「ポテパンプロフェッショナル」もご用意しておりますのでご利用下さいませ。

    ポテパンキャンプ

    ポテパンキャンプ

    ポテパンキャンプでは、RubyにてゼロからオリジナルのECサイトを作り上げてる3ヶ月間の実践型カリキュラムを提供しております。すでに本スクールの卒業生は、エンジニア職として様々な企業様に就職しております。なお、本スクールは受講料10万円と他社スクールに比べ格安となっており、またポテパンからご紹介させていただいた企業へ就職が決まった場合は、全額キャッシュバックいたします。



    株式会社ポテパンは、企業とエンジニアの最適なマッチングを追求しています。気になるサービスがあれば、ぜひ覗いてみてください!

    ポテクラバナー ポテプロバナー

    この記事をシェア

    • Facebookシェア
    • Twitterシェア
    • Hatenaシェア
    • Lineシェア
    pickup









    ABOUT US

    ポテパンはエンジニアと企業の最適なマッチングを追求する企業です。

    READ MORE