先日、PHP5技術者認定初級試験を受験し、合格しました。試験に向けた勉強方法、総勉強時間、試験本番中に意識したこと、試験を受ける意味、試験の残念だったところなど、PHPの現場のエンジニアとして思ったことを書いてみました。
PHP歴は4年です。業務でほぼ毎日PHPに触れています。
目次
試験に向けた勉強方法と総勉強時間
私の勉強方法は下記の通りです。
- PHP5技術者認定初級試験の参考書を2周、ざっと読んで頭に入れた。収録されている問題も全部解いた。
- ITトレメの問題を1日1問、約20日間毎日解いた。
- ITトレメの過去問を40日分、模擬試験風に時間を計って1時間で解いた。
総勉強時間は5〜10時間くらいです。
試験対策としては、PHP5技術者認定初級試験の参考書をよく読み、収録されている問題に全問正解できるようにしておくと良いです。公式の参考書を読み終わったら、試験の日までITトレメの問題を解けばなお良いでしょう。
普段からPHPを触っている人でも、あまり使用しない関数の問題は正答率が下がります。出題範囲と問題の傾向を知るためにも、公式の参考書には一度目を通しておくことをおすすめします。
試験本番中に意識すること
問題で問われていることは何で、どのように解答すべきなのかを確認する
基本的なことですが、一番大切なことです。
問題は下記のような形式が多いです。
- 「○○のことについて、正しいものはどれか、次のうちから1つ選びなさい」
- 「△△のことについて、誤っているものはどれか、次のうちから2つ選びなさい」
「正しいもの」「誤っているもの」を選択する問題が多く見られます。問題はすべて選択式ですので、「解答は何件あるのか」が問題文に明記されています。解答が複数あるものは正答率が低いようです。よく確認しましょう。
問題数は40問、解答時間は60分ですので、1問に使うことができる時間は1分弱です。問題と選択肢を読む時間は十分にあります。
分からない問題は捨てる
分からない問題が出てきたら潔く諦めて先に進みましょう。分からないものは考えても分かりません。この試験は7割正解で合格ですので、12問であれば間違えることができます。
試験を受ける意味
この試験を受けて良かったことは、試験勉強を通じてPHPを基礎から学び直すことができた点です。4年もPHPをやっていますのでそれなりに自信はありましたが、ITトレメの問題を予備知識なしで40問解いた時の正答率は6割ほどでした。
残念ながら就職対策としては、初級試験はあまり意味がないと思っています。就職対策であれば、githubに自分で考えて書いたソースコードを公開したほうが効果があるでしょう。私にとってこの試験の位置づけは「自分のためのPHPの基礎力アップのための試験」となりました。
試験の残念だったところ
試験勉強から本番試験までを通して、残念だったことを上げてみます。
関数の引数の順番を問う問題は意味が無い
公式の参考書やITトレメに関数の引数の順番を問う問題がありました。個人的には、関数の引数の順番を覚えることは意味がないと思っています。関数の引数の順番を問うよりは、関数の機能そのものに触れる問題や、関数の特殊な挙動についての問題が増えてくるとよいですね。
マニュアルを見ればすぐに解決するのに、と思ってしまう
言語の技術を公平に評価するための試験なので仕方ないのですが、「現場ではマニュアルを検索すれば解決するのに、試験のためとはいえ、なんでこんなこと覚えなきゃいけないんだろう」という思いが頭の中に常にありました。言い換えれば、そういう問題が多いと感じました。私はすべての知識を頭の中に詰め込むことはできないので、頭に入れておくべき知識と、頭の中にはないけれど必要なときにサッと探すことができる知識は分かれていていいと思っています。マニュアルを引くまでもなく、PHPをやる上で「しつけ」として覚えておくべきことを問う問題が増えてくることを期待します。
試験の良かったところ
どんな問題が頭に残ったか?
とはいえ、頭に残る、良い問題もありました。
PHPの仕様そのものに関する問題や、セキュリティに関連する問題は頭に残り、自分の知識となりました。今後は、言語仕様によるアンチパターンついての問題が増えてくるとよいと思っています。例えば、型が緩いことによる比較演算のアンチパターンや、関数の使い方そのものについてのアンチパターンなど。アンチパターンはみんな現場で失敗しながら学んでいきますが、試験を通じて広く伝えられるといいですね。