Hallo zusammen,
in meinem Code muss ich in den verschiedensten Proceduren immer wieder
dieselben Bedingungen abfragen. In den Bedingungen werden verschiedenste Stati geprüft.
Das produziert Unmengen an gleichen Code und ist somit schwer wartbar/erweiterbar/ anpassbar.
Wenn es geht, würde ich das gerne ändern und suche daher nun ein Konzept.
Beispiel:
Delphi-Quellcode:
procedure Tfrm_Main.machwas;
var
ls_FileName : string;
RecIdx, RowIdx : Integer;
begin
ls_FileName := ....;
RecIdx := ....;
RowIdx := ....;
if gb_Stati_1 then
begin
procedur 1(ls_FilenName, RecIdx, RowIdx);
end else if gb_Stati_4 then
begin
procedur 2(ls_FilenName, RecIdx, RowIdx);
end;
....
end;
Im Prinzip soll in der Procedure "machwas" die ganzen Abfragen wegfallen die dann in
einer globalen Procedure(?) stehen und der man als Parameter für die einzelnen Bedingungen eine andere Proceduren übergeben kann.
Beispiel:
Delphi-Quellcode:
procedure Tfrm_Main.Check_Statis(const procedure x, const procedure y);
begin
if gb_Stati_1 then
begin
x; //<== meine 1. "variable" Procedure
end else if gb_Stati_4 then
begin
y; //<== meine 2. "variable" Procedure
end;
....
end;
procedure Tfrm_Main.machwas;
var
ls_FileName : string;
RecIdx, RowIdx : Integer;
begin
ls_FileName := ....;
RecIdx := ....;
RowIdx := ....;
Check_Statis(x, y);
So meine Vorstellungen.
Die Bedingungen sind einiges komplexer wie hier dargestellt und die Anzahl der Proceduren (also die Anzahl der Bedingungen) sind momentan 8 Stk.
Ich denke das es für die Profiprogrammierer dafür eine Lösung geben müsste.
Gibt es die Möglichkeiten einer Procedure als Parameter eine andere Procedure zu übergeben? Oder wie löst man diese Anfortderung?
Leider bin ich (noch) sehr procedure-lastig beim Hobby-programmieren.
Ich hoffe ich konnte mein Problem überhaupt verständlich darstellen und bedanke mich schon mal vorab für Ideen und Konzeptvorschläge.