Zitat:
@Hagen: Nested Functions oder Nested Procedures sollen aber, so habe ich gehört, der Performance-Killer überhaupt sein.
Ach was man nicht alles so hört ??
Wenn man es richtig anstellt und innerhalb der nested Procedure auf keine übergeordneten Variablen zugreift, und sie schön kurz hält dann sind sie öfters sogar besser optimiert durch den Compiler als normale Methoden oder Proceduren. Einzigst der CALLER hat ein PUSH/POP mehr.
Selbst wenn man auf übergeordnete Variablen zugreift, besonders wenn es viele sind dann kann das in der Performance zum Guten umkippen. Es ist nämlich ein Unterschied wenn der Compiler über EBX, und nur einmal EBX pushed, auf 100 solcher Variablen des übergeordneten Stacks direkt zugreifen kann, statt sie mit 100 Parametern einer normalen Procedure zu übergeben. Alles ist relativ, und besonders die Aussagen vieler Experten, so auch meiner
(aber 15 Jahre Erfahrungen bingen es dann doch wieder
)
Achso: ganz im Gegensatz zu anderen, bin ich der Meinung das Nested Procedures exakt die Guidelines der Modularisierung unterstützen, also ein guter Programmierstil sind. In fact sie sind strenger und besser als ein Object mit 1000 Methoden zu versehen.
Gruß Hagen