复杂的表达式

当你有一个复杂的 if 子句的时候,你应该把它们提取出来赋给一个 BOOL 变量,这样可以让逻辑更清楚,而且让每个子句的意义体现出来。

  1. BOOL nameContainsSwift = [sessionName containsString:@"Swift"];
  2. BOOL isCurrentYear = [sessionDateCompontents year] == 2014;
  3. BOOL isSwiftSession = nameContainsSwift && isCurrentYear;
  4. if (isSwiftSession) {
  5. // Do something very cool
  6. }