2種類のオブジェクト a b があって、a の特定のプロパティを b にセットするとき、どうするのが自然でしょうか?
私の現在の案は、まず a に b を渡すメソッド a.set_by_b
を用意して、その中で b の b.set_a_props
を呼び出し、b にセットしたいプロパティを与えるということです。
python
1class A(): 2 def __init__(self, x, y, z): 3 self.x, self.y, self.z = x, y, z 4 def set_by_b(self, b): 5 b.set_a_props(self.y, self.z) 6 7class B(): 8 def __init__(self, o): 9 self.o = o 10 self.y = 0 11 self.z = 0 12 def set_a_props(self, y, z): 13 self.y = y 14 self.z = z 15 16def main(): 17 a = A(100, 200, 300) 18 b = B(95) 19 a.set_by_b(b) 20 21if __name__ == '__main__': 22 main()
便宜上 a のメソッド名を set_by_b
としましたが、実際こういう設計の場合で一般的に使われるメソッド名があるのならそれを使いたいです。
また、この設計はおかしいとか、こうする方が自然という意見がございましたらご指摘いただけたらと存じます。
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/04/18 09:54
2018/04/18 17:20
2018/04/18 21:36
2018/04/18 22:15