Hallo!
Ich habe einen Codeabschnitt der in mehreren Funktionen verwendet wird und aus einer Variable 3 neue Variablen berechnet. Mein Problem ist jetzt, dass ich nur 2 Möglichkeiten gefunden hab:
1) Ich kopiere den Codeabschnitt in jede Funktion rein und hab Probleme falls sich was ändert
2) Ich mach aus dem Codeabschnit eine neue Prozedur,
procedure Zwischenberechnung(const a; out b, c, d);
die dann immer aufgerufen wird und der Code braucht dann ~10% mehr Zeit.
Ich bin mit beiden Möglichkeiten unzufrieden.

Die zusätzliche Zeit wär mir ja eigentlich egal, aber gleich 10% mehr für die exakt gleiche Funktionalität nervt mich schon ...
Gibt es eine weitere Möglichkeit???
Grüße
blablab
Generell würde ich immer dazu raten, Teilaufgaben auch in eigene Methoden/Prozeduren auszulagern. Das erhöht die Lesbarkeit und Wartbarkeit deines Codes. Handelt es sich dabei um extremst zeitkritische Aufgaben, die es nicht erlauben, die Zeit für einen Methoden-/Prozeduraufruf in Kauf zu nehmen, muss man sich eine andere Lösung (wie bereits gezeigt, inline, über include Dateien, etc) überlegen. Fraglich ist halt, ob deine Zwischenberechnung so zeitkritisch ist.

Zitat von
Michael A. Jackson:
The First Rule of Program Optimization: Don't do it. The Second Rule of Program Optimization (for experts only!): Don't do it yet.