teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2019/11/11 23:58

投稿

quickquip
quickquip

スコア11314

answer CHANGED
@@ -32,4 +32,23 @@
32
32
  ----
33
33
 
34
34
  初期化をどうするべきか? なんて考えても無駄です。
35
- `setX`がどういう関数であるべきか? を考えたら初期化の方はそれに応じて自然と決まるはずです。
35
+ `setX`がどういう関数であるべきか? を考えたら初期化の方はそれに応じて自然と決まるはずです。
36
+
37
+ ----
38
+ **本当に**初期化だけが問題の争点であるなら、それはつまり初期化以外のタイミングでその処理をすることがないことが**確実**だという話になります。
39
+ ならば、それを関数にする必要はない、と答えます。
40
+
41
+ ```
42
+ def __init__(self):
43
+ self.X = 1
44
+ ```
45
+ もしくは
46
+
47
+ ```
48
+ def __init__(self):
49
+ val = ...
50
+ # なんか難しい処理
51
+ self.x = 1
52
+ ```
53
+
54
+ とするべきだと思っています。