Skip to main content

Was ist Programmoptimierung?

Die Programmoptimierung ist der Prozess der Änderung eines Computerprogramms auf eine Weise, die dazu führt, dass das Programm schneller ausgeführt, weniger Ressourcen verbraucht oder im Allgemeinen mit einem höheren Effizienzniveau funktioniert.Die Optimierungsaufgabe kann automatisch von einigen Programmiersprachen Compilern durchgeführt werden, indem sie ein Optimierungsprogramm verwenden oder von Programmierern manuell, die den Quellcode durchlaufen und versuchen, spezifische Verbesserungen vorzunehmen.Im Allgemeinen wird die Programmoptimierung mit einem bestimmten Zweck durchgeführt, da nur sehr wenige allgemeine Optimierungen an einem Programm vorgenommen werden können, das den optimierten Zustand eines anderen Teils des Programms nicht reduziert, was bedeutet, dass ein Programm normalerweise kannSeien Sie optimiert für Geschwindigkeit oder Ressourcenverwendung, aber normalerweise nicht beides.Eine Komplikation, die mit einigen Arten der Optimierung auftreten kannInterpretierte Sprachen, die Just-in-Time-Zusammenstellung (JIT) verwenden.

Ein wichtiges Konzept für die Programmoptimierung ist die Idee, dass eine Optimierung normalerweise mit einem Preis verbunden ist.Ein Beispiel hierfür ist, dass, wenn ein Code -Stück optimiert wird, um schneller zu laufen, die Geschwindigkeitssteigerung zum Preis der Code -Lesbarkeit, der Speicherverwendung, der Programmflexibilität oder einer Reihe anderer Kosten erfolgen kann.Dies bedeutet, dass die Programmoptimierung ein gezielter Prozess sein muss, mit der Absicht, einen Aspekt eines Programms besser funktionieren zu lassen und gleichzeitig bereit zu sein, die Effizienz anderer Aspekte zu opfernProgramm Entwicklung.Während des Designs kann eine breite Optimierung durchgeführt werden, indem sichergestellt werden, dass ein Programm effektiv zu betreiben scheint.Bei der Arbeit mit dem tatsächlichen Quellcode können Optimierungen sicherstellen, dass keine fremden Befehle, sich wiederholende Anrufe oder schlecht geschriebene Funktionen vorhanden sind.Bei der Zusammenstellung werden viele Optimierungen automatisch vom Compiler durchgeführt und können durch die Verwendung verschiedener Compiler -Switches oder Richtlinien vom Programmierer geführt werden.Zu komplex, um für menschliche Programmierer praktisch zu sein.Dies kann die Umzugsanweisungen in ein Programm beinhalten, damit sie aus der ursprünglich geschriebenen Reihenfolge ausgeführt werden, aber für den Prozessor effizienter.Es kann auch absichtlich absichtlich verschoben werden, um Ressourcen wie Speicherblöcke zu verlagern, damit sie schneller zugreifen können.Die meisten Programmoptimierung erfolgen automatisch auf Compiler -Ebene.

Eine Komplikation mit wiederholten oder aggressiven Programmoptimierung besteht darin, dass ein Programm, sobald es geändert wurde, effizienter auszuführenFehler beheben.Dies kann auftreten, wenn die Optimierungen anfangen, das festgelegte Programmverhalten zu sperren, die nicht leicht geändert oder an einen neuen Code angepasst werden, ohne dass alle Optimierungen rückgängig gemacht werden müssen.Ein größeres Problem ist, dass in vielen Fällen ein optimiertes Programm weniger menschlich lesbar wird, da Tricks und Verknüpfungen anstelle von kurzen Befehlen und klassischen Kontrollstrukturen verwendet werden.Aus diesen Gründen gibt es häufig ein Maß an Programmoptimierung, bei dem es akzeptabel ist, zu stoppen, auch wenn drastische Code -Änderungen ein Programm etwas effizienter funktionieren können.