Einzelnen Beitrag anzeigen

Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.130 Beiträge
 
Delphi 10.3 Rio
 
#10

AW: Styleguide für Parameteranordnung

  Alt 26. Aug 2016, 10:13
Gibt es eigentlich ein Styleguide oder ein "best practice" für die Anordnung von Parametern?
Best Practice hab ich noch nicht gesehen...

Aber ich habe meine eigenen Regeln und daran halte ich mich...

AOwner / AParent 1. Parameter wenn es beide gibt Owner first.
Letzter Parameter (Wenn nicht default Parameter) dann ist es die Proc<T>
Out Parameter so weit nach hinten wie es geht.
Ansonsten
Reihenfolge gemäß Datengröße (Nicht unbedingt die eigentlich) Selbst wenn ein TObject nur ein Pointer ist und ein String ggf. als Daten übergeben werden...

TObject, String, Integer, Boolean // Da die Strings, Integer und Booleans i.d.R. die Kontrolle über die
Verwendung von TObject regeln..

Ausnahmen: Selecting String, selecting Interfaces Beispiel:

Procedure Foo(AKunde : TKunde; AInvoce : TProc<TKunden>;Const SaveWhere : String); oder
Procedure Foo(AKunde : TKunde; ASaveLogic : ICanSaveKunden);
Aufruf:

Delphi-Quellcode:
begin
  if RESTServer
    then begin
           Foo(LKunde,Procedure (AKunde : TKunden)
             begin
               AKunde.LastUser := AktUser;
               AKunde.Compress;
             end,'SaveAsJason');
         end
    else begin
           Foo(LKunde,Procedure (AKunde : TKunden)
             begin
               AKunde.LastUser := AktUser;
               AKunde.DataFormat := AktDoc2XML;
             end,'SaveAsStream');
         end;
end;
oder

Delphi-Quellcode:
var
  SaveAs : String;
begin
  if RESTServer
    then SaveAs := 'SaveAsJson'
    else SaveAs := 'SaveAsStream';

  Foo(LKunde,TAnyFactory.Default.CreateObj<ICanSaveKunden>(SaveAs));
end;
Mavarik
  Mit Zitat antworten Zitat