Quando si scrivono grandi quantità di codice ricorsivo (per validi motivi), ho incontrato molti parametri che non sono usati in funzioni specifiche, ma sono ancora necessari per un sottoinsieme di tutte le funzioni.
IE questa situazione (a, b & c sono numeri):
function fun1(a, b, c) {
if(a > b) {
return fun2(a, b, c);
} else if(b > c) {
return fun3(a, b, c);
} else {
return a;
}
}
function fun2(a, b, c) {
return fun1(a + b, a - b, c);
}
function fun3(a, b, c) {
return fun1(a * c, b, a / c);
}
(In realtà non so se questo termina)
In questo esempio, fun2
non utilizza mai effettivamente c
, ma deve ancora richiedere c
come parametro. In fun3
, questa è la stessa cosa ma per b
e fun1
interessa solo a
.
In questa situazione, cosa si dovrebbe fare per ridurre il numero di parametri fino ai soli parametri di cui ogni funzione ha bisogno e & non i parametri che vengono utilizzati in altre funzioni?
(Quando dico not used
, intendo passato)