I nomi delle variabili influiscono sulle prestazioni del sito Web? So che questo sarà un numero molto basso, ma qualcuno può ancora fornire i motivi per non scegliere un nome di variabile lungo in termini di prestazioni?
I nomi delle variabili influiscono sulle prestazioni del sito Web? So che questo sarà un numero molto basso, ma qualcuno può ancora fornire i motivi per non scegliere un nome di variabile lungo in termini di prestazioni?
Risposte:
qualcuno può fornire i motivi per non scegliere un nome di variabile lungo in termini di prestazioni?
Michael ha coperto la risposta (ovvero No) ma i nomi delle variabili influiscono sulle prestazioni del programmatore . Se porti un nuovo sviluppatore o qualcuno che non ha familiarità con il codice, avere nomi di variabili lunghi e / o confusi può distrarre e rallentare il processo di comprensione.
In generale, si desidera utilizzare nomi di variabili brevi e descrittivi perché sono più facili da leggere. Immagina se devi ignorare il tuo codice per 10 anni e poi capire di nuovo tutto. Preferiresti leggere "getInput" o "getInputFromUserWhoInputsStringOrElseInformReaderOfError"? (esagerazione ovviamente: P)
Ci sono volte, tuttavia, in cui avere un nome leggermente più lungo può essere utile. Ad esempio, getBirthdayInput () sarebbe molto più descrittivo di getInput (). Vuoi semplificare fino a un certo punto, ma l'eccessiva semplificazione può anche essere problematica.
No, non lo farà. In generale, quando viene compilato il codice, i nomi delle variabili vengono sostituiti dall'indirizzo di memoria a cui si riferiscono. I computer non sanno nulla dei nomi delle variabili; vogliono solo sapere dove sono memorizzati i valori.
Le variabili sono simboli, niente di più. Sostituiscono i valori esadecimali con i nomi in modo che i programmatori possano capire più facilmente cosa stanno facendo. Quindi, non ci sarà alcun aumento delle prestazioni scegliendo nomi di variabili più brevi.
Detto questo, potresti ottenere minuscoli (e sto parlando microscopici) miglioramenti nei tempi di compilazione e nella prima interpretazione di JIT, ma questo è solo perché il parser impiega alcuni cicli della CPU in meno per leggere il nome della variabile. Questo è un costo una tantum ed è statisticamente insignificante quando preoccuparsi delle prestazioni.
A meno che non si stia utilizzando la cache del codice operativo (nota anche come "acceleratori PHP"), si ha effettivamente un impatto. Ma quell'impatto è così basso, che può essere trascurato. Se si utilizza la cache del codice operativo, non si verifica alcun impatto.
Mentre Michael ha ragione per la programmazione dell'applicazione, la tua domanda si riferisce allo sviluppo web con PHP, che è un linguaggio interpretato. In tal caso, il codice dovrebbe essere letto dal file, quindi interpretato. In questo caso, un nome di variabile più lungo richiederà più tempo per caricare e analizzare.
Tuttavia, il risultato della performance sarà insignificante e probabilmente sarà nella regione di frazioni di un millisecondo per un intero script. Puoi sempre provarlo con uno script di esempio e utilizzare un metodo di temporizzazione come quello dettagliato su http://www.developerfusion.com/code/2058/determine-execution-time-in-php/ ma probabilmente non lo farà avviare il cronometraggio fino a dopo che il file è stato letto. Inoltre, il tempo di esecuzione tra i tentativi varierà molto più della differenza tra le lunghezze dei nomi delle variabili, quindi sarà necessario eseguire un numero significativo di tentativi e prendere la media di ciascuno prima di poter ottenere una media lontanamente significativa.
Come sottolinea BlackJack, i nomi più lunghi possono essere molto più difficili da comprendere e richiedono molto più sforzo per scrivere (e sono molto più inclini a errori di battitura). Sebbene ci possa essere un piccolo aumento delle prestazioni, ciò non giustifica la seccatura aggiuntiva creata per il programmatore. Pertanto, sono preferiti nomi di variabili brevi, concisi e di facile comprensione.
Quindi in breve, non preoccuparti del nome di lunghezza variabile, ma concentrati invece sulla scrittura di codice pulito e significativo.
Forse :
Il codice del server viene in genere compilato e la lunghezza del nome della variabile non lo influenzerà per i motivi indicati. Tuttavia, se il nome della variabile viene utilizzato per creare markup varie operazioni di stringa. Poiché la risposta HTTP (contenente markup / dati json restituiti / resi) è più grande, ci vorrà un po ' più di tempo, anche se la differenza sarà trascurabile. Se JavaScript non è minimizzato, sarà un file più grande, impiegando più tempo a viaggiare verso il client.
Oltre a minimizzare i file JavaScript, qualsiasi sforzo di ottimizzazione per un'applicazione Web / sito Web verrà speso meglio su altri aspetti.
Sì, ma non nel senso a cui stai pensando.
Con nomi di variabili errati, gli sviluppatori verranno facilmente confusi nel codice sorgente. Sarà difficile da leggere e difficile da capire.
Alla fine, il codice sorgente sarà difficile da mantenere e sarà quasi impossibile farlo evolvere. Ciò porterà inevitabilmente a maggiori costi di manutenzione, maggiori costi di sviluppo, più bug e prestazioni peggiori .
Il nome della variabile non avrà assolutamente alcuna influenza in fase di esecuzione e totalmente trascurabile al momento della compilazione. Ma i nomi cattivi porteranno inevitabilmente a cattive prestazioni perché nessuno capisce il codice e finisce in una pila di hack uno sopra l'altro, peggiorando le cose ogni volta.
Leggi questi per conoscere il buon nome della variabile: http://tottinge.blogsome.com/meaningfulnames
Nota che se senti la necessità di un nome di variabile molto lungo, significa che il tuo codice è scarsamente progettato. Un nome di variabile viene sempre espresso in un contesto: spazio dei nomi, nome della classe, nome del file, cartella, nome della funzione, ecc. Pertanto, se il nome deve essere lungo per essere esplicito, ciò significa che la cosa che si sta tentando di nominare NON FA ' T QUI APPENA QUI . In questo caso, pensa a mettere questo codice nel posto appropriato o crealo se non esiste ancora.
La risposta è ovviamente sì, per quanto riguarda php.
Le risposte che dicono che non farà la differenza non sono necessariamente corrette. Ad esempio, ho un piccolo script php, solo poche righe, ma deve essere ripetuto circa 1.950.000 volte prima di terminare il suo lavoro, quindi anche se una singola esecuzione dello script potrebbe non essere notata, quelle frazioni di secondo si sommano sostanzialmente quando loop più volte.
Puoi usare nomi brevi che rendono il tuo codice meno leggibile. Risparmierai un microsecondo o due. Ma poiché il codice è meno leggibile, è più difficile migliorarlo e renderlo più veloce. Quindi il tuo codice non mantenibile, non migliorabile con nomi brevi finirà per essere significativamente più lento alla fine.
Quindi, per rispondere alla tua domanda ("influisce sulle prestazioni"): Sì, ma non nel modo che preferisci.