AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Objekte zur Laufzeit erzeugen

Ein Thema von Luki206 · begonnen am 18. Mai 2014 · letzter Beitrag vom 24. Jun 2014
Antwort Antwort
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

AW: Objekte zur Laufzeit erzeugen

  Alt 20. Mai 2014, 07:22
So dann will ich auch noch mal einen zum Besten (bzgl. der Formatierung) geben.

3 Varianten
Delphi-Quellcode:
procedure Foo1;
begin
if Voraussetzung then begin
MeinCode1;
MeinCode2;
end else begin
MeinCode2;
MeinCode1;
end;
end;

procedure Foo2;
begin
  if Voraussetzung then
  begin
    MeinCode1;
    MeinCode2;
  end
  else
  begin
    MeinCode2;
    MeinCode1;
  end;
end;

procedure Foo3;
begin
  if Voraussetzung
  then
    begin
      MeinCode1;
      MeinCode2;
    end
  else
    begin
      MeinCode2;
      MeinCode1;
    end;
end;
und was CnPack daraus macht
CnPack_Format.png
Ja, aus dem Grund nehme ich Variante 3
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.826 Beiträge
 
Delphi 12 Athens
 
#2

AW: Objekte zur Laufzeit erzeugen

  Alt 20. Mai 2014, 08:23
Das versteh ich nicht, guter Sir. Warum Variante 3? Die ist... nicht schön. then in einer eigenen Zeile? Also wirklich.

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: Objekte zur Laufzeit erzeugen

  Alt 20. Mai 2014, 08:43
Das versteh ich nicht, guter Sir. Warum Variante 3? Die ist... nicht schön. then in einer eigenen Zeile? Also wirklich.

Sherlock
Macht nichts, denn schön liegt im Auge des Betrachters

Für mich zählt nur die Lesbarkeit und damit ist es für mich einfacher (damit schneller) die Struktur zu erfassen.
Sobald die Bedingungen etwas umfangreicher werden (ab einer gewissen Schmerzgrenze lager ich aber Teile in Funktionen aus), dann schreibe ich das sogar so:
Delphi-Quellcode:
if //
  Bedingung1 or //
  Bedingung2 or //
  Bedingung3 and Bedingung4 //
then
  Foo
else
  Bar;
Dein Vorschlag wäre ja dann so
Delphi-Quellcode:
if Bedingung1 or Bedingung2 or Bedingung3 and Bedingung4 then
  Foo
else
  Bar;
Und wenn der automatische Zeilenumbruch (Codeformatierung) zuschlägt, dann wird es ganz doof
Delphi-Quellcode:
if Bedingung1 or Bedingung2 or
  Bedingung3 and Bedingung4 then
  Foo
else
  Bar;
Jetzt ist nicht auf einen kurzen Blick erkennbar, was wohin gehört. Bei meiner Variante sehe ich die einzelnen Teile sofort.

Und selbst diese Variante (ohne Zeilenkommentare) ist besser lesbar
Delphi-Quellcode:
if Bedingung1 or Bedingung2 or
  Bedingung3 and Bedingung4
then
  Foo
else
  Bar;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz