nekoTheShadow’s diary

IT業界の片隅でひっそり生きるシステムエンジニアです(´・ω・`)

田中哲『APIデザインケーススタディ: Rubyの実例から学ぶ。問題に即したデザインと普遍の考え方』(技術評論社)

本書はそのものずばりタイトル通りの内容です。つまりRubyAPIがどのように設計されているのか、その技術的歴史的経緯が事例とともに紹介されています。よって「よいapiデザインのためには命名をしっかりしましょう」というような類を期待しているとすこしびっくりするかもしません――というかわたしがそうでした。

「意外な収穫」の1冊でした。なかでもRubyを形作るC言語の部分、あるいは低レイヤと呼ばれる部分の解説がしっかりなされており、ふだんはJavaBashばかり書いている業務系システムエンジニアにはとても勉強になりました。もちろんapiデザインに関する話も面白かった。言語や文化を超えた多種多様なひとびとが使うRuby。うらがえせばそのapiはだれであれ思惑通りに使えるものでなければならず、その実例を学ぶことは通常のプログラミングでも役に立つはずです。また通常のプログラミングにおいては、言語やライブラリに標準に用意されているapiをWrapしていく作業が多く、その点でも不便なC言語を覆い隠す過程を描いた本書は参考になると思います。