5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

技術資料をGoogle検索するテクニック

Posted at

はじめに

分からないことを検索で調べる(ググる)スキルはプログラマの必須スキルと言っても良いですが、適切な検索ワードを考えるテクニックについて解説しているサイトは意外と多くありません。

プログラミング中のググり方について、普段気を付けている内容をまとめてみました。

検索方針

辿り着きたいサイトに書いてありそうな単語をイメージする

Google検索はWebサイトを検索するツールです。
つまり、Webサイト上に存在しない検索ワードからたどり着くことはできません。
必要な情報が書いてあるサイトを探すためには、そのサイトに書いてありそうな単語をイメージすることが重要です。

検索ワードはできるだけ具体的にする

上記に関連しますが、ちゃんとした解説が載っているサイトは具体的なワードで説明されていることが多いです。

そのため、プログラミング中にエラーが出た時は
「Java エラー」
で検索するより
「Java エラー NullPointerException」
で検索した方が必要な情報に辿り着きやすいです。

エラー名以外にも

  • フレームワーク名、ライブラリ名
  • Java6, Java7, Java8 などのバージョン名まで含めた名称

などの具体的な名称を含むほど検索結果の精度が上がります。

ただしファイル名や変数名などの **「自分、またはチームの誰かが付けた名前」**を検索ワードに含めると逆に結果がヒットしなくなることに注意してください。

問題を切り分ける

Web上に情報を残してくれている人が自分と全く同じ環境・同じ問題で困っていることは少ないので、出来るだけ問題を切り分けてから検索しましょう。

失敗例

たとえば
「JavaでDBからデータを取ってきて、画面に表示する」
という機能を作りたい場合、
「Java DB データ 表示」
といった検索ワードで検索しても必要な情報が出てくることはあまりないです。

サンプルコードがヒットするかもしれませんが、大抵の場合
「DBが違う」「画面に表示するためのフレームワークが違う」
などの理由でそのままコピペすると上手くいかなかったりします。

このような失敗は、問題を適切に切り分けできていないことが原因です。

成功例

「JavaでDBからデータを取ってきて、画面に表示する」

だと問題が複合的なので、これを

「JavaでDBのデータを読み込む方法」
「Javaで画面にデータを表示する方法」

といった感じで問題の切り分けを行いましょう。

更に上述した「検索ワードを具体的にする」を適用して、

「JavaでMySQLのデータを読み込む方法」
「JavaのSpringフレームワークで画面にデータを表示する方法」

上記のように問題の切り分け・具体化を行うことで必要な情報が得られる可能性が上がります。

今回の場合、最終的には

「java mysql 読み込み」
「java spring 画面 表示」

といった検索ワードになると思います。

コードの安易なコピペをしない

  • コードを安易にコピペしない
  • コピペする場合、コピペしてとりあえず動かしてみる
  • 動いたコードについて、全ての行が何をやっているのか説明できるようになるまで更に調べる

上述したように、Web上に情報を残してくれている人が自分と全く同じ環境・同じ問題で困っていることは少ないです。

コードのコピペで起こりうる問題は、

  • そもそも実行環境が異なっていて動かない
  • 必要ないコードが混じっていて別の場所で悪さをする

主に上記の2つです。
これらを防止するため、まずはコピペで動くか試して、その後コピペしたコードが本当に過不足ないかを調べる、という手順が望ましいです。

コードが正しいか調べる場合は、大抵の場合使っている言語やライブラリ、フレームワークの公式ドキュメントを漁ることになると思います。

筋の悪い検索ワードはすぐに見切りをつける

  • 検索結果のトップ10件に有用なサイトが1つもなければ検索ワードを考え直す
  • 有用なサイトがあった場合、3ページ目まで掘り下げる
  • 3ページ目までに必要な情報が揃わなければ検索ワードを変える

大抵の場合、上位に関係ないサイトが来るような検索ワードは掘り下げてもあまり得るものがありません。
また、たとえ効果的な検索ワードでも下位の結果まで漁るのは効率が悪いです。
上位3ページを見て情報が揃わなければ検索ワードを変更しましょう。

情報の鮮度に気を付ける

ライブラリやフレームワークなど、頻繁に更新がある対象について調べる場合はサイトの更新日時や実行環境に気を付ける必要があります。
過去のバージョンでは動くコードが最新のバージョンだと動かない、なんてことはよくある話です。

実行環境を書いていない記事、更新日時が古い記事は上手く動かない可能性があることに注意しましょう。

参考

エラーの解決方法を探す

エラーメッセージの読み方と対処, 検索や質問の原則

エラーへの対処方法はいくつかテクニックがありますが、
既にまとまってるページがあったのでリンクを貼っておきます。

5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?