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

回答編集履歴

1

追記

2017/12/25 09:00

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -33,4 +33,15 @@
33
33
  ---
34
34
  > Aという通信を行うモジュール(ソースファイル)があったとして、A内で通信やその他をすべて終わらせ、必要なデータだけをBというモジュール(ソースファイル)に送り、なにか問題や操作等があったら、Aに送り(フィードバックし)処理を行いBにまた送る。といった、AとBを完全に独立させ、パイプか何かでデータだけつなげるというやり方もあるのでしょうか?
35
35
 
36
- 具体的な方法はさておき、Bが通信に携わらなくて良いのは良い構造だと思います。
36
+ 具体的な方法はさておき、Bが通信に携わらなくて良いのは良い構造だと思います。
37
+ ただ、パイプ処理よりも直接モジュールをインポートした方が素直でしょう。
38
+
39
+ 0. 『こんな風に使えたら便利だな~』と妄想する。
40
+ 0. Aを作る。とりあえずインターフェースの要求だけ満たせば良い。
41
+ 0. Aを利用するBを作る。
42
+
43
+ BはAがある程度しっかり動作することを前提に組むことが出来ます。
44
+ 一方、Aは**実際どのように呼ばれるかを意識しない**で組むことが出来ます。
45
+
46
+ 通信に関する機能を向上させたいならAだけを修正すればいいですし、
47
+ 具体的な処理を変えたいならBだけを修正すればいいです。