効率を重視した情報処理技術者試験の勉強方法まとめ【挫折しないために】

情報処理技術者試験

情報処理技術者試験って、どうやって勉強したらいいの?

情報処理技術者試験ではじめての試験区分を受験するときは、勉強方法がよくわからないですよね。

筆者はいくつかの試験区分に合格しましたが、今思えば効率の悪い勉強方法をしていたこともあります。

過去の自分のような方に向けて、情報処理技術者試験の勉強方法をご紹介します。

情報処理技術者試験の勉強方法の流れ

まずは結論からお伝えします。情報処理技術者試験の勉強方法の流れは以下の通りです。

  1. 過去問を解く
  2. わからなかったところの解答を見て参考書やネットで調べる
  3. 手を動かしてアウトプットする
  4. 1~3を繰り返す

それぞれの理由や目的について、続きで詳しくご説明していきます。

筆者の情報処理技術者試験の合格歴について

筆者は以下の情報処理技術者試験の試験区分に合格しました。

体験談のブログ記事があるものは、下記のリストからリンクを貼っています。

なお筆者は F ランクと呼ばれる(偏差値が低いとされる)大学の出身です。さらに大学で 2 回も留年していますし、元引きこもりです。

しかしこんな学歴の筆者でも、基本情報技術者試験だけでなく高度試験にも合格することができています。

情報処理技術者試験の勉強方法の詳細

勉強方法の流れの詳細です。

1. 過去問を解く

最初に参考書を買うのではなく、実際の試験と同じ時間を計っていきなり過去問を解くのがおすすめです。

最初に過去問を解く目的は以下です。

  • 試験に対する自分のだいたいのレベル感を知る
  • アウトプットに慣れる準備をする

最初に参考書を読まない理由

まず参考書を読むのが先じゃないの?

とお考えの方もいると思います。もちろん全体像をつかむためにまず参考書を読んでみるのも良い方法の一つですが、以下のような問題点もあります。

  • 本を読み切るまでに膨大な時間がかかる
  • そもそも読み終わるところまでたどり着かず、挫折する

また本を読むというインプットの行為だけだとなかなか記憶には定着せず、忘れていくスピードも早くなりがちです。

筆者は実際の試験勉強でいろいろな方法を試しました。中には 3 回目でやっと受かった試験もあります。

その中でも過去問を解いたり手を動かしてみるというアウトプットを多めにして、足りないところを補うために参考書を読む勉強法のほうが効率が良かったと考えています。

過去問の入手方法

情報処理技術者試験は、公式サイトですべての試験区分の過去問と解答が PDF のファイル形式で公開されています。

リンク:IPA 公式サイトの過去問題ページ

PDFをダウンロードして印刷すれば、実際の試験をほぼ再現できます。マークシートは無いので解答は以下の方法でメモします。

  • 別の紙やノートに回答をメモする
  • 過去問の紙にそのまま回答を書き込む

筆者はプリンタに使う印刷用の紙や、いらない紙の裏に過去問の解答をひたすら書くスタイルが好きです。

過去問を解くのは正直つらい

実際の試験と同じ時間で問題を解くのは、はっきり言ってかなり頭が疲れます。午前試験と午後試験を違う日に分けても良いと思います。

しかし「本気で脳みそから知識を絞り出して問題を解く」ことの練習になり、以下のように自分のレベル感もだいたい掴めます。

  • 全く歯が立たない
  • ところどころ分からないところがある
  • 参考書を買わなくても余裕

スマホやテレビなどの誘惑があっても集中できる人は自宅で、そうでない人は図書館の自習室のようないつもと違う環境で過去問を解きましょう。

自宅を集中できる環境にしたり、勉強などを習慣化する方法は「ブログのほぼ毎日更新を一ヶ月続けることができた方法【精神と時の部屋】」もご覧ください。

2. わからなかったところの解答を見て参考書やネットで調べる

過去問を解いた後に解答例を見て間違えたところを確認し、参考書やインターネットで知識を補います。

この目的は以下です。

  • 「なぜ」その解答になるのかを導き出せるようにするため
  • ただの暗記で終わらないため

IPA 公式サイトの回答だと答えしか載っておらず、「なぜ」その解答になるのかがわかりません。

また答えを見ただけだと納得したつもりになってしまうだけで、ほとんど暗記と同じような状態になってしまいます。

解答を導き出すための知識を得るために、以下のような書籍から知識を補っていきます。

  • 試験の対策に特化した解説付きの参考書
  • 一般的な IT 関連の技術書
  • 試験の範囲に関連するウェブサイト

なお参考書は必ずしも全ページ読破する必要はないと、筆者は考えています。

分かっているところは飛ばして、過去問で理解できなかったところだけを重点的に補うほうが効率がいいためです。

試験の対策に特化した解説付きの参考書

各試験区分に特化した参考書です。例として情報処理教科書シリーズなどがあります。

いろいろな出版社が試験対策のためだけに参考書をつくっているため、試験範囲に関する知識だけを効率よく補うのに向いています。

一般的な IT 関連の技術書

試験用には作られていない、普通の IT 関連の技術書です。

例えばネットワークの分野だと以下のような書籍があります。

竹下隆史 (著), 村山公保 (著), 荒井透 (著), 苅田幸雄 (著)

とくに業務経験がない場合、本から実際に技術が使われているところをイメージするのにも役立ちます。

試験の範囲に関連するウェブサイト

書籍だけでなく、有益な情報を掲載しているウェブサイトもあります。

例えばネットワークに関連するウェブサイトだと、以下のようなサイトが勉強になります。

もっと調べる場合は RFC(Request for Comments) を見てみる等もありますが、読むのが大変なので深く技術仕様を見ておきたい方向けです。

3. 手を動かしてアウトプットする

実際に手を動かしてアウトプットすることで、学習した知識をさらに記憶へ定着させることを期待できます。

情報処理技術者試験は過去問や参考書だけの学習でも合格すること自体は可能です。

しかし資格は「持っている」だけでなく、得た知識を応用してこそ価値があります。

手を動かしてアウトプットする方法の例としては、以下のものがあります。

  • データベースは MySQL などにテーブルを作り、Sequel ProHeidiSQL などのツールでクエリを打ってみる
  • セキュリティは OWASP ZAP などの脆弱性チェックツールを使ってみる
  • ネットワークは Wireshark などのパケットキャプチャツールを使ってみる

例えばネットワークで TCP について、以下のようなことは参考書に書いてあると思います。

  • 3ウェイハンドシェイクの流れ
  • 送り先にパケットが届かなかったときに再送が行われる

しかし本を読んだだけだと、概念はわかるものの「ふわっとした」理解になりがちです。

実際にパケットキャプチャツールでパケットを取得して中身を見てみると、さらに理解を深めることができます。

例として当ブログhttps://www.lancork.net/をブラウザで開いて 3 ウェイハンドシェイクするときのパケットキャプチャは以下のような結果になっています。

16    0.625771    192.168.10.103    153.121.52.163    TCP    66    59820 → 443 [SYN] Seq=0 Win=64240 Len=0 MSS=1460 WS=256 SACK_PERM=1
17    0.632224    153.121.52.163    192.168.10.103    TCP    66    443 → 59820 [SYN, ACK] Seq=0 Ack=1 Win=14600 Len=0 MSS=1414 SACK_PERM=1 WS=64
18    0.632249    192.168.10.103    153.121.52.163    TCP    54    59820 → 443 [ACK] Seq=1 Ack=1 Win=131328 Len=0

参考書に書いてあるような 3 ウェイハンドシェイクの流れや、シーケンス番号なども実際に確かめることができます。

  • 最初のSYNのシーケンス番号が0
  • SYN, ACKのシーケンス番号が0、確認応答番号が1
  • ACKのシーケンス番号が1、確認応答番号が1

4. 1~3を繰り返す

これまでの 1~3 を繰り返します。

  1. 過去問を解く
  2. わからなかったところの解答を見て参考書やネットで調べる
  3. 手を動かしてアウトプットする

過去問はいくつかの年度の分が公開されています。

同じ年度・違う年度のものを時間が許す限り、繰り返し解いて知識を補完していきます。

午前試験は過去問から同じ問題が使いまわされることがあるため、ただ繰り返すだけでも突破率が上がっていきます。

一方、午後試験では全く同じ問題が出題されることはほぼありません。

しかし参考書や手を動かすことで手に入れた基礎知識は、違う問題が出ても応用できる可能性が高いです。

おわりに

情報処理技術者試験の勉強方法の流れをもう一度まとめます。

  1. 過去問を解く
  2. わからなかったところの解答を見て参考書やネットで調べる
  3. 手を動かしてアウトプットする
  4. 1~3を繰り返す

まずはどれか一つの試験区分でも合格を目指し、小さく成功体験を積み重ねていくのが個人的にはおすすめです。

勉強方法の参考になれば嬉しいです。