2014-01-01から1年間の記事一覧
前回扱った仕様の完全版を記述してみます。 <仕様> 何枚かの"くちばし" があります。くちばしには、金、銀、黄色、の三種の色分けがあります。 金のくちばし1つにつき、缶詰め1つと交換できます。 銀のくちばし5つにつき、缶詰め1つと交換できます。 これ…
ruby のユーザーにとって、Array#select() などの、「ブロック」の概念を化通用したメソッドは強力に便利です。 こんなふうに。 arr = "second baseman", "third baseman", "first baseman", "shortstop" # => ["second baseman", "third baseman", "first b…
前回のモデリング、を何度もいじくり回しているうちに、間違いが2点見つかったので、まず訂正します。 一つ目は、MinInterval。 当年と座り始めた年との間には、最低3目盛り、距離でいうと、4離れていないといけない という理由で、 one sig MinInterval { v…
前回あつかった「石の上にも三年」のモデリングを再度試みます。 前回まで、 「Alloy で発見されたモデルインスタンスは、つまりそのまま(Happy pathの)テストデータとして 使えるんじゃないか、つまり、Alloy はテストデータ生成器として転用できるんじゃ…
“石の上にも三年” という格言を Alloy でモデリングします。まあ、格言は実はどうでもよくて、Alloyにおける、数値(Integer)の扱いについて確認したかったんです。Alloy 教科書 の131ページには 整数の演算が必要に思えるなら、考え直したほうがいい。 よ…
前回、写真共有サービスを想定して、@OneToMany(orphanRemoval=true) な エンティティ群を定義してみました。その書き直し版です。前回は、「状態をあらわすsig」を、書くと言っておきながら、 操作対象のインスタンス(=削除するUserとPhoto)のことだけを…