ククログ(86)
Rubyで自然なDSLを作るコツ:値を設定するときはグループ化して代入
最近、fluent-plugin-droongaという分散データストリームエンジンを書いています。その中で、RubyでDSLを実現するときに工夫していることに気づきました。それは、値を設定するときは代入する字面にするということです。代入する字面にするために、グループ化用のオブジェクトを作っていました。
わかりやすい設定ファイルの項目名:否定形で修飾しない
数週間ほど前、コミットをみていたら「ひっかかる」APIがありました。それについてコメントし、わかりやすいAPIについてやりとりしました。そのやりとりの中で、設定ファイルの項目名をわかりやすくするために、いままであまり意識せず工夫していたことに気付きました。それは「設定ファイルの項目名を否定形で修飾しない」というものです。「否定形」という言い回しではなく、「ネガティブな単語を使う」というような言い回しの方が近いような気がしますが、あまりしっくりくる言い回しを思いつかないので、ここでは「否定形」ということにします。
監視統合ビューアHatoholのセットアップ方法
消費税率引上げへの対応 契約時の対応編
はじめに
10月に消費税率引上げへの対応を書いたところ多くのアクセスをいただきありがとうございます。前回の記事の時点では、2014年4月1日の消費税率引上げの日をまたいだ契約はそれほどありませんでした。しかし、この3ヶ月間で締結した契約のほとんどが2014年4月1日をまたぐもので、取引先ごとの消費税率引き上げへの対応がまちまちで調整に時間がかかりました。例えばまだ社内システムが消費税率8%に対応していないので、8%での支払いはできないケースや、2014年3月31日までの支払い分はすべて5%とするケースなどがありました。そこで今回はこのような取引先の事情にあわせて、クリアコードがとった対応を紹介します。
メタプログラミングをして割に合うかの判断基準:処理を1箇所に局所化できるか
毎日他の人のコミットをながめる文化で生活していると、理由は浮かばないけど「ん?このコミットはなんか気になる」と感じるようになります。それは、新しいことを知ることができたコミットだったり、真似したくなるようなコードが入っているコミットだったり、なんかまずそうな気がするコミットだったり、様々です。