武田哲也さんのRuby技術者認定試験受験記

武田哲也 @__takeda さんのRuby技術者認定試験の受験記。 昨年末ぐらいに Ruby 2.1 対応になったんですよね(それまで1.8…)。
3

refine

武田哲也 @__takeda

#RubyGold こっから後はたぶん全部Ruby2.0以降(教科書に載ってない)の範囲。ちょっと休憩しよ・・(補講が大変すぎるぜ!)

2015-01-11 10:57:58
武田哲也 @__takeda

#RubyGold refineなんて初めて見たぞ… usingなんてあったっけ… docs.ruby-lang.org/ja/2.1.0/metho… この方の解説はわかりやすいな。 qiita.com/yustoris/items… 要は「クラスの局所的改造(再オープン)」ってことか。

2015-01-11 11:38:18
リンク Qiita Ruby - Refinementについてグダグダ - Qiita (2014-10-24: 2.1.2の内容に合わせました) なんだか思いの外無駄に長くなって、アドベントカレンダーとしては失格な感じになってしまいました。非常に申し訳ない……。 はじめまして、ユスと申します。 はじめにぶっちゃける...

キーワード引数

武田哲也 @__takeda

#RubyGold Ruby2.0で「キーワード引数」が導入されていた。 magazine.rubyist.net/?0041-200Speci… ↑だけ見ると「デフォルト引数とどう違うの?」と感じるが、↓の解説は非常にわかりやすい。説明がうまい。 magazine.rubyist.net/?0041-200Speci…

2015-01-11 11:49:29
武田哲也 @__takeda

#RubyGold (続き)問題には **kwrest 形式の引数も出てきた。これは「残りのハッシュ」らしい。 magazine.rubyist.net/?0041-200Speci… *配列(可変個引数)なんでそうかなとは思ったけど、初めて見たら戸惑うな~。

2015-01-11 11:51:55

rサフィックス

武田哲也 @__takeda

#RubyGold rサフィックスでRationalインスタンスを作れる techracho.bpsinc.jp/baba/2013_12_2… 「2r」って初めて見る書き方やけどたぶんそうやろと予想し、おそらく正解。

2015-01-11 11:54:22
リンク TechRacho Ruby 2.1.0リリース!注目の新機能を見てみましょう 2013年12月25日。おめでとうございます、Ruby 2.1.0がリリースされました! 日本時間で26日という細かい突っ込みをしている場合ではありません。 まだ使ったことがない方、簡単に変更点を見てみましょう。 文法の変更 デフォルト値を伴わないキーワード引数 Ruby

インクルードなど

武田哲也 @__takeda

#RubyGold included は2.0より前からあるけど忘れてたな…。たぶん正解。 docs.ruby-lang.org/ja/2.1.0/metho…

2015-01-11 11:56:54
武田哲也 @__takeda

#RubyGold prepend 初めて見た。これも2.0で追加されたらしい。 ↓丁寧な解説。(斜め読みでもわかりました) techscore.com/blog/2013/01/2… 「自クラスよりも先に」prependしたモジュールのメソッドを探索するってことやな。

2015-01-11 12:12:47
リンク TECHSCORE BLOG » Ruby2.0のModule#prependは如何にしてalias_method_chainを撲滅するのか!? | TECHSCORE BLOG お久しぶりです。寺岡です。lazyについて書いた前回に続いて、Ruby2.0について書いてみたいと思います。今回注目する新機能は、Module#prependです。Module#prependはRub...

ライブラリ

武田哲也 @__takeda

#RubyGold require 'open-uri' 知らんかった。これは2.0より前からあったみたい。 docs.ruby-lang.org/ja/2.1.0/libra… ライブラリは使ってないと覚えへんわ・・

2015-01-11 12:16:16
武田哲也 @__takeda

#RubyGold Date#>> docs.ruby-lang.org/ja/2.1.0/class… 月シフトやったか。+= が日シフトなのはなんとなく知ってたので、年かなと思ったが・・

2015-01-11 12:18:03

Fiber

武田哲也 @__takeda

#RubyGold ついに出てきたFiber。見事に間違えた。 docs.ruby-lang.org/ja/2.1.0/class… new定義resume実行yieldファイバー終了、かな。 一発目から"resume"ってどうなんやろ… でもstart/resumeの区別もないか。

2015-01-11 12:25:43
武田哲也 @__takeda

#RubyGold 「Thread クラスが表すスレッドと違い、明示的に指定しない限り ファイバーのコンテキストは切り替わりません」てとこがポイントなんかな。例えばRTOSのシミュレータ作るときなんかはFiberの方がよさそう。

2015-01-11 12:27:36

武田哲也 @__takeda

#RubyGold とりあえず・・以上で手元のメモからの復習は終了!! 感無量や・・まだ受かってもないのに。 まー次回はいけるやろ!(同じような問題が出れば)

2015-01-11 12:28:53