「基本情報技術者試験は難しい」といった声をネットで見かけたことがある方も多いのではないでしょうか?
今回は筆者の実体験をもとに、IT未経験から基本情報技術者試験に合格するまでの体験談をご紹介したいと思います。
本記事では、筆者の経験をもとに基本情報技術者試験の難しさについて解説します。
この記事を読むことで、未経験から基本情報技術者試験合格までの道筋がイメージできるようになるはずです。
また、独学を選ぶべきか、通信講座を選ぶべきかについても考えていきましょう。
ちなみに、筆者は通信講座を活用し、午前免除(現在の科目A免除)を受験したうえで合格しています。
これから基本情報技術者試験の勉強を始める方や取得するか考え中の方はぜひご参考にしてください。
基本情報技術者試験の難しさ
はじめに、基本情報技術者試験の難易度について考えていきます。
合格率などについては下記の記事でご紹介しているので、気になる方はご参照ください。
![](https://takosan-blog.com/wp-content/uploads/2024/02/ブルー 幾何学 ブログ アイキャッチ画像-160x90.png)
筆者が感じた基本情報技術者試験の大変なポイント
筆者が実際に受験して大変だったと感じたのは以下の4点です。
- 難しい問題はほとんどないが、範囲が広く覚えることが多い。
- 法律などの知識も必要であり、学習のモチベーションが上がらない。
- プログラミングに慣れるまでは問題の意図が分かりづらい。
- コードが読めても、アルゴリズムの動きが追いかけられない。
科目Aと科目Bに分けて詳しくお話ししていきます。
基本情報技術者の難しさ – 科目A
科目Aの難しさとして挙げた2点に共通して言えることは、学習する範囲が広大すぎるという点です。
科目Aの出題範囲は以下の通りです。
1.基礎理論
2.アルゴリズムとプログラミング
3.コンピュータ構成要素
4.システム構成要素
5.ソフトウェア
6.ハードウェア
7.ヒューマンインターフェイス
8.マルチメディア
9.データベース
10.ネットワーク
11.セキュリティ
12.システム開発技術
13.ソフトウェア開発管理技術
14.プロジェクトマネジメント
15.サービスマネジメント
16.システム監査
17.システム戦略
18.システム企画
19.経営戦略マネジメント
20.技術戦略マネジメント
21.ビジネスインダストリ
22.企業活動
23.法務
あまりにも苦手な分野であれば1つくらいは捨ててしまっても問題ありませんが、
それでも範囲が広大であることには変わりありません。
難しい問題はほとんどないが、範囲が広く覚えることが多い。
科目Aでは上記で上げたような広大な範囲を取り扱います。
そのため、テキストを1周するだけでも頭の中身が混乱してきます。
特に、基礎理論の分野は文系の方にとって難しく感じるかもしれません。
ですが、試験対策としては捨ててしまっても問題なく合格できます。
![たこさん](https://takosan-blog.com/wp-content/uploads/2024/02/cropped-顔-150x150.png)
基礎理論を完全に捨ててしまうのはあまり推奨はしたくありませんが、
モチベーションを保つことが最優先です。
法律などの知識も必要であり、学習のモチベーションが上がらない。
科目Aの出題数はテクノロジ系(IT関連の分野)が半数以上を占めていますが、
法律や経営戦略といった分野からも出題されます。
![たこさん](https://takosan-blog.com/wp-content/uploads/2024/02/cropped-顔-150x150.png)
テクノロジ系の勉強をしている際は難しいながらも楽しむことができていましたが、ストラテジ系の勉強についてはモチベーションを保つのが大変でした。
ただ、マネジメント系とストラテジ系は管理職を目指すうえでは必須級の知識ですので、
興味がなくても頑張って身に着けていきましょう。
基本情報技術者の難しさ – 科目B
科目Aは知識を詰め込むのが大変というお話しをしてきましたが、科目Bではかなり違った大変さがあります。
特に、疑似言語というプログラミングのような分野が8割を占めているため、
未経験であれば慣れるまでかなりの時間が必要です。
![プログラミング](https://takosan-blog.com/wp-content/uploads/2024/03/code-1076536_640.jpg)
科目Bの苦労した点についても詳しくお話しします。
プログラミングに慣れるまでは問題の意図を読み解くのが大変。
まず、IPAが公表している科目Bのサンプル問題をご覧ください。
整数型:fee(整数型:age)
整数型:ret
if (age が 3 以下)
ret ← 100
else if ( ??? )
ret ← 300
else
ret ← 500
end if
return
こちらは年齢(age)によって料金(fee)が決まるように???の部分を埋める問題なのですが、イメージが付きますか?
かなり単純な問題なのですが、プログラミング未経験の方にとってはこの形に慣れるまで時間がかかってしまうでしょう。
コードが読めても、アルゴリズムの動きが追いかけられない。
先ほど紹介したような簡単な問題が解けるようになっても、複雑なアルゴリズムの問題を解くのにはかなり苦労しました。
特に、プログラミングに慣れていないと再帰処理という自分自身を呼び出す処理やループのイメージがつかず、何が起こっているのか全く分からない状態でした。
アルゴリズムの細かい動きはただプログラミングの学習をしても身に付きづらい部分であると感じています。
地道に変数を追いかけていく練習を重ねていかなければなりません。
![たこさん](https://takosan-blog.com/wp-content/uploads/2024/02/cropped-顔-150x150.png)
メモしながら値の変化を記録する、エクリプスなどのデバッグモードを使用するといった方法で動きをトレースし、イメージがつかめるように練習しましょう。
勉強時間はどのくらい?
インターネットで「基本情報技術者試験 勉強時間」
と検索すると、およそ200時間が目安と記載されています。
筆者の経験からしても、この200時間という数字は概ね当てはまっていました。
筆者の場合は大学4年生のうちに午前免除(科目A免除)試験に合格し、就職後の6月に科目Bを受験して合格しています。
午前免除試験合格までの勉強時間がおよそ100時間です。
科目Bの勉強時間については、新人研修でのJavaの学習を含めておよそ200時間でした。
ただ、オブジェクト指向やJDBCという科目Bに関係のない部分が半分以上を占めており、
アルゴリズムなどの学習時間は100時間を下回っています。
![たこさん](https://takosan-blog.com/wp-content/uploads/2024/02/cropped-顔-150x150.png)
オブジェクト指向などの学習でもプログラミングに触れているため、
コードの動きに対する理解は深まっていたと感じています。
結論とまとめ
筆者の考えとしては、基本的に通信教材などを活用することがおすすめです。
理由としては、下記のような点が挙げられます。
- 科目Aと科目Bの対策を並行するのは難しい
- 試験対策に時間がかかるため、自分でスケジュールを立てるのが大変
- プログラミング初学者には質問しやすい環境が重要
基本情報技術者試験は科目A,Bの同日受験、同時合格が必須です。
それに対し、通信教材などを活用することで受験可能になる科目A免除は1年間の有効期間があり、その期間は科目Bの対策に専念することができます。
科目A免除試験は通信講座を受講した場合のみ活用できる制度ですので、そこが大きなメリットになっています。
特に忙しい社会人であれば対策に時間をかけるのは厳しいでしょうし、通信教材の重要度が増します。
これから基本情報技術者試験の学習を始める方は通信教材の活用を視野に入れてみてはいかがでしょうか。
![たこさん](https://takosan-blog.com/wp-content/uploads/2024/02/cropped-顔-150x150.png)
学生で対策に時間がかけられる、普段から自己学習や自分で調べる習慣が身に付いているといった方は独学での取得を目指しても良いと思います。
コメント