カテゴリ別 2003年 | 2004年 | 2005年 | 2006年 | 2007年 | 2008年
知り合いサイト: よんだもの / 暴想 / Linuxでやる夫 / 新宿Vipper / 僕だけが幸せになればいいのに。
受験会場は官僚の本拠地霞ヶ関は霞ヶ関ビルです。思っていたより駅から遠くて(といっても8分くらい)、1時50分くらいに着きました。遅刻して受験できずということにならなくて良かったです。
試験は40分ちょっとで終わりましたが、割と間違えてるかも。
まだ二回目ですから今後大きく変わると思いますが、今回の試験の傾向を報告します。
今回は筆記試験です。第3回までは筆記のようです。その後はプロメトリックでやってるようなコンピュータで解く方法になるのでしょう。あれはどうも味気ないですが。
問題用紙と回答用紙が配布され、試験開始時に問題用紙の封をときます。この封をとくタイプ、試験によってはうまく開けられず表紙が破れて焦ったりしますが、Ruby認定試験はミシン線が入っており、スムーズに開封できました。問題用紙と回答用紙は両方とも試験終了後に回収されます。
試験時間は90分。50問ありますので、1問当たり108秒です。基本的には知ってるか知らないかで決まる問題ですので、時間は十分でしょう。
開始30分経つと終わった人は退室可能です。終了10分前には退室不可になります。前から3列目だったので気配でしか分かりませんが、何人かの方は30分時点で席を立ったようでした。受験者数は75名くらいかな。席があったのは79名で数名未受験がいました。
試験内容と全然関係ありませんが、Ruby技術者資格,東京で初の認定試験実施 の写真に写ってました。左から 2 列目、前から 3 行目の俯き加減の人です。
試験のページにあるように選択式で50問です。
選択肢は 4 つと 5 つがほとんどです(4つの方が多いかな)。1、2 問ほど 6 つもありました。また、回答は選択肢から1つか2つを選ぶものがほとんどです。1問だけ3つ選択するものもありました。
正しいものを選択するだけでなく、誤っているものを選択する問題もあります。
問題の作りは、Ruby認定試験対策問題にほど近いですね。
が、ほとんどです。一部、「エラーになるものを選べ」「(Rubyのこの機能やクラスの)仕様として正しいものを選べ」といった設問もありました。この辺もRuby認定試験対策問題同様。
12/6追記:バージョンは1.8.x 前提でした。1.9.1 がリリースされた後のことが気になりますが、SCP-J のごとく for 1.9 な資格を作るほどの差分もありません。1.9.x が世の中でデフォルトになるまでは(あと 4〜5 年かかるでしょう) 1.8.x 前提で、1.9 での仕様追加・変更は一つの出題カテゴリとして扱われると予想します。
試験のページにある出題範囲のうち、
という感じでした。
今回は出題範囲のなかから更に範囲を絞っていた印象があります。大きな分野ごとに出題数を決めていて、今回はたまたま出題されなかっただけかもしれませんが。
上に挙げましたように、実行環境の問題は全然ありませんでした。組み込みのクラスも登場したのは、Object、Integer、Range、String、Regexp、Array、Hash、Time、Dir、File くらいじゃないですかね。
今回たまたまなかったのか、もっと上のレベル用にとっておいているのかはわかりませんが、出題範囲と思われる中でも色々ありませんでした。
コメント、変数や定数の命名規則、特異メソッドと特異クラス、proc や yield、module、クラスのネストと名前空間、継承関係のある例外クラスの扱い、式展開、演算メソッド再定義、for while until unless などなど。
コメント、モジュール、for while until unless などの制御構文がないのは同じ分野から他の問題が出たからでしょうけども、他はそもそも出題範囲外だったのかな。命名規則や式展開くらいは出ても良さそう。
Ruby 特有の仕様に関する出題が多かったです。例えば、変数の初期化とスコープ、真偽、ensure の挙動、変数は実体ではなくラベルであることなどなど。他の C/Java などでも共通している仕様についての問題は比較すると少なかったと思います。if や case-when の単純な問題がそれぞれあったくらいです。正規表現とリテラルは計数問ありました。
String、Array、Hash ばかりでした。それぞれ 5 から 8 問くらいあって、計 20 問以上はこれら。この中では文字列が一番多かったかな。文法と関連して Range が何問か、あとは File と Dir と Time で 5問くらい。
親クラスを明示しない場合の仕様、継承時の initialize と super、クラスメソッドの仕様、既存クラスへのメソッド定義などなどでした。
Ruby 技術者認定試験の問題を予想してみました でいくつか挙げたような、文法の基本的なところを問う問題がほしかったですね。つまり、コンストラクタは initialize と書くとか、for 文の文法とか、new Klass じゃなくて Klass#new でインスタンスを作るとか、継承は class Child < Parent と書くとか、メソッドの可視性の制御だとか、グローバル変数とローカル変数とインスタンス変数の違いとか、メソッド定義とか。「Ruby ではこう書きますよ」レベルの問題がもっとあっても良かったと思います。どうも Ruby 特有な仕様に関する問題に偏りすぎているんじゃないかなと。
あとは、組み込みライブラリの問題数が多いような。SCPJ が文法の問題も多かったからそう思うだけかなあ。大クラス主義で 文字列、配列、ハッシュの役割が大きい Ruby なのでこれでいいのかも。
最近のコメント:
RSS
![]()
This work is licensed under a
Creative Commons License
(note: text only. w/o web design, citations, (re)distributed softwares).