数値クラスは、問題なく計算が行える数値であることを保障する必要があります。これにより、計算式クラスは、数値の妥当性を評価することなく計算が行えるようになります。
このことは、数値クラスと計算式クラスの間の依存関係を低くすることにつながります。
このことを考慮した上でクラスの「責務」を決定し、その責務を実現するための、「属性」、「振舞」をまとめてみましょう。
(1) 数値クラス
責務 | 数字が計算に使用できる正数であることを保障し、その数値を保持します。 オブジェクトの生成時に、保持する数字を引数として受け取ります。 |
属性 | 正数 |
振舞 | 1. 引数を受け取りオブジェクトを生成する。 2. 文字を整数に変換し属性に保持する。 3. 負の数値でないことをチェックする。 4. 保持している数値を返却する。 |