Java SE8 Silverに合格したので、使った参考書や問題集を紹介します。
受験料が約30,000円と高いので、参考書代を安く抑えるために工夫しました。
お金のない学生の参考になると思います。
勉強前のJavaの知識
僕のJavaに関する知識は、
- 変数の宣言と初期化
- if文,for文,while文
- 配列
といった基本的な内容をかじった程度でした。
例外処理や継承に関する知識は0で、
オブジェクト指向でプラットフォームに依存しない言語というざっくりした認識です。
Javaは初心者ですが、Pythonを少しだけ勉強したことがあります。
勉強方法
下記の流れを2週間で行い、試験に備えました。
勉強時間は約30時間です。
- 紫本を1週
- 白本を1週
- 黒本の間違えた問題をノートにまとめながら1週
- 白本の模擬試験のみ復習
- 黒本の模擬試験のみ復習
使った参考書
僕が使った参考書は、SE7の古い試験向けのものです。
紫本と呼ばれているかは知りませんが、僕は紫本と呼んでいます。
試験内容が変わると古い参考書は一気に価値が落ちます。
Amazonで中古品を探せば1円+送料で購入することができます。
参考書が古くても問題ないのか?
SE7試験からSE8試験になって追加された試験範囲は以下の2つです。
- Date and Time APIの基本
- ラムダ式の基本
ラムダ式は難易度が高い上、1~2問しか出題されないので切り捨ててよいでしょう。
Date and Time APIについては、後述する黒本の解説を読むだけで理解できます。
ラムダ式まで完璧に理解したい方や、Kindle版を購入する方はSE8試験用の参考書を購入しましょう。
使った問題集
僕が使った問題集は、SE7用の白本(スピードマスター)とSE8用の黒本です。
白本がSE7用なのは、参考書と同じで中古で安く買えるためです。
黒本だけはSE8向けの新しいものを購入しました。
中古品でも3,000円ほどしてしまいますが、理由は2つです。
- 本番で類似した問題が出題される
- Date and Time APIは落としてはいけない問題である
1つ目の理由ですが、本番では黒本とほとんど同じ問題が出題されます。
変数名などは変わっていますが、僕の受験時には7問ほど記憶にある問題が出題されました。
1割近い問題を事前に確認できるのは大きいです。
2つ目の理由は、Date and Time APIに関する問題が割と簡単なことです。
知ってさえいれば、捻った問題は出ないので容易に正解を選べます。
黒本は問題集ですが解説も丁寧なので、APIについて理解しておきましょう。
試験を申し込む際の注意点
Oracleの試験を受けたことがない場合、申込みに1週間ほどかかります。
勉強を始める前に申し込みの手続きに着手しておくとよいでしょう。
また、未成年者は受験契約書をよく確認しましょう。
18歳未満の場合は受験前に書類を提出しないと試験が無効になるようです。
2.5 未成年者に対する認定
乙が18歳未満である場合には、認定試験の受験前に、予め乙の保護者または法定後見人が本契約に押印する必要があります。乙は、押印済みの本契約を、保護者または法定後見人の押印欄ページに定める住所に宛て、郵送またはFAXにより甲に送付するものとします。必須の押印欄ページについては、http://www.oracle.com/jp/education/certification/oracle-certification-program-1927062-ja.pdfで閲覧することができます。未成年者は、Certification Programが乙に対し、押印済み契約書の受領を証する電子メールを送信した後でなければ、認定試験を修了することができません。未成年者の認定試験受験者は、認定試験を受けるため、試験センターに当該受領メールの写しを提示する必要があります。保護者または法定後見人が本契約に押印せず、未成年者が認定試験を修了した場合には、当該認定試験は無効となります。13歳未満の未成年者には、Certification Programの受験資格はありません。
本番の難易度
本番の試験問題は、黒本の模擬試験よりは簡単なものが多いです。
問われていること自体も簡単ですが、複数選択の問題が少ないことが大きいです。
ただし、ポリモーフィズムを多態性と表記しているなど、模擬試験とは異なる部分もあります。
模擬試験で時間を計って、120分を切るぐらいの速度で問題を解けるようにしておくといいでしょう。
そのぐらいのレベルであれば、本番で時間を気にせずにのんびり解けます。
試験結果
所要時間:120分(見直し含む)
正解率:87%
77問中67問正解といった具合でしょう。
ラムダ式の問題を1問と、意味がわからない長文の問題1問は捨てました。
残り8問はどれが間違えていたのかわかりませんが、まあまあな結果です。
受験した感想
「Bronzeは簡単すぎるから、受けるならSilverからにするべき」
このような意見をネットでよく見かけたのでSilverから受けました。
ですが、想像していたより難易度高いなというのが正直な感想です。
Java以外の言語も触れたことがない方は、Bronzeから順に受験するのも視野に入れていいでしょう。
元々プログラムをバリバリ書いている方は、短時間の勉強で取れます。
ソースコードが読めればいいので、暗記量の多いLPICや、範囲の広い基本情報よりも簡単に感じるかもしれません。
自腹を切ってるからこそ絶対に落とせません。