初学者というわけではないですが、2020年の8月末にJava Silver SE 11(OCJ-P)を受験し合格しました。古めのJavaを触る機会が多かったJavaプログラマーですが、2週間ほど模試を解くことで比較的新しめのJava11の資格が取れました。この記事は、私が合格するにあたっての学習方法を掲載してます。
はじめに
申し込んだ経緯
- 自身の理解度を客観的に確認したかった
- Oracle Javaの上級試験の取得を目指している
- スキルシートをにぎやかにしたかった(笑)
私は、Javaの経験年数でいえば書類上はそれなりの年数になりますし、経歴としてはJavaを使っての開発が半分以上を占めています。とはいえ、ある程度出来上がっているシステムの改修であったり、古めかしいシステムの機能追加であったりが多かったので、イマイチ自分の理解度に自信が持てていなかったのですよね。なので、大学の試験が一段落したタイミングで受験することを決めました。
受験者(私)の経歴
Java案件の経歴
経歴書上は、受験時点で7年ちょっとくらいの経験年数扱いとなります。が、
- ラムダ導入後(Java8以降)の案件歴は1年少々
- しかもコードを読む、が中心。書くことについてはさらにキャリア減
受験半年くらい前の案件では、Java1.4扱ってましたからね…
ラムダどころかジェネリクスもない
というような状態でしたので、実務でラムダ式を書いたりする機会にはほとんど恵まれなかったぷろぐらまーです。
受験歴
会社員時代の2018年5月にJava Silver SE8を受験したことがあります。しかし、その時は不合格。
- 結果:不合格(62%):合格ライン(65%)
不合格の原因は精神的に甘ったれな面も往々にしてありましたが、単純に
- 基礎的な部分の理解不足
- 弱点の把握不足
に尽きるな、と思ってます。
当時勤めてた会社は、会社で取得推奨している試験は2回まで受験料補助してくれたんです。加えて、2回目受験の無料チケットも持っていたものだから、とりあえず受けてみるかーになってしまったのもうなずける。私甘ちゃんや。。
試験合格までの流れ
受験時のスケジュール
- 申込日:2020/08/08 23:00頃
- 受験日:2020/08/23 11:00~、180分
長く時間をとっても仕方がないので、おおよそ2週間で受験するように設定しました。勉強時間は1日1時間~2時間程度で進めました。
学習目標設定
Java SE 11 Silver問題集(いわゆる黒本)の模擬試験2つの正答率が
「85%を超える状態」にして試験に臨む
を目標に、受験日まで学習することに決めました。
ただ、以前受験した時も、黒本を解いて解説を見て、、を繰り返したのですが、問題と解説を行ったり来たりになり少ししんどいな、と感じてました。なので、今回は別に参考書も用意して理解を深める対策を打ちました。
徹底攻略 Java SE 11 Silver 問題集 [1Z0-815]対応 [ 志賀澄人 ] 価格:3,740円 |
オラクル認定資格教科書 Javaプログラマ Silver SE11(試験番号1Z0-815) (EXAMPRESS) [ 山本 道子 ] 価格:4,180円 |
学習の方法
以下の流れで学習していきました。ほとんど模試を解く形です。
- 問題集(黒本の模擬試験)を解いた
- 参考書をななめ読みで一通り読んだ
- 別の模擬試験を実施し、理解度チェック
- 模擬試験を繰り返し実施
1. 問題集(黒本の模擬試験)を解いた
受験申込時点での自身の理解度確認・弱点の把握を目的に行いました。このタイミングではあまり熟慮せず、ひらめいたままにノートに回答していってました。(その方が、現在の知識・把握状態があぶりだせると思ったため)
2.参考書をななめ読みで一通り読んだ
問題集とは別に購入した参考書を順番に読んでいきました。1.ですんなり正答していたところはななめ読みで読み進めて、誤答・不明瞭だったポイントについては少しじっくり読みこみました。
3. 別の模擬試験を実施し、理解度チェック
1.の時よりかは考える時間を設けて解いていました。間違えた場所、不明瞭だった場所は解説や参考書を読んで理解を深めようと進めました。
4. 模擬試験を繰り返し実施
翔泳社の参考書と黒本の模擬試験、計4つをローテーションで実施。
例:翔泳社:模試1 → 黒本:模試2 → 翔泳社:模試2 → 黒本:模試1 → …
黒本の模試は最低2回実施しよう、と思って進めていました。
- 1回目と2回目での誤答箇所の比較を行い、続けて間違っている箇所の理解を進めるようにした
- 解答時に少し悩んだ箇所はマークして、解答例をきちんと確認
繰り返し間違った箇所は、実際にコードを書くなどして挙動の確認も行いました。また、初回は合っていたが2回目以降は間違っている、などはあやふやな理解であると判断して、解説を読み「なぜこの構文ではダメなのか」を理解できるように進めました。
結果的に、黒本の模試1/模試2それぞれ3回ずつ実施してましたね
学習の結果
模試の問題であれば、90%程度は正答するようになってました。とはいえ、 短期間で繰り返し解いたことで、暗記してしまった部分も当然ありましたね・・・
受験の結果
合格記なのでこの結論はいらない気がしましたが、無事合格しました。(正答率:84%)
最後に
所感
ともかく合格ができたので、満足いく過程・結果で取り組めたのではないかと考えています。また、在宅ワークで職場と自宅の移動時間などが発生しない状態であったこともプラスだったかと思ってます。
ただ、今後上級の試験を受けるにあたって、いくつか対応しないといけない課題も残っている状態です。ある程度捨て問題は作っておいても合格ラインには届きますが…
課題
模試で繰り返し誤り、さらに試験でも結局間違えたポイントの対策
- staticが付与された変数、メソッドの扱い
- アクセス修飾子
- 抽象クラスの作成と継承
こう動くだろうという思い込みでつい解きにかかる傾向あり。思い込みが正しい理解に結びついていないので結局繰り返し失敗してしまったところ。
自身の理解を深める必要があると感じているところ
- モジュールシステム
- 型推論(var)など
業務ではJava8あたりを使うことが多いため、Java9以降に導入されている便利機能については身近な感じがしにくく、理解の深度が上がってないように感じています。
とまぁ、課題を二点ほど上げましたが、対応するものが明確になっているので順次対応を進めれば良いだけですね。また、そのうち(年度末くらいかな)頑張ろうかと思います。
コメント