kawasaki.rb
昨日は、 Rubyの勉強とITエンジニアがどのようなことを知識として蓄えているのかを知るために、kawasaki.rb に行ってきました。
kawasaki.rbでは、月に一度、JRの川崎駅の近くのミューザ川崎 セントラルタワーで、rubyを始めたい人、使っている人たちが集まって勉強会をしています。
僕にとっては、Rubyの勉強会では2回目、kawasaki.rbは初参加でした。参加者の数は20人弱で、rubyを仕事で使っている人だけでなく、趣味でのみ使っているという方、これから必要になるので勉強を始めたという方もいらっしゃいました。
セッション(前半)
セッションが2つあり、前半では「パーフェクトRuby」の読書会でした。
読書会の進め方は、世話人の方がスクリーンに本のページを表示し、そこに書いてあることを朗読し、インタプリタ環境(もっと言うとnbviewer)で再現するという形式でした。また質問や意見をその場でみんなで話し合いながら進めていました。
今回の読書会の内容は、キーワード引数についてでした。その内容について説明します。
古いRuby(1.9まで)ではハッシュを使い、擬似キーワード引数と呼ばれていました。
def keywords( hash = {} )
hash
end
また、デフォルト 値も設定することができます。
def keywords(hash = {} )
defaults = { a: ‘alice’, a: ‘bob’}
hash = defaults.merge(hash)
hash
end
Ruby2.0でキーワード引数が使えるようになり、ハッシュである必要はありません。以下のようにできます。ただし、この書き方だとデフォルト値を入れるのが必須でした。
def keywords( a: 'alice', b: 'bob' )
{ a: a, b: b }
end
Ruby2.1では、キーワード引数のデフォルト値の省略ができるようになりました。
def keywords( a: , b: 'bob' )
{ a: a, b: b }
end
引数でハッシュなどを渡すことも可能です。その場合は “**” を使って指定します。
def keywords(a: ‘alice’, b: ‘bob’, **c )
{ a: a, b: b, c: c}
end
約5分ほどの休憩をはさみ、後半のセッションと続きました。
続きはまた後日…。
ブログランキングに参加しています。クリックをお願いします。
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
0 件のコメント:
コメントを投稿