2018-02-17(月)のYokohama.rb Monthly Meetup #88 参加メモです。
Rubyレシピブック
気づいたら第11章「オブジェクトとメタプログラミング」に入っていました。
- 273: オブジェクトが同じか調べる
- 274: オブジェクトを複製する
- 275: オブジェクトのクラスを調べる
- 276: オブジェクトを文字列に変換する
- 277: オブジェクトを数値に変換する
とくに盛り上がったのは274, 277あたりでしょうか。274ではObject#dup
やObject#clone
といったメソッドがshallow copyであるという話が紹介されていて、deep_copy
のようなものはあったっけというところから、Active Supportのdeep_dup
の実装を見ていました。ArrayやHashに対しては再帰的にdeep_dup
を呼んでコピーしています。
rails/deep_dup.rb at v5.1.5 · rails/rails
277ではto_i
が数値として有効でない文字列やnil
を0に変換するのに対して、Kernel.#Integer
は数値として有効でないデータに対しては例外を投げるという厳密なメソッドなので、後者を使うほうが安全な場面は結構あるのではという話をしていました。
Slack
Yokohama.rbのSlack workspaceができました。@hamaknさんにSlackinをセットアップしていただきました。
できた? https://t.co/zJbLU3ExVn #yokohamarb
— kawag_hamakn (@hamakn) 2018年2月17日
slackinの作り方2018年版書いた、必要なのがslack legacy api tokenな点に注意... / slackinの作り方 2018 (to heroku) https://t.co/jpnasYPTxw #yokohamarb
— kawag_hamakn (@hamakn) 2018年2月17日
次回は2018-03-17です。