エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
PythonでTDD入門(3) - バリューオブジェクトと等価性 - やさしいデスマーチ
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
PythonでTDD入門(3) - バリューオブジェクトと等価性 - やさしいデスマーチ
前回はオブジェクトに副作用があるという設計上の問題を解決する為に、timesメソッドの戻り値をDollarに... 前回はオブジェクトに副作用があるという設計上の問題を解決する為に、timesメソッドの戻り値をDollarに修正しました。この変更はバリューオブジェクトパターンを適用したと考える事ができます。 バリューオブジェクトとはその名前が表すようにオブジェクトが値そのものを表現するパターンです。つまり、Dollar(10)とDollar(10)は等価であり、Dollar(10)とDollar(15)は等価でない事が必要になります。まずはこの事を確認する為のテストを書きましょう。 def test_eq(self): """ 等価性に関するテスト """ self.assertEqual(Dollar(5), Dollar(5)) self.assertEqual(Dollar(6), Dollar(6)) 当たり前のよう成功すると思えますが、テストは失敗します。 1) Failure: test_e