PHPやGoを触ってきた人間はRubyを学ぶ際に取り組んだことを書く。
何はともあれはまずは公式ドキュメント。
定番系のものをピックアップした。
オブジェクト指向関連の本もピックアップしてはいたが、時間的都合で読めていない。
Tips関連の記事を読み漁った。
気になった言語仕様について学んでブログにまとめておいた。
肩慣らしにコーディングクイズを解いておく。
LeetCodeも数問解こうと思ったが時間的都合で一旦スキップした。
言語の使い方を覚えるにあたってちょうど良い題材なので素振りした。
昔Goで書いたものをRubyに変換してみた。ChatGPTとCopilotがかなりサポートしてくれた。
Rubyはオブジェクト指向言語であるので、いくつかパターンを素振りしておいた。
davidgf/design-patterns-in-rubyを参考に、いくつかピックアップして写経した。
おおよそRubyの特徴的な言語仕様を把握することができたので、あとはひたすらコードを書いていく。
一通り学んで思ったのは、練度によってコードの冗長さがかなりブレるだろうなという印象を持った。PHPでもそういう部分はあるが、Goではあまり感じない部分ではあったので、コード読む際にしばらく苦労するかもしれない。
一方で、見た目や書き味的なところはシンプルさがありそうという印象を持った。
オブジェクト指向言語からしばらく離れていたので、クラス周りの取り扱いに不慣れさを感じたので練習したい。
Rubyを取り巻く環境を見ると、国産言語だけあって日本人コミッターが多かったり、RubyKaigiのレベルが高かったり、Rubyのコミュニティの熱量が高さを感じた。学びが多いだろうなという期待感を感じたので今後とも精進していきたい。
言語によってコミュニティの雰囲気が違う文化的な側面は大変面白い。
関連書籍