AGB  ·  Datenschutz  ·  Impressum  







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

Allgemeine Delphisyntax

Ein Thema von Marphy · begonnen am 7. Jun 2005 · letzter Beitrag vom 9. Jun 2005
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#11

Re: Allgemeine Delphisyntax

  Alt 7. Jun 2005, 18:33
Hi,

in vielen Punkten gebe ich Dir recht, jedoch mache ich einige Dinge anders.

Unter anderem rücke ich immer mit zwei Zeichen (bzw. je nach tiefe mit 4, 6, ...) ein. Habe das in der Schule so gelernt. Echte Tabs sind für mich zu viel Leerraum.

Ich schreibe reservierte Wörter grundsätzlich klein, dazu gehört für mich auch string (Habe das zuerst in der Schule mit TurboPascal so gelernt).

Delphi-Quellcode:
var
  oForm: TForm;
  hForm: THandle
  pData: Pointer;
  aData: array of Byte;
Das halte ich auch viel übersichtlicher, wobei ich auch mal die andere Schreibweise verwende.

Delphi-Quellcode:
// FALSCH
  if A < B then DoSomething;

  // RICHTIG
  if A < B then
    DoSomething;
Ich verwende hier aus Gewohnheit die zweite Variante. IMHO übersieht man es leichter, wenn man es nur in eine Zeile schreibt.

Bei der Sache mit den IF-THEN-ELSE Blöcken halte ich auch die "richtige" Variante mit 3 Zeilen für zu lang und überflüssig, andererseits finde ich die erste Variante auch nicht so gut. Ich mache das so:
Delphi-Quellcode:
  if A < B then
  begin
    DoSomething;
    DoSomethingElse;
  end else
  begin
    DoThis;
    DoThat;
  end;
mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  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
 
#12

Re: Allgemeine Delphisyntax

  Alt 7. Jun 2005, 18:36
Also ich mach immer ein Mittelding von den beiden :

Delphi-Quellcode:
// FALSCH
  if A < B then begin
    DoSomething;
    DoSomethingElse;
  end else begin
    DoThis;
    DoThat;
  end;

  // RICHTIG
  if A < B then
  begin
    DoSomething;
    DoSomethingElse;
  end
  else
  begin
    DoThis;
    DoThat;
  end;

// So mach ichs ^^
if A < B then begin
    DoSomething;
    DoSomethingElse;
  end // manchmal das else auch schon hier hinter
  else
  begin
    DoThis;
    DoThat;
  end;


Das mit den for Schleifen mache ich auch "falsch" :

Delphi-Quellcode:
  // FALSCH ... So mach ichs aber
  for i := 0 to 10 do begin
    DoSomething;
    DoSomethingElse;
  end;
Meine "begin"s sind immer direkt in der gleichen Zeile wie das "then" oder das "do" usw... hab ich mir so angewöhnt und find ich übersichtlicher..
Michael
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#13

Re: Allgemeine Delphisyntax

  Alt 7. Jun 2005, 18:48
Moin Zusammen,

also ich denke mal "den" Styleguide gibt es nicht.
Solange man alleine arbeitet sollte man es so machen, wie es der eigenen Übersicht dienlich ist. Diesen Stil sollte man dann aber auch durchhalten, wobei natürlich nichts dagegen spricht den eigenen Stil weiterzuentwickeln, wenn man merkt dass es noch besser geht.
Sobald man allerdings im Team arbeitet, wird man nicht umhinkommen einen einheitlichen Stil zu verwenden. Ob der jetzt vorgegeben wird, oder gemeinsam entwickelt werden kann ist dann wieder eine zweite Sache.

Eine Zeitlang habe ich, z.B., mit Parameter mit p_ eingeleitet. Es hat sich allerdings herausgestellt, dass diese Schreibweise dann doch nicht so ideal war, und ich habe das auf A geändert.

@Marco:
Warum nun integer kein reserviertes Wort ist kann ich Dir auch nicht sagen, aber es die Auswirkung, dass Du den Bezeichner auch anders verwenden kannst:

Delphi-Quellcode:
// Zulässig
procedure integer;
begin
end;

// Nicht zulässig
procedure string;
begin
end;
Ob das jetzt Sinn macht sei einmal dahingestellt.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#14

Re: Allgemeine Delphisyntax

  Alt 7. Jun 2005, 18:56
Bei größeren Projekten würde ich empfehlen die Proceduren und funktionen Alphabetich zu ordnen. Anfangs hab ich immer Get und Set Methode über einander geschrieben aber irgendwann verliert man da die Übersicht.
Delphi-Quellcode:
private
  function FGetAbc: Integer;
  function FGetDef: Integer;
  function FGetGhi: Integer;
  procedure FSetAbc(AValue: Integer);
  procedure FSetDef(AValue: Integer);
  procedure FSetGhi(AValue: Integer);
setweiteren würde ich empfehlen für private, protected, global, local, Übergabeparameter verschiedene Buchstaben voranzustellen um beim überliegen des Quelltextes sofort zu wissen ob es sich bei einer Variablen um eine lokale, globale etc. handelt. Eigentlich gibt es da bei Delphi nur das vorrangstellte F bei private-Variablen. Inzwischen hab ich mir jedoch angewöhnt private-Variablen mit einem kleinen "f" zu beginnen und Proceduren mit einem großen "F". Somit weiß ich wenn ich im Quelltexte
  lTmpInt := FMainID; lese sofort das "FMainID" eine funktion ist und keine Variable da eine Variable bei mir mit einen kleinen "f" beginnt. Bei Lokalen Variablen/Funktionen verhält es sich genau so. Ist zwar alles kein Standard aber selbst die Kollegen bei Gemeinschaftsprojekten wissen es zu schäzen weil sie sofort wissen worum es sich beim überfliegen vom Quelltext handelt.





folgende Variante halte ich für völlig unübersichtlich
Zitat:
if A < B then
begin
DoSomething;
DoSomethingElse;
end else
begin
DoThis;
DoThat;
end;
Wenn ich im Quelltext irgendwo ein if sehe ist es für mich auf den ersten Blick eine Einzelanweisung die folgt wenn nicht direkt unter dem "if" das "begin" steht denn eine einzelanweisung wird genau so eingerückt. Außerdem würde man bei der Variante die Befehle in dem Begin-End Block 4 zeischen einrücken müssen (wäre ich viel zu faul).

Die Variante
Delphi-Quellcode:
  [...]
end
else
begin
  [...]
finde ich persönlich auch nicht sehr ansehnlich aber man sieht auf den ersten blick ob es sich um ein "else if" handelt oder nur um eine "end" oder eben um ein "end else". würde alles auf einer Zeile stehen müsste man erst in die Zeile reinlesen und es würde nicht ausreichen nur den Zeilenanfang anzusehen. Im großen und ganzen finde ich die Standards schon recht sinnvoll auch wenn ich davon ab und zu abweische. Dies liegt allerdings daran das ich meist zu faul bin 3 mal enter zu tippen etc..
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#15

Re: Allgemeine Delphisyntax

  Alt 7. Jun 2005, 19:01
Zitat von mirage228:
Unter anderem rücke ich immer mit zwei Zeichen (bzw. je nach tiefe mit 4, 6, ...) ein. Habe das in der Schule so gelernt. Echte Tabs sind für mich zu viel Leerraum.
Euch ist schon klar, dass Tabs die Möglichkeit geben, die Breite der Einrückung selbst zu bestimmen OHNE dass es beim nächsten zu Übelkeit führt? Der stellt sich nämlich seine Breite so ein wie er es will.
Und wenn wir schonmal beim Rundumschlag sind....
hungarian Notation und Unterstriche sollten verboten werden
Ich verwende Unterstriche nur in diesen Pseudo templates. Warum? Weil's so hässlich aussieht, dass diese Platzhalter niemals mit richtigen Bezeichnern kollidieren könnten.
Und diese Präfixe. Die erinnern mich irgendwie immer an die Bezeichner in einer DB, angelegt von jemanden, der nicht mit der DB arbeiten muss.
Ihr wisst schon, solch kryptischer Käse wie: Emp_FK_XYZ_tblFünfte_dirLinks_procErste.
Jupp ist klar, verständliche lesbare Namen wären ja zu einfach.

Aber eigentlich kann's mir ziemlich egal sein, was ihr wie tippt.
Hässlichen Code schaue ich mir eigentlich nur an, wenn ich besonders gute Laune habe. Ob ich danach immer noch die Lust verspüre eine Antwort zu schreiben ist wieder eine ganz andere Frage. Fließt einfach zuviel böses Blut wenn man ständig wegen hässlichem Code rumheult.

Aber einer der Vorteile von Pascal ist, dass "Pascalies" zu einem hohen Anteil ziemlich nah nach an einem Standard bleiben.
Wenn ich mir manchen C# Code ansehe wo private Felder mit einem Unterstrich begonnen werden, öffentliche proeprties mit einem kleinen Buchstaben beginnnen oder was weiß ich für kranke Sachen...
Ich glaube da wäre es mir lieber den hässlichsten Delphi code durchzulesen, den ich mir vorstellen kann.
  Mit Zitat antworten Zitat
Marphy

Registriert seit: 24. Feb 2005
162 Beiträge
 
Delphi 7 Professional
 
#16

Re: Allgemeine Delphisyntax

  Alt 8. Jun 2005, 18:18
Hallo zusammen!

Zitat:
Unter anderem rücke ich immer mit zwei Zeichen (bzw. je nach tiefe mit 4, 6, ...) ein. Habe das in der Schule so gelernt. Echte Tabs sind für mich zu viel Leerraum.
Mach ich auch so... Allerdings drücke ich nicht 2x die Leertaste, sondern meistens 1x die TAB-Taste...

Ich schreibe reservierte Wörter grundsätzlich klein, dazu gehört für mich auch string (Habe das zuerst in der Schule mit TurboPascal so gelernt). Ich finde das irgendwie eine Art "Stilbruch" (obwohl es ja genau genommen gerade das Gegenteil ist ): Wenn ich alle Datentypen zu Beginn groß schreibe, dann tu ich das auch mit String, da kann es ein reserviertes Wort oder auch irgendwas anderes sein (aber eben trotzdem ein Datentyp).

Zitat:
Das halte ich auch viel übersichtlicher, wobei ich auch mal die andere Schreibweise verwende.
Und genau sowas kann ich nicht leiden. Man kann doch nicht mal hWindow und mal WindowHandle schreiben (Nich bös gemeint ).
Und wann ist es angebracht, des Dingens mal so und mal anders zu schreiben?

Zitat:
Delphi-Quellcode:
if A < B then
  begin
    DoSomething;
    DoSomethingElse;
  end else
  begin
    DoThis;
    DoThat;
  end;
Die begin-Blöcke und deren Inhalt jeweils um zwei Leerzeichen einrücken? Dann doch lieber
Delphi-Quellcode:
end
else
begin


----

Zitat:
Diesen Stil sollte man dann aber auch durchhalten
Exakt korrekt!

Zitat:
Warum nun integer kein reserviertes Wort ist kann ich Dir auch nicht sagen
Hmm, sollte man mal Borland fragen... Danke übrigens für die weitere Erklärung.

----

Zitat:
finde ich persönlich auch nicht sehr ansehnlich aber man sieht auf den ersten blick ob es sich um ein "else if" handelt oder nur um eine "end" oder eben um ein "end else". würde alles auf einer Zeile stehen müsste man erst in die Zeile reinlesen und es würde nicht ausreichen nur den Zeilenanfang anzusehen.
Find ich nich

Zitat:
hungarian Notation und Unterstriche sollten verboten werden


Zitat:
Wenn ich mir manchen C# Code ansehe wo private Felder mit einem Unterstrich begonnen werden, öffentliche proeprties mit einem kleinen Buchstaben beginnnen oder was weiß ich für kranke Sachen...
Das ist wirklich krank...

Gruß, Marco
Marco
Wo ein Wille ist, ist auch ein Weg. Aber wo ein Weg ist, ist nicht unbedingt auch ein Wille...
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#17

Re: Allgemeine Delphisyntax

  Alt 8. Jun 2005, 19:16
Zitat von Marphy:
Zitat:
Delphi-Quellcode:
if A < B then
  begin
    DoSomething;
    DoSomethingElse;
  end else
  begin
    DoThis;
    DoThat;
  end;
Die begin-Blöcke und deren Inhalt jeweils um zwei Leerzeichen einrücken? Dann doch lieber
Delphi-Quellcode:
end
else
begin
Hi,

oh, so mache ich das natürlich nicht
Delphi-Quellcode:
if A < B then
begin
  DoSomething;
  DoSomethingElse;
end else
begin
  DoThis;
  DoThat;
end;
So ists besser

Zitat:
Und genau sowas kann ich nicht leiden. Man kann doch nicht mal hWindow und mal WindowHandle schreiben (Nich bös gemeint ).
Und wann ist es angebracht, des Dingens mal so und mal anders zu schreiben?
Oh, da habe ich mich wieder vertan. Ich dachte Du meintest die Art, wie man die Deklaration macht. Also alle Doppelpunkte untereinander etc. Auf die Variablennamen habe ich gar nicht geachtet - Das habe ich aber nun einheitlich in meinen Apps, außer bei nur Win32-API ("nonVCL") Programmen, da passt es ja zum allgemeinen Stil imho.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Benutzerbild von BenBE
BenBE

Registriert seit: 3. Apr 2005
Ort: Jahnsdorf
48 Beiträge
 
Delphi 5 Enterprise
 
#18

Re: Allgemeine Delphisyntax

  Alt 9. Jun 2005, 12:13
[Senf]
Zitat von Robert_G:
Zitat von jim_raynor:
Genau. Und diese findest du hier in deutscher Sprache:

http://www.dsdt.info/grundlagen/styleguide/
Zitat von DSDT Guide:
Sie sollten alle Einrückungsebenen immer zwei Leerzeichen einrücken. In anderen Worten: Die erste Einrückungsebene ist zwei Zeichen, die zweite Ebene vier Zeichen, die dritte sechs Zeichen eingerückt usw. Verwenden Sie niemals den Tabulator.
So ein Blödsinn. Keine Ahnung wer auf diese dämliche Idee kam... Wofür zum Geier sind Tabs da, wenn nicht zum einrücken?
Weil Tabs die nette Eigenschaft haben, wtitzige Effekte bei Verwendung einer anderen Einstellung zu erzeugen ... Spätestens, wenn man in nem Teamprojekt arbeitet, wo jede ne andere Einstellung hat, sieht das dann recht komisch aus

Nene, für solche Dinge sind Source-Formatter da ^^

Bis auf Spaces und ein paar anderen Kleinigkeiten halte ich mich auch an den Pascal guide.
[/Senf]
Benny Baumann
Je komplexer das System, desto kleiner die Fehler; je kleiner die Fehler, desto häufiger ihr Auftreten!
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#19

Re: Allgemeine Delphisyntax

  Alt 9. Jun 2005, 12:33
Zitat von BenBe:
Weil Tabs die nette Eigenschaft haben, wtitzige Effekte bei Verwendung einer anderen Einstellung zu erzeugen ... Spätestens, wenn man in nem Teamprojekt arbeitet, wo jede ne andere Einstellung hat, sieht das dann recht komisch aus
Kann es sein, dass du das überlesen hast?
Ich habe folgendes geschrieben
Euch ist schon klar, dass Tabs die Möglichkeit geben, die Breite der Einrückung selbst zu bestimmen OHNE dass es beim nächsten zu Übelkeit führt? Der stellt sich nämlich seine Breite so ein wie er es will.

Interessanterweise kommt dieses Argument immer wieder von diesen "Tab-Tipper-aber-Space-Einfüger", man _könnte_ also argumentieren, dass diese Spezies nicht sehr weit denkt. Ohne eine unabhängig durchgeführte Studie dazu würde ich mich da aber offiziell nicht festlegen wollen...
  Mit Zitat antworten Zitat
xotox

Registriert seit: 4. Mai 2004
5 Beiträge
 
#20

Re: Allgemeine Delphisyntax

  Alt 9. Jun 2005, 12:47
Zitat von Robert_G:
...
Und wenn wir schonmal beim Rundumschlag sind....
hungarian Notation und Unterstriche sollten verboten werden
...
Die ungarische Notation ist eine der besten Sachen überhaupt!!!
Natürlich nur wenn man das System dahinter richtig versteht.
Leider tun das die wenigsten.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 11:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz