てきとうなメモ

本の感想とか技術メモとか

リファクタリング入門 第3,4章

第3章はコメントに書くぐらいならassertionを使えというもの.assertion使ったことないなあ.

第4章はnullチェックが多くて読みにくかったり,抜け漏れがありそうだったらNullオブジェクトを使おうという物.

if (customer == null) plan = BillingPlan.basic();
else plan = customer.getPlan();

この例だと

public class Customer {
  public Plan getPlan() {
    ...
  }
}

public class NullCustomer extends Customer {
  public Plan getPlan() {
    return BillingPlan.basic()
  }
}

というふうに作っといて,customer.getPlan()でポリモーフィズムというところかな.