AGB  ·  Datenschutz  ·  Impressum  







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

Die "richtige" Sourcecode Formatierung?

Ein Thema von Mavarik · begonnen am 8. Aug 2016 · letzter Beitrag vom 13. Aug 2016
Antwort Antwort
Seite 1 von 2  1 2      
bra

Registriert seit: 20. Jan 2015
711 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#1

AW: Die "richtige" Sourcecode Formatierung?

  Alt 9. Aug 2016, 10:20
Aber es gibt tatsächlich Formatierungsrichtlinen von Borland...Codegear...Embarcadero
Ich halte mich sogar (unbewusst) weitestgehend an die, außer das mit dem begin nach if/while usw. mache ich anders
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

AW: Die "richtige" Sourcecode Formatierung?

  Alt 9. Aug 2016, 10:26
Aber es gibt tatsächlich Formatierungsrichtlinen von Borland...Codegear...Embarcadero
Ich halte mich sogar (unbewusst) weitestgehend an die, außer das mit dem begin nach if/while usw. mache ich anders
Ich kann die Logik hinter dieser Formatierung nicht verstehen. Nach dem offiziellen Style sind begin/end auf einer Ebene, Man sieht sofort welches begin zu welchem end gehört.
Welchen Vorteil soll es haben das begin hinter das then zu schreiben?
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Die "richtige" Sourcecode Formatierung?

  Alt 9. Aug 2016, 10:54
Ich kann die Logik hinter dieser Formatierung nicht verstehen. Nach dem offiziellen Style sind begin/end auf einer Ebene, Man sieht sofort welches begin zu welchem end gehört.
Welchen Vorteil soll es haben das begin hinter das then zu schreiben?
Meiner Meinung nach ergibt sich das aus dem Textfluß
entweder
if Bedingung then machwas; oder
Delphi-Quellcode:
if Bedingung then begin
  machwas;
  machmehr;
end;
Wenn das begin in die nächste Zeile rutscht, sieht das so eigenständig aus und mir fehlt da der Bezug zum if.
Das fällt besonders auf wenn kein Syntaxhighlighting aktiv ist.


Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector

Geändert von p80286 ( 9. Aug 2016 um 10:56 Uhr)
  Mit Zitat antworten Zitat
bra

Registriert seit: 20. Jan 2015
711 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#4

AW: Die "richtige" Sourcecode Formatierung?

  Alt 9. Aug 2016, 10:55
Ich kann die Logik hinter dieser Formatierung nicht verstehen. Nach dem offiziellen Style sind begin/end auf einer Ebene, Man sieht sofort welches begin zu welchem end gehört.
Welchen Vorteil soll es haben das begin hinter das then zu schreiben?
Ich finde es einfach nur schrecklich unübersichtlich sowas hier zu schreiben, weil hier die else-Teile in dem end/begin total untergehen und man auch wieder nicht sieht, zu welchem begin das end jetzt wieder gehört.

Delphi-Quellcode:
if .. then
begin
  ..
end
else if .. then
begin
  ..
end
else
begin
  ..
end;
Für mich ist das übersichtlicher und genauso logisch, da das if/else und das zugehörige end auf einer Höhe sind.
Delphi-Quellcode:
if .. then begin
  ..
end
else if .. then begin
  ..
end
else begin
  ..
end;
Unter C/Java ist meine Schreibweise sogar die empfohlene (dort halt mit Klammern).
  Mit Zitat antworten Zitat
bcvs

Registriert seit: 16. Jun 2011
733 Beiträge
 
Delphi 12 Athens
 
#5

AW: Die "richtige" Sourcecode Formatierung?

  Alt 9. Aug 2016, 11:23
Delphi-Quellcode:
if .. then begin
  ..
end
else if .. then begin
  ..
end
else begin
  ..
end;
Dem kann ich mich nur anschießen. Ich schreibe es genau so. Außerdem ist für mich das Argument mit der eingesparten Zeile nach wie vor nicht von der Hand zu weisen. Gerade in längeren Blöcken mit vielen Elsen kommt da einiges zusammen.
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

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

AW: Die "richtige" Sourcecode Formatierung?

  Alt 9. Aug 2016, 12:25
Außerdem ist für mich das Argument mit der eingesparten Zeile nach wie vor nicht von der Hand zu weisen. Gerade in längeren Blöcken mit vielen Elsen kommt da einiges zusammen.
Zeilen einsparen? Wofür?

Es wird Dir zu lang... Mach ne procedure draus...

Quelltext ohne Leerzeile kann ich gar nicht lesen...

Vor und nach jedem if/while/for/repeat kommt auf jeden Fall eine Leerzeile. Es sei den es steht ein Begin davor...

Genauso gibt es niemals zwei Anweisung oder Zuweisung in einer Zeile.

Funktionen die keinen Parameter haben werden mit Foo(); geschrieben... Damit ich sofort sehe, dass es keine Variable ist, sondern ein Call...

Sir Rufo hat da noch eine ganz besondere Konstruktion für If's mit langen and und or Teilen, die auch die Lesbarkeit verbessert...

Delphi-Quellcode:
procedure TForm1.SpeedButton1Click( Sender: TObject );
var
  lRateThisApp: IFDKRateThisAppService;
begin
  if true
  {} and TPlatformServices.Current.SupportsPlatformService( IFDKRateThisAppService, lRateThisApp )
  {} and lRateThisApp.ShowRateDialogIfNeeded( )
  then
    Log( 'Dialog angezeigt' );
end;
Einfach die Bedingungen bei allen {} durch gehen und schon ist klar worum es geht...

Mavarik
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.740 Beiträge
 
Delphi 6 Enterprise
 
#7

AW: Die "richtige" Sourcecode Formatierung?

  Alt 9. Aug 2016, 15:26
Ich finde es einfach nur schrecklich unübersichtlich sowas hier zu schreiben, weil hier die else-Teile in dem end/begin total untergehen und man auch wieder nicht sieht, zu welchem begin das end jetzt wieder gehört.

Delphi-Quellcode:
if .. then
begin
  ..
end
else if .. then
begin
  ..
end
else
begin
  ..
end;
Dafür gibt es aber doch das Einrücken, so wie das Beispiel ist würde man das doch nicht machen.
Mit Einrücken wird dann doch klar welches begin/end zusammen gehört.

Delphi-Quellcode:
if .. then
  begin
  ..
  end
else if .. then
  begin
  ..
  end
else
  begin
  ..
  end;
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#8

AW: Die "richtige" Sourcecode Formatierung?

  Alt 9. Aug 2016, 16:24
Dafür gibt es aber doch das Einrücken, so wie das Beispiel ist würde man das doch nicht machen.
Mit Einrücken wird dann doch klar welches begin/end zusammen gehört.
Das find ich mindestens genauso schlimm wie das begin hinter das then zu schreiben. Vielleicht sogar ein Stück schlimmer
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.307 Beiträge
 
Delphi 12 Athens
 
#9

AW: Die "richtige" Sourcecode Formatierung?

  Alt 9. Aug 2016, 17:05
Ich liebe solche Threads

Hier ist mein Beitrag zu den If then else

Delphi-Quellcode:
  
  If bla then
    TuWas;

  If bla then
    TuWas
  else
    TuWasAnderes;

  If bla then
    begin
      TuWas;
      TuNochWas;
    end
  else
    begin
      TuWasAnderes;
      TuNochWasAnderes;
    end;

  If bla then
    begin
      TuWas;
    end
  else
    If blabla then
      begin
        TuNochWas;
      end;
Eine Zeile, die mit "if" beginnt, hört immer mit "then" auf.

"Darunter" kommt die auszuführende Funktion. Natürlich eingerückt.

Das gilt auch für das Begin und End, die auf eine ebene gehören.

Bei verschachtelten Ifs finde ich, ist eine Einrückung des nächsten If zwingend notwendig, damit ich auf einen Blick sehe, dass es eine Verschachtelung ist.
Gerd
Kölner Delphi Usergroup: http://wiki.delphitreff.de
  Mit Zitat antworten Zitat
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.307 Beiträge
 
Delphi 12 Athens
 
#10

AW: Die "richtige" Sourcecode Formatierung?

  Alt 9. Aug 2016, 17:14
Auch wenn solche Threads sich wiederholen. Etwas kann man immer mitnehmen.

Durch solche Threads habe ich für mich das "Exit" entdeckt. Gibt's natürlich schon länger und habe ich bisher immer als "bah" angesehen. Beim näheren Hinsehen kann man das aber sehr sinnvoll als ersatz für die If-Verschachtelung verwenden.

Statt

Delphi-Quellcode:
  if bla then
    Result = 3
  else
    if blabla then
      Result = 5
    else
      if Blub then
        Result = 8
      else
        Result = 10
Finde ich folgendes besser lesbar

Delphi-Quellcode:
  if bla then
    Exit(3);
  if blabla then
    Exit(5);
  if Blub then
    Exit(8);
  Result = 10
Gerd
Kölner Delphi Usergroup: http://wiki.delphitreff.de
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 18:02 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