Beeinflussen Variablennamen die Leistung der Website? Ich weiß, dass dies eine sehr niedrige Zahl sein wird, aber kann dennoch jemand die Gründe dafür angeben, dass in Bezug auf die Leistung kein langer Variablenname gewählt wurde?
web-development
performance
naming
php
Avinash
quelle
quelle
Antworten:
Nein es wird nicht. Im Allgemeinen werden beim Kompilieren von Code die Variablennamen durch die Speicheradresse ersetzt, auf die sie sich beziehen. Computer wissen nichts über Variablennamen. Sie wollen nur wissen, wo Werte gespeichert sind.
Variablen sind Symbole, nichts weiter. Sie ersetzen Hex-Werte durch Namen, damit Programmierer leichter verstehen, was sie tun. Durch die Auswahl kürzerer Variablennamen wird also keine Leistungssteigerung erzielt.
Das heißt, Sie erhalten möglicherweise winzige (und ich spreche von mikroskopischen) Verbesserungen der Kompilierungszeiten und der ersten JIT-Interpretation, aber das liegt nur daran, dass der Parser einige CPU-Zyklen weniger benötigt, um den Variablennamen zu lesen. Dies ist ein einmaliger Kostenfaktor und statistisch unbedeutend, wenn Sie sich um die Leistung sorgen.
quelle
Michael behandelte die Antwort (dh Nein), aber Variablennamen wirken sich auf die Leistung des Programmierers aus . Wenn Sie einen neuen Entwickler oder jemanden hinzuziehen, der mit dem Code nicht vertraut ist, können lange und / oder verwirrende Variablennamen ablenken und den Verständnisprozess verlangsamen.
Im Allgemeinen möchten Sie kurze, beschreibende Variablennamen verwenden, da diese leichter zu lesen sind. Stellen Sie sich vor, Sie müssen Ihren Code 10 Jahre lang ignorieren und dann alles wieder verstehen. Möchten Sie lieber "getInput" oder "getInputFromUserWhoInputsStringOrElseInformReaderOfError" lesen? (Übertreibung natürlich: P)
Es gibt jedoch Zeiten, in denen ein etwas längerer Name von Vorteil sein kann. Zum Beispiel wäre getBirthdayInput () viel aussagekräftiger als getInput (). Sie möchten bis zu einem gewissen Punkt vereinfachen, aber eine zu starke Vereinfachung kann auch problematisch sein.
quelle
Wenn Sie keinen Op-Code-Cache verwenden (auch als "PHP-Beschleuniger" bezeichnet), gibt es tatsächlich Auswirkungen. Diese Auswirkungen sind jedoch so gering, dass sie vernachlässigt werden können. Wenn Sie den Op-Code-Cache verwenden, hat dies keine Auswirkungen.
quelle
Während Michael für die Anwendungsprogrammierung korrekt ist, bezieht sich Ihre Frage auf die Webentwicklung mit PHP, einer interpretierten Sprache. In einem solchen Fall müsste der Code aus der Datei eingelesen und dann interpretiert werden. In diesem Fall dauert das Laden und Parsen eines längeren Variablennamens länger.
Der damit verbundene Leistungseinbruch wird jedoch unbedeutend sein und wahrscheinlich für einen gesamten Skript im Bereich von Bruchteilen einer Millisekunde liegen. Sie können es jederzeit mit einem Beispielskript ausprobieren und eine Timing-Methode wie die unter http://www.developerfusion.com/code/2058/determine-execution-time-in-php/ beschriebene verwenden. Dies ist jedoch wahrscheinlich nicht der Fall Starten Sie das Timing, bis die Datei eingelesen wurde. Außerdem variiert die Ausführungszeit zwischen den Wiederholungsversuchen erheblich mehr als die Differenz zwischen den variablen Namenslängen. Sie müssen daher eine erhebliche Anzahl von Wiederholungsversuchen durchführen und den Durchschnitt der einzelnen Versuche ermitteln, bevor Sie dies tun können Erhalten Sie einen entfernt aussagekräftigen Durchschnitt.
Wie BlackJack hervorhebt, können längere Namen viel schwieriger zu verstehen sein und erfordern viel zusätzlichen Aufwand beim Tippen (und sind viel anfälliger für Tippfehler). Es kann zwar zu einem winzigen Leistungsgewinn kommen, dies rechtfertigt jedoch nicht den zusätzlichen Aufwand, der für den Programmierer entsteht. Daher werden kurze, präzise und leicht verständliche Variablennamen bevorzugt.
Kurz gesagt, machen Sie sich keine Sorgen über den Namen mit variabler Länge, sondern konzentrieren Sie sich darauf, sauberen, aussagekräftigen Code zu schreiben.
quelle
Vielleicht :
Servercode wird normalerweise kompiliert und die Länge des Variablennamens hat aus den genannten Gründen keinen Einfluss darauf. Wenn der Variablenname jedoch zum Erstellen von Markups verwendet wird, werden verschiedene Zeichenfolgenoperationen ausgeführt. Da die HTTP-Antwort (die Markup / zurückgegebene JSON / zurückgegebene Daten enthält) größer ist, dauert sie etwas länger, obwohl der Unterschied vernachlässigbar ist. Wenn JavaScript nicht minimiert wird, handelt es sich um eine größere Datei, deren Übertragung zum Client länger dauert.
Abgesehen von der Minimierung von JavaScript-Dateien werden Optimierungsbemühungen für eine Webanwendung / Website besser für andere Aspekte aufgewendet.
quelle
Ja, aber nicht in dem Sinne, an den Sie denken.
Bei schlechten Variablennamen werden Entwickler im Quellcode leicht verwirrt. Es wird schwer zu lesen und schwer zu verstehen sein.
Am Ende wird der Quellcode schwer zu pflegen sein und es wird fast unmöglich sein, ihn weiterzuentwickeln. Dies führt zwangsläufig zu höheren Wartungskosten, höheren Entwicklungskosten, mehr Fehlern und schlechteren Leistungen .
Der Variablenname hat zur Laufzeit absolut keinen Einfluss und ist zur Kompilierungszeit völlig vernachlässigbar. Aber schlechte Namen führen unweigerlich zu einer schlechten Leistung, da niemand den Code versteht und er in einem Stapel von Hacks übereinander endet, was die Situation jedes Mal verschlimmert.
Lesen Sie diese, um mehr über den guten Variablennamen zu erfahren: http://tottinge.blogsome.com/meaningfulnames
Beachten Sie, dass Ihr Code schlecht strukturiert ist, wenn Sie einen sehr langen Variablennamen benötigen. Ein Variablenname wird immer in einem Kontext ausgedrückt: Namespace, Klassenname, Dateiname, Ordner, Funktionsname usw. Wenn der Name also lang sein muss, um explizit zu sein, bedeutet dies, dass das, was Sie benennen möchten, DOESN ' T HIER GEHÖREN . Denken Sie in diesem Fall daran, diesen Code an der entsprechenden Stelle abzulegen, oder erstellen Sie diesen Ort, falls er noch nicht vorhanden ist.
quelle