Profiling ist richtig und wichtig denn nur so erkennt man Schwachstellen im Code aber auch in der Struktur.
Es geht dabei immer darum die bestmöglichste Leistung heraus zu holen.
Was diese bestmögliche Leistung aber sein soll, wo ihre Grenze liegen muss das sollte man vorher genau definieren, denn optimieren kann man ohne Ende.
Bei einem weiten Fortschritt geht es dann aber nur noch um sehr kleine Erfolge.
Die Optimierung sollte man dann abbrechen wenn das gesetzte Ziel unter allen Umständen erreicht wird.
So kann man sofort erkennen wo man zu suchen hat.
Die Auflistung nach ausgegebenen Kosten (Zeiten) ist zudem sehr hilfreich.
Auch hier kann man sehr gut ansetzen um Code zu untersuchen und sich nebenbei Gedanken über die richtige Struktur von Code und Daten zu machen.
Häufig genug ist eine mangelnde Leistung eine Sache eben mangelhafter Programmstrukturen - eine Optimierung in Codedetails wird dann nie den erhofften Leistungsschub bringen sondern immer nur Kleinkram.
Der Kleinkram in der Summe kann es in sich haben wird aber nie schwerwiegende Strukturfehler ausgleichen.
Grafische Aufbereitungen liefern ein direktes Bild wo viel Zeit verbraten wird. Stehen einzelne Klassen und Funktionen in Bezug um eine bestimmte Aufgabe zu lösen und sind die Grafiken groß hat man einen Anhaltspunkt auf schwerwiegende Strukturfehler.
Im blauen Bild klar zu erkennen - die Aufbereitung der Navigation bei Cmsmadesimple kostet viel zu viel - ein ganz klarer Fall eines fehlerhaften Ansatzes.
Zudem ist auch zu erkennen ob man eine Rekursion bewusst oder versehentlich verwendet.
Hier - wieder bei Cmsmadesimple ist es wohl mangelnder Durchblick über Zusammenhänge einzelner Programmteile.
Rekursion in einem komplexen Umfeld führt zu einem enormen Leistungsabfall.
Schaut man sich das alles sortiert nach Kosten an fallen einem sofort Sachen auf die so eigentlich nicht vorhanden sein dürften.
Auch hier - bei Kenntnis der Zusammenhänge zeigt es sich deutlich - die Aufbereitung des Menüsystems ist voll daneben.



Keine Kommentare:
Kommentar veröffentlichen