見出し画像

プログラミング未経験から Java SE 8 Silver に合格した話

皆様、こんばんは!

NaaaOです!

今回、プログラミング未経験の僕でもJavaのSE試験に合格しましたので初学者の方が気を付ける点についていくつか記しておこうと思います! 

はじめに
 

今回、仕事上の都合で2019年7月に「Java SE 8 Programmer I」の試験を受けてきました。

 

プログラミング自体はほとんど経験がなく、Ruby on rails というフレームワークを数日間触ったことがあるくらいです。

(プログラミングを1から学んだことはないです)

Java SE 8 Silver試験の勉強に割いた時間は、合計すると50時間あったかなぁくらいですかね。(ガチガチのガチで勉強した時間デス)

 

一応、筆者が本当に受かっているかどうか下記に記しておきますね。

 

画像1

 

全然、満点に近い数字ではないですが、これでも合格なのであしからず。(笑)

 

Java SE 8 Silverとは


Oracle社が認定しているプログラミング言語"Java"についての試験です。

この資格を保有することで、

Javaアプリケーション開発に必要とされる基本的なプログラミング知識を有し、上級者の指導のもとで開発作業を行うことができる

 

とされています。

 

試験時間:150分

問題数:77問

合格ライン:65%

 

参考:https://education.oracle.com/java-se-8-programmer-i/pexam_1Z0-808

 

テスト形式は選択問題で、

ピアソンVUEが運営する公式なテストセンター会場にてPC上で受験します。

仕事上ではJavaのコードを読めればいいという感じだったので、今回この試験を受けることになりました。

 

今回使った参考書
 

https://amzn.to/3eev7ng

 

 合計ページ数が542もある通称「黒本」を中心に勉強しました!!

実際に問題を解いたのは主にこの黒本のみといってもいいくらいです

 

勉強法


1.Javaがどのようなものか1通り学ぶ

プログラミングにおいて共通のif文やfor文から、オブジェクト指向についてなど黒本から出題されている範囲を全般的にネットで調べるなどして学びました。

2.黒本の解説を読み理解を深める
黒本の解説はものすごく丁寧なので、解説を読むだけでも意味があると思います。!

試験では「そこついてくる!?」といったような問題が多いので

「ここはこういう処理が行われるよね」

といった理解だけでは厳しいところもあると思うので。 

3.実際に黒本の問題を解いてみる(まとめ問題以外)
 ある程度、理解したら実際に解いてみます。

僕は最初1/3ペースで合ってるといったような感じでした。

4.理解している人に質問・説明
個人的にはここが一番重要だと感じています。

実際に知識を持っている人にきくことで処理のイメージがしやすくなります。目的はやっぱりコードが読めるようになることなので”他人が作ったコードを読む”という点ではイメージをもつことは大事だと思います。

あとは人に説明することで、初めて自分の知識になるような気がします。。

5.2~4を納得がいくまで繰り返し
あとは、間違えたところを中心に繰り返して問題を解いていきました。

6.黒本のまとめ章を解いて仕上げ
ここの正答率が実際の試験の正答率といってもいいかもしれません。

 

ここで最低でも6.7割合っていれば、間違えたとこを見直して本番に臨むとすれば合格できるんじゃないかなと思います。


テストで気をつける点
 

実際の問題のなかでここ難しかったな~ってところをいくつか挙げておきます。。!

・equalsメソッド周辺

(ex.同一性と同値性の違い)

・staticメソッド・変数

(ex.staticから非staticはアクセスできないよ的な)

・toString()メソッド

(ex.オーバーロード前提に作られたメソッド)

・参照渡し

(ex.オブジェクト生成後の参照を変えるとこらへん)

・キャストのルール

(ex.継承関係をもたないものでキャストするとコンパイルエラーなど)

・StringBuilderのイミュータブル

(ex.不変だからメソッド使用時は、戻り値で取得しないと的な)


とかとかですかね。

なんじゃらほいって方はぜひ黒本読んでみてほしいなと思います!

 

受験した感想


直前に黒本解いて8・9割合ってたら確実に受かるくね

っていうのが正直な感想です。

 

普通コンパイルくんが教えてくれるものをついてくるような問題が多いので、Javaの抽象的な概念とか詳しく知りたいといった方にはいい資格なんじゃないかなと思いました~~

黒本自体が今までに出た問題をもとに作られているものだという噂もあるので、本番の問題に近い(もはやそのまま)のはどこを探しても黒本しかないんじゃないかなと思います!!

 

https://amzn.to/3eev7ng

まとめ
 

今回のJavaに限らず、プログラミング言語の各知識はきちんと博識者に聞かないと理解できないなぁというのが正直な感想ですかね。

正直、独学だけだと”分かった気になってしまう”ことが多くなってしまうのかなと思います。

今回はなんとか合格できましたが、きちんと博識者を探してつながりをもっておくことが重要なんじゃないかと思います!

 

ではでは。

この記事が気に入ったらサポートをしてみませんか?