Javaの勉強をする上で、1つの目標として Java oracle silverの取得を目指すことにしました。
勉強する理由
Oracle silver を勉強すると決めた理由としては、
-
- 自分がどの程度までjavaを使える、理解しているのか知りたい
- javaの勉強方法に悩んでいる為道標が欲しい
- 取得できれば自分のスキルを証明することにつながる
などがあります。
勉強方法
現状、私のプログラミングの勉強方法としては、
-
- 動画サイトや勉強サイトにて講座を見て学ぶ
- 講座内で作った物に、独自の機能をつけて理解を深める
- 自分で作りたいと思った物の作り方を、ネットでとにかく調べる&作ってみる
- 技術書を買い、読んだり、書いたりする
上記のような勉強方法を続けてきて、 果たして私のスキルはちゃんと上がっているのだろうか?と疑問に思うことが増えてきました。
また、今後もこのような方法を続けることが果たして効率的な勉強方法なのだろうか?
これらについて考えた結果、資格の取得を目指すのもありかなと思いました。
資格勉強をすれば、知識を体系的に学べますし、手探り感も減ります。
何より資格を取得できれば達成感があります。
プログラミングの勉強は、どうしても達成感を感じにくい面もあると思うので、それが解消できるという点も大きいです。
試験について
ネットで問題集を見た感じでは、試験内容はそんなに難しくなさそうです。
求められる水準としては、Oracleによるとこんな感じです。
Javaアプリケーション開発に必要とされる基本的なプログラミング知識を有し、上級者の指導のもとで開発作業を行うことができる開発初心者向け資格です。日常的なプログラミング・スキルだけでなく、さまざまなプロジェクトで発生する状況への対応能力も評価することを目的としています。
問題の内容については、後で触れますが、java初学者には最適な試験という認識です。
ちなみに、silverの下位資格であるBronze試験もありますが、受験費用が嵩む+内容があまりに簡単すぎるという理由から、初めからsilverを受けることにしました。
受験費用について
とにかく高いです。
Toeicなどについてもそうですが、海外の資格受験は高額すぎる気がします。
具体的な価格としては2020年8月現在で、¥26,600です。
何度も気軽に受けられる金額ではないですね…。
一発合格できるよう入念に勉強したほうがよさそうです。
どんな問題が出るのか?
具体的には下記のような問題が出題されます(Javaのバージョンは11)。
1 2 3 4 5 6 7 8 9 10 11 12 |
public class TestSwitchString { public static void main(String[] args) { String string = "5"; switch (string) { case "5": System.out.print(string + 5 + 2); case "10": System.out.print(string + (5 + 2)); } } } |
上記のコードの出力はどうなるかを答えよ。
コードの内容としては、初歩の初歩です。
しかし、出力内容を問われると、怪しくなってくる方もいると思います。
※ちなみに、実際の試験はCBT方式の為、選択肢があります。
先に答えを述べると『55257』と出力されます。
解説
なぜ『55257』と出力されるのでしょうか?
この問題で問われているのは、下記の点です。
- swich文におけるbreak;
- 文字列や数値の扱いについて
上記のコードには、break;がないためcase”5″:に合致した後に、case”10:”の処理も実行されてしまいます。
また、文字列と数値の加算演算子は、数値を文字列に変換した上で行われます。
なので、case”5″:にある『string + 5 + 2」 は「string + “5” + “2”」として実行されます。
そして、case”10:”にある『string + (5 + 2)』は「string + (7)」つまり「string + “7” 」として実行されます。
System.out.println ではなくSytem.out.printなので改行は含まれません。
よって『552』と『57』を同じ行に出力し、答えとなる『552557』が出力されます。
所感
他の問題も、似たような問題が多いです。
コードのレベルは難しいアルゴリズムもなく、かなり簡単です。
しかし、ひっかけ問題のような問いが多く、ちゃんと確認しないと点数が取れないタイプのテストです。
今後について
Oracle silverの勉強教材として、Amazonで一番評価されていた『Java SE silver』問題集(通称 黒本)を購入しました。
全部で、600ページ近くある分厚い本です。
今後は、こちらの本を使って勉強していきます。
既に何問か解いてみましたが、各サイトで絶賛されていた理由がよくわかりました。
とにかく解説が入念で、わかりやすいです。
今までなんとなく理解したつもりになっていた点が、浮き彫りにされました。
Oracle Java silverの受験を考えている方には、一番おすすめしたい本です。
単純にJavaを学びたい方にとっても役に立つ良著だと思います。
600ページもあるので、周回するのは時間がかかりそうですが、気合を入れて頑張りたいと思います。
※本著で学習を行い、無事 Oracle Java Silverに合格できました。
コメント