Java Bronzeに合格した。
なぜ受けたのか
仕事でJavaを用いたツールに関わっているため、知識習得のために受験した。開発経験はない。
プログラミング経験が全くないわけではなく、VBAでExcelマクロを作ったり、VB.netを書いていた時期もある。ただ、いわゆるプログラマーやソフトウェア開発者だった経験はなく、クラスを使った設計やお作法は知らない。
Java Bronzeは初学者向けの資格で、文系新卒の新人が研修中に取ることも多いらしい。アラフォーの私はそんなフレッシュな立場ではないので、どちらかといえばリスキリング、学び直しに近い。
実際につまずいたポイント
勉強中はミスログという形で間違えた問題を記録していた。それを振り返ると、自分のつまずきポイントには傾向があった。「他言語をかじった人ほど引っかかる」ものが多いのだ。
① シングルクォートとダブルクォート
PythonやJavaScriptでは文字列にどちらも使える。しかしJavaは厳格で、'A'はchar型(1文字のみ)、"Hello"はString型と明確に区別される。他言語の感覚が抜けず、最初は迷った。
② if文の波括弧省略
波括弧を省略すると、直後の1文だけがif文の対象になる。インデントで揃っていても2文目は無関係に実行される。見た目に騙されるひっかけの定番だ。
③ shortの範囲
short b = 50000;はコンパイルエラーになる。shortの上限は32,767。VBA時代は型の範囲など意識したことがなかったので、新鮮なつまずきだった。
④ 変数名に使える文字
使えるのは英字・数字・アンダースコア・ドル記号のみ。#は使えない。細かいが試験には出る。
⑤ 配列宣言の[]の位置
int[] aもint []aもint a[]も全部OK。逆に要素数を省略したnew int[]はNG。どれが正しいかではなく「全部正しい」というのがひっかけになっている。
受けてみた感想
初学者向けとはいえ、曖昧な知識では普通に間違える。特に他言語の経験がある人は、その感覚が邪魔をすることがある。逆に言えば、Javaの「厳格さ」を体系的に知る良い機会だった。
アラフォーの学び直しとしては悪くない選択だったと思う。

コメント