おそらく素晴らしいアイデアです!
コードベースの平均関数の長さを短くするために、アクションの長い線形シーケンスを純粋に個別の関数に分割することに問題があります。
function step1(){
// ...
step2(zarb, foo, biz);
}
function step2(zarb, foo, biz){
// ...
step3(zarb, foo, biz, gleep);
}
function step3(zarb, foo, biz, gleep){
// ...
}
今、あなたは実際にソースの行を追加しましたし、かなりの合計可読性を低下させました。特に、状態を追跡するために各関数間で多くのパラメーターを渡す場合は特にそうです。うわぁ!
ただし、1回以上の行を単一の明確な目的に役立つ純粋な関数に抽出できた場合(一度だけ呼び出された場合でも)、読みやすさが向上します。
function foo(){
f = getFrambulation();
g = deglorbFramb(f);
r = reglorbulate(g);
}
これは現実の状況では簡単ではないでしょうが、十分に長く考えれば、純粋な機能の一部がしばしばteaされる可能性があります。
優れた動詞名を持つ関数があり、親関数がそれらを呼び出すと、すべてが実質的に散文の段落のように読み取れるとき、あなたは正しい軌道に乗っていることがわかります。
その後、数週間後に戻って機能を追加し、それらの機能のいずれかを実際に再利用できることに気づいたら、とてつもない喜びです!なんと素晴らしい輝かしい喜びでしょう!