Convenzione dove posizionare le funzioni non esportabili

2

Per esempio, diciamo che esiste un file math.js. Pensalo come un modulo che contiene molte funzioni riutilizzabili.

Il contenuto del file è:

export function area(shape) {
   normalize(shape)
   ... // real stuff here
}


function normalize(shape) {
   ... // real stuff here
}

export function circumference(shape) {
  normalize(shape)
  ... // real stuff here
}

immagina che ci siano molte più funzioni come normalize e ancora più export funzioni utili.

La domanda è: è un buon stile di codifica per mettere non le funzioni di export abili (le chiamerei funzioni private . normalize è tale funzione nel mio snippet di codice) nella parte inferiore del file ?

    
posta Filip Bartuzi 16.11.2016 - 13:35
fonte

1 risposta

0

Direi di pensare alla leggibilità di una semplice convenzione per ogni caso (ricorda: non esiste un proiettile d'argento).

  • Le funzioni private di Util sono utilizzate praticamente ovunque nel modulo, tutte all'inizio o alla fine.
  • Funzioni utili per alcune funzioni localizzate, se possibile, inseriscile nello stesso blocco invece di dover scorrere 250 righe per verificare come viene implementata la funzione privata.

Fondamentalmente la seconda opzione sta identificando un qualche "submodule" nel tuo modulo e riapplica la tua convention localmente a quel "submodule" invece dell'intero modulo. Questo perché se hai molte funzioni private, metterle tutte alla fine o al fondo potrebbero essere meno leggibili (più scorrevoli) che raggrupparle con il set di funzioni che seguono.

    
risposta data 16.11.2016 - 13:42
fonte

Leggi altre domande sui tag