ジョギング
- 皇居を走ってきた
- 今日は信号機に引っかかることが無かったので 42 分くらい (距離にして 9 キロくらい)
日課
- お休み
仕事
渋谷に着いたがお腹痛い。 pic.twitter.com/5bYqiIG3SN
— Yohei Kawahara(かっぱ) (@inokara) 2018年4月13日
- お客様先に訪問して打ち合わせ
帰福
東京モノレールのちょっと小上がりになっている座席でのスマフォ操作は危険。確実に酔う。
— Yohei Kawahara(かっぱ) (@inokara) 2018年4月13日
夕飯
- 俺たちの「よしもと」は満席
- 串カツ「もりす」で落ち着く
疲れた
- ここ数日, 朝が早かったので疲労コンパイル
今日のるびぃ ~ Ruby 技術者認定試験 Gold 演習問題を解いていく (23) ~
もう何度か解いているけど, Ruby 技術者認定試験合格教本 の演習問題と模擬試験を数問ずつ解いていく. ポイントは, 問題が何について問われているかがちゃんと理解出来ていること.
Q37. オブジェクト指向
以下のコードを実行するとどうなるか. 全て選べ.
module Mod def foo puts 'Mod' super end end class Cls1 def foo puts 'Cls1' end end class Cls2 < Cls1 prepend Mod end Cls2.new.foo
- Mod と表示される
- Cls1 と表示される
以下, irb による実行例.
... irb(main):018:0* Cls2.new.foo Mod Cls1 => nil
以下, 解説より抜粋.
- prepend で mix-in されたメソッドは元から定義されていたメソッドより先に呼び出される
- prepend で呼び出されたモジュール内で super を呼び出すと, 元から定義されていたメソッド (スーパークラスのメソッド) が呼び出される
Q38. オブジェクト指向
以下のコードを実行するとどうなるか.
module Mod def foo puts 'Mod' end end class Cls1 def foo puts 'Cls1' end end class Cls2 < Cls1 include Mod end Cls2.new.foo
- Mod と表示される
以下, irb による実行例.
... irb(main):017:0* Cls2.new.foo Mod => nil
以下, 解説より抜粋.
- インクルードしているモジュールのメソッドは, スーパークラスのメソッドよりも優先して実行される
以下, メソッド探索の順番.
irb(main):018:0> Cls2.ancestors => [Cls2, Mod, Cls1, Object, Kernel, BasicObject]
Q39. 標準添付ライブラリ
rdoc コメントのマークアップとして適切な記述を全て選ぶ.
*word*
で太字*
で番号無しリスト
以下, 他の選択肢について.
_word_
で等幅フォント...ではなく, イタリック体+word+
で斜体...ではなく, タイプライタ体
以下, 解説より抜粋.
_word_
はイタリック体+word+
はタイプライタ体 (等幅)
一度はガッツリ rdoc について触れてみたい.
フムフム.