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

回答編集履歴

2

追記

2019/05/07 04:17

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -23,4 +23,15 @@
23
23
  > 通常の関数としてinnerも定義してouter関数内で使い回せばいいよう(そのほうが他の関数からも
24
24
  参照できてコードの省略になりそう)な気がしてしまいます。
25
25
 
26
- おっしゃる通りで、他の方法で充分簡潔に代替できる際に積極的に用いることは無いでしょう。
26
+ おっしゃる通りで、他の方法で充分簡潔に代替できる際に積極的に用いることは無いでしょう。
27
+
28
+ 追記
29
+ ---
30
+ 関数の可視性を制御するのはモジュールの役割であって、
31
+ それを内部関数で実現するのは本質的ではないように個人的には思います。
32
+
33
+ 共通の変数にアクセスする関数が多くあるのなら、クラスを組めば良いでしょう。
34
+ 関数内の変数に強く依存したコードを書くなら、コメントをしっかり付けてべた書きすれば良いでしょう。
35
+ 何度も同じ処理をする必要があるのなら、それが関数内変数に依存するのは設計に問題がありそうです。
36
+
37
+ 内部関数は高階関数を組むときを除いて積極的に使うものでは無いと、私はやはり思うのです。

1

追記

2019/05/07 04:16

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -18,4 +18,9 @@
18
18
  ```plain
19
19
  Tom: Hi, Mary.
20
20
  Mary: Hi, Tom.
21
- ```
21
+ ```
22
+
23
+ > 通常の関数としてinnerも定義してouter関数内で使い回せばいいよう(そのほうが他の関数からも
24
+ 参照できてコードの省略になりそう)な気がしてしまいます。
25
+
26
+ おっしゃる通りで、他の方法で充分簡潔に代替できる際に積極的に用いることは無いでしょう。