見出し画像

「プロを目指す人のためのRuby入門」読書メモ #6

Rubyをいじっているとイディオム的なものが結構あるなあと感じます。C言語で組み込みをやっていると(私が知らないだけという可能性も結構高いですが)あんまりイディオムってものを目にしません。C言語は1972年に誕生した一方、Rubyは1995年だそうです。20年以上の開きがあるのにどうしてRubyはイディオムが多いのだろう?と考え、開発現場の文化の違いなのかなあという結論に至りました。

本書を読んでいてこんな記法もあるのね、と感じたのは例えば以下。

value ||= 1000

パッとは理解できませんでしたが、実はこれ

value = value || 1000

の省略記法。つまりvalueになんらかの値が入らなければ1000を入れるという一種のデフォルト値を指定した記法。

value += 1000

などはC言語でも日常的に使いますしおなじみだと思いますが、先ほどのは納得はできますが目にしたことはありませんでした。こういうのって恐らくエンジニアの方が「これでも書けるんじゃない?むしろコンパクトに収まっていいかも!」みたいな感じで生まれたのでしょうか。こういった新しいコンパクトな記法を受け入れやすい文化がRubyに限らず最近Web領域で使用されている言語にはあるような気がしています。

*

本の内容とは1mmも関係ないのですが、先日本書にコーヒーをぶちまけてしまいました。安い本でもないのでそのまま使っていますが、シミを見るたびなんか悲しいです。


この記事が気に入ったらサポートをしてみませんか?