本記事は、応用情報技術者試験に合格したプログラマーの人向けの記事です。また、プログラマーに限らず、高度試験のデータベース、セキュリティ、ネットワークのどの試験区分から受験するか迷っている方にも有用です。
以前、合格者の平均年齢から受験順番を考えたことがありましたが、本記事では、試験内容(試験範囲)をもとに考えてみました。
初めに言ってしまいますが、おすすめの受験順番は、これです!
- 1番目:データベーススペシャリスト
- 2番目:情報処理安全確保支援士
- 3番目:ネットワークスペシャリスト
合格者の平均年齢をもとに考えた受験順番とは、セキュリティとネットワークが逆になりました。
それでは理由をみていきましょう。
プログラマーの長所
プログラミング言語を使って、プログラムを作成する人のことをプログラマーと言いますね。
プログラマーといっても、数多くの言語があるため、人によりこの言語はちょっと苦手とか、好き嫌いはあります。ただ多くのプログラマーは複数の言語を扱えます。色々な言語を扱えないと、ミスマッチで仕事がもらえなくなってしまうためです。
そのため、プログラマーは新たな言語を覚えることが得意なはず!
(言語といっても、英語は別です。ここで言っている言語はコンピュータに命令を出すためのものです。)
プログラマーなら知っている?
応用情報技術者試験に合格したプログラマーが各試験の範囲の中で既に知っているであろうことを考えていきます。
データベーススペシャリスト
データベースについては、基礎の「き」は知っている状態だと思います。基本情報技術者、応用情報技術者でも、出題されますからね。
僕の場合、大学時代に自分のPCにMySQLをインストールして、触ったことがあったため、SQLについては少し理解していました。SQLを詳しくみていきます。
SQLは、次の3つに分類されます。
- データ定義言語:DDL(Data Definition Language)
- データ操作言語:DML(Data Manipulation Language)
- データ制御言語:DCL(Data Control Language)
データ定義言語(DDL)は、CREATE、DROPなどです。テーブルを作成、削除するときに使います。
データ操作言語(DML)は、SELECT、INSERT、UPDATE、DELETEなどです。レコードの操作を行います。僕もこれらについては、ある程度知っていましたし、皆さんの中でも知っている人が多いと思います。
データ制御言語(DCL)は、GRANT、REVOKEなどです。アクセス権限の制御を行います。これは知らない方も多いかもしれません。
データベースの分野はSQLだけではありませんが、SQLはデータベースの重要な要素の1つです。
情報処理安全確保支援士
次は情報処理安全確保支援士です。名称が「ん?」という感じですが、昔の名称「セキュリティスペシャリスト」のほうがしっくりきます。
セキュリティに関して、幅広く出題されます。一般的な知識があれば、解答できるものも多いですが、範囲が広いです。
ウイルスや様々な攻撃手法、被害にあったときの時の対応、恒久的な対策法などが問われます。
プログラミングに関連したセキュリティ事項(SQLインジェクション)などは、業務でも必須なので、知っている人が多いと思います。
ウイルスなどの様々な攻撃手法は、数も多く、新しい攻撃手法も出てきたりします。そのため、知らないものも多いと思います。
ネットワークスペシャリスト
ネットワークの基礎知識はあると思います。
しかし、この試験区分ではハード的な要素も出題されます。プログラマーは、ソフトウェアには強くなりますが、ハードウェアには疎い人が多いですね。
学習のロードマップ
各分野において、軸となる知識、技術を身につければ、その他についても徐々に見識が広がっていきます。そのため【とっつきやすさ】は重要です。
プログラマーがとっつきやすいのは、やはりプログラミング言語だと思います。そうすると、当てはまるのがデータベースのSQLです。
以下、3つの高度試験合格までのロードマップです。
- データベーススペシャリストに取り掛かる
- まずはSQLをマスター(プログラマーなら、サクッとイケるはず)
- データベース関連を全て学習(特に午後Ⅱのデータベース設計の対策は必要)
- データベーススペシャリストに合格
- 情報処理安全確保支援士に取り掛かる
- データベース周りのセキュリティ分野は学習済みのため、結構、分かる
- ウイルスや様々な攻撃手法、被害にあったときの時の対応、恒久的な対策法を勉強(範囲が広いので、頑張りが必要)
- 情報処理安全確保支援士に合格
- ネットワークスペシャリストに取り掛かる
- 学習済みのウイルスや様々な攻撃手法は、ネットワーク絡みなので、ネットワークのセキュリティ分野は少し分かる
- ネットワーク関連の攻撃手法などをもう少し深くまで理解する
- ネットワーク全般を勉強します(特に物理的な要素と戦います)
- ネットワークスペシャリストに合格(僕はここで躓いています)
これは、僕の個人的なロードマップではありますが、なかなかいい流れだと思います。
少しでも参考になれば、幸いです。
合格するための方法としては、合格するまでやり続けることです。人は忘れるという素晴らしい能力を持っているので、やるときは一気にやっつけてしまうのが吉です。(子ども生まれたりで、勉強時間が取れず、僕はできていませんが。。。言い訳でした。)