2パターンのコードを書いてみました。
1つ目は関数内部で外のスコープの関数を直接使っているパターンです。
2つ目は関数の引数に外のスコープの関数を値として渡して、引数で渡された関数を実行しているパターンです。
どっちが良いかというと、おそらく、2つ目の方なのではないかというのは感覚的に分かります!
だって2つ目のはDependency Injection(依存性の注入)みたいなものですもんね!!
(あまりDIもよく理解できていないので困ったものです)
ただ、仮に2つ目のほうが好ましいとした場合、なぜ、好ましいのか、どういったメリットがあるのか、1つ目だと何がまずいのか、どういうときに困るのかってのがよくイメージ出来ません。
どなたか解説いただけませんでしょうか?
A
// 実際は他ファイルからimportしていると仮定して… // import importedFunction from './somewhere' const importedFunction = (arg) => { return arg + '!!!' } const returnSomething = () => { return importedFunction('something'); } returnSomething()
B
// 実際は他ファイルからimportしていると仮定して… // import importedFunction from './somewhere' const importedFunction = (arg) => { return arg + '!!!' } const returnSomething = (func) => { return func('something'); } returnSomething(importedFunction)
回答1件
あなたの回答
tips
プレビュー