回答編集履歴

2

ちょっと修正

2018/12/28 09:58

投稿

miyabi-sun
miyabi-sun

スコア21158

test CHANGED
@@ -64,21 +64,31 @@
64
64
 
65
65
  貴方が考える新しいやり方は、「イベントを細かく定義して」疎結合なWebアプリを作りたいという試みといったところでしょう。
66
66
 
67
- 私もかなり悩んだ末にこのやり方を思いついた経緯がありまして、筋が良い方法だと思います。
67
+ 私もかなり悩んだ末にこのやり方を思いついた経緯がありまして、こうして見返しても中々筋が良い方法だと思います。
68
68
 
69
69
 
70
70
 
71
- このやり方を編み出した経緯は、恐らく大規模なWebアプリケーション開発だと思います。
71
+ ……で、こからが本題ですが、どうしてこのやり方を編み出したのでしょうか?
72
72
 
73
+ 恐らく大規模なWebアプリケーション開発をしている最中、必要に迫られてではないですか?
74
+
73
- しかしこの辺からjQueryや素のJavaScriptによるイベント駆動開発の辛みが一気に吹き出してきて地獄になります。
75
+ だとすれば、jQueryや素のJavaScriptによるイベント駆動開発の辛みが一気に吹き出してきて地獄になります。
76
+
77
+
78
+
79
+ そして疎結合にしている部分の変数共有が必要になり、次第にジリ貧になり、
80
+
81
+ 技術的負債が溜まってプロジェクトが一気に遅延するでしょう。
82
+
83
+ この辺までが既定路線です。
84
+
85
+
86
+
87
+ 私がこの手法を考えついたのは2010年頃の話ですが、今は既にもっと良い方法が認知され、普及しています。
74
88
 
75
89
  JSフレームワークであるReact、Vue.js、Angular等にシフトすることをオススメします。
76
90
 
77
-
78
-
79
- なので、提案するやり方は悪くはないですが、
80
-
81
- を突き詰めて頑張るならさっさとJSフレームワークに移行しろ!間に合わなくなっても知らんぞー!!という感じです。
91
+ の手法を突き詰めて頑張るならさっさとJSフレームワークに移行しろ!間に合わなくなっても知らんぞー!!という感じです。
82
92
 
83
93
 
84
94
 

1

結論追加

2018/12/28 09:57

投稿

miyabi-sun
miyabi-sun

スコア21158

test CHANGED
@@ -53,3 +53,35 @@
53
53
  まぁ、グローバル領域にjQueryという変数がぷかぷか浮かんでて、
54
54
 
55
55
  無名関数で束縛しなければならないというのはちょっとアレな話ですけどね。
56
+
57
+
58
+
59
+ > jQueryでカプセル化するのは問題ないと思うのですが、無名関数に無名関数を入れ子したり、無名関数を機能ごとに分けたりすることって問題ないのでしょうか?
60
+
61
+
62
+
63
+ 上記を踏まえて質問文の冒頭を見返しましょう。
64
+
65
+ 貴方が考える新しいやり方は、「イベントを細かく定義して」疎結合なWebアプリを作りたいという試みといったところでしょう。
66
+
67
+ 私もかなり悩んだ末にこのやり方を思いついた経緯がありまして、筋が良い方法だと思います。
68
+
69
+
70
+
71
+ このやり方を編み出した経緯は、恐らく大規模なWebアプリケーション開発だと思います。
72
+
73
+ しかし、この辺からjQueryや素のJavaScriptによるイベント駆動開発の辛みが一気に吹き出してきて地獄になります。
74
+
75
+ JSフレームワークであるReact、Vue.js、Angular等にシフトすることをオススメします。
76
+
77
+
78
+
79
+ なので、提案するやり方は悪くはないですが、
80
+
81
+ それを突き詰めて頑張るならさっさとJSフレームワークに移行しろ!間に合わなくなっても知らんぞー!!という感じです。
82
+
83
+
84
+
85
+ またNode.jsアプリのWebpackやBrowserifyで勉強してみてください。
86
+
87
+ 関数の切り分けというところでかなり楽になるはずです。