24.2Accessors / No Getters/Setters

ゲッター/セッターは使用しない

予期せぬ副作用を引き起こし、テストや保守が困難になるため、JavaScriptのゲッター/セッターは使用しません。代わりに`getVal()`や`setVal()`のような通常のメソッドを使用します。

`obj.age = value` のような単純な代入に見えるコードが、内部で複雑なセッターロジックを実行すると、コードの振る舞いが予測しにくくなります。`obj.setAge(value)` のように明示的なメソッド呼び出しにすることで、プロパティの設定が単なる代入ではなく、何らかの処理を伴う操作であることが明確になります。

❌ Bad
// bad
class Dragon {
  get age() { /* ... */ }
  set age(value) { /* ... */ }
}
✅ Good
// good
class Dragon {
  getAge() { /* ... */ }
  setAge(value) { /* ... */ }
}