エンジニア

【初心者向け】意外とできてない?プログラミングの調べ方のコツ

エンジニア

プログラムを書こうとして悩んで気づいたら何時間もかかってしまった、などという経験はありませんか?これは、勉強でならまだ良いかもしれませんが、仕事で何時間もかけるのは致命的です。
勉強でも分からない箇所は出来る限り早く解決したいところです。

問題を早く解決したい時に役に立ってくれるのが検索です。 何時間もかけた作業が、調べたら5分で解決できたなんてことはいくらでもあります。人によっては「楽したら覚えられない」と思う人もいるかもしれませんが、業務でもプログラムを書くときは常に調べながら実装しています。なので「調べる力」も「プログラミングの力」の一つだと私は考えています。

今なにをやろうとしているのかを検索する

調べるときに自分が何を使って何をやろうとしているのか分からないと調べようがありません。ここで躓く人は結構います。プログラムの繰り返しの文法を忘れてしまった時は、「繰り返し」だけで調べても仕方ありません。まず、プログラミング言語は何なのか書きます。PHPの繰り返しを調べているのであれば「PHP 繰り返し」と調べればfor文などが出てきます。

ただこれでは、構文しか調べることができません。

私がJavaやPHPの問題で「文字列をカンマで区切ってください。」と出題しますが、これが意外と調べれない人が多いです。ここで普段の生活を思い出して下さい。友人と食事に行く時、お店を調べたことがあると思います。例えば、新宿で美味しい焼き鳥のお店を調べたい時、「新宿 焼き鳥 おすすめ」の様に、キーワードを並べて調べると思います。プログラミングでも同じ様に調べれば、答えに辿り着きやすいです。今回の場合だと、PHPで実装するのであれば、PHPの文字列をカンマで区切りたいので

「PHP 文字列 カンマ 区切る」や「PHP 文字列 カンマ 区切り方」

と検索すればすぐに解決することができます。
ここで注意してほしい点は、検索結果にPHPで文字列を区切る方法が出てくるとこです。つまり、カンマでなくても文字列を区切ることは可能で、「PHP 文字列 区切る」と調べても同じ方法が出てきます。
この様に、慣れてくれば不要な検索キーワードを把握でき、より答えに近づくことができます。

現在はPHPなど言語名を直接書いていますが、フレームワークを使っているのであればフレームワーク名をいれます。ただし注意点として、フレームワークのバージョンも書く方が良いです。例えば、Laravel5でDBにinsertしたければ「Laravel5 DB insert」で調べると結果が得られます。可能であれば、Laravel5.7のようにマイナーバージョンまで書くと良いです。(マイナーバージョンでも記法が違うことがあるため)

エラーで検索する

プログラムを書いているときにエラーがでてくることが多々あると思います。
例えばJavaで配列を扱っているときには、
Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException
といった文言がでてきます。(実際にはエラーとはちょっと違いますが…)
これに対して「英語で書かれているし、エラーの内容自体がよくわからない!」という声をよく聞きます。
そんな時は、上記のエラー文言をコピーしてそのまま検索エンジンで検索します。
そのエラーが何なのか、そのエラーをどうすれば直せるのかを調べることができます。

検索結果からページを選ぶ

複数ワードで絞り込んだとしても検索結果は大量に出ます。最初は、検索結果の1件目から見ていくのがよいと思います。慣れてきたらタイトルから答えにたどり着くことができるようになると思います。

ページを読む

検索結果からページを見ると、サイトによっては大量の情報が載っています。その中から必要な情報だけを取得するのには時間がかかってしまいます。そんな時、目次があるのであれば関連する目次から必要な情報へ遷移して下さい。ただ、目次を見てもわからない、目次自体がないという場合は、ページ内の文章から関連する文言を検索するのが早いです。全体を目で通そうとするとどうしても見落としがあったり、時間がかかります。そんな時はブラウザで以下のショートカットキーでページ内の文言検索ができます。

【Windows】ctrl + F
【Mac】command + F

検索でヒットしたらその場所へ飛び、周辺の内容を見て下さい。
もし、ヒットしないのであれば関連する他の文言で再度検索すると良いです。

まとめ

検索が得意な人は「これだけのこと!?」と思うかもしれませんが、プログラミングを学び始めた人は意外とできない人が多いです。プログラミング初心者の方は、「何を使っているのか」「何をしようとしているのか」を整理してから検索して下さい。
ちなみにこれが整理できない場合は、問題や仕様が理解できていない可能性もあります。

タイトルとURLをコピーしました