Rubyのお勉強 ― 2014年03月26日 19:53

Rubyを学ぶ。経験上、最初に言語の文法仕様書に目を通すことにしている。
C、Java、Perlなどを、そこそこ使ってきた身には、わかりやすい。他言語との比較をするときに取り上げられているのも、これら。実際は、自分である程度の量をプログラムしないと、まっとうな評価はできないが、感想を。
プログラムの実際で、自分の書いたものをよりよくしようと普段から考えている、そういう人の実装。仕様通り作って、必要な範囲で性能改善などの手を加え、納品する。必要以上のことはしない。その繰り返し。その水準では、こういう言語仕様を作ろうとは思わない。改善しやすく、書くときにミスをしにくく、テストしやすく、時間が経ってみても理解しやすく、そういう心配りを尽くしている印象。苦労している人ほど、合点がいくはず。
書きっぷりは、Larry WallのPerlの本の初版とは別物。書きたいことを書きたい順で書くのではなく、わかりやすいように書いてある。あれはあれで味があったのだけど。
スマートフォンアプリやWindowsアプリを作って手軽に稼ぐ、という目的には適さないから、そこは使い分け。身の回りで使うプログラムを書くにはよさそう。アルゴリズム確認のためにテストプログラムを書くなんて時は、PerlからRubyに乗り換えてみようか。いくつか、お題はあるので精進したい。重い並列処理は、不得手のようだから、そこも使い分け。動的な実装と、並列処理は相性が悪い。
よりよい理解のためには、オブジェクト指向の基本は押さえたい。本書では、Bertrand Meyerの本を引いている。著者がオブジェクト指向をしっかり学んでいることがわかり、ひと安心。

これは、1990年に出た翻訳。後継の本は今も入手可能のよう。だいぶ高価なのが残念。抽象データ型、継承、Polymorphism、動的binding等、この本で理解が進んだ。C++の解説書では、実装上、苦手なところの言及がないので、全体を見通した説明がなかなか得られなかった記憶がある。Meyerは、理想を実現すべく、Eiffelを実装しているが、なかなか高価なのと難しくなってしまっているよう。
最近のコメント