AGB  ·  Datenschutz  ·  Impressum  







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

Das Ende von Begin?

Ein Thema von Karstadt · begonnen am 6. Apr 2006 · letzter Beitrag vom 7. Apr 2006
Antwort Antwort
Seite 2 von 2     12   
Flare

Registriert seit: 26. Jan 2006
Ort: Leipzig
529 Beiträge
 
Delphi 7 Professional
 
#11

Re: Das Ende von Begin?

  Alt 6. Apr 2006, 16:20
Zitat:
Delphi-Quellcode:
if True then
  Try
    Try


    except
      end;
  finally
    end;
Das Kann man aber auch einfacher schreiben:
Delphi-Quellcode:
if True then
  try
  
  except
  
  finally
  
  end;

Mfg, Flare
Willy Scheibel
  Mit Zitat antworten Zitat
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#12

Re: Das Ende von Begin?

  Alt 6. Apr 2006, 16:29
Zitat von Flare:
Das Kann man aber auch einfacher schreiben:
Delphi-Quellcode:
if True then
  try
  
  except
  
  finally
  
  end;

Mfg, Flare
Ganz einfach: nein
Julian J. Pracht
  Mit Zitat antworten Zitat
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#13

Re: Das Ende von Begin?

  Alt 6. Apr 2006, 16:31
Zitat von Ultimator:
Ganz einfach: nein
Nicht in Dephi, aber es gibt zumindest einen ObjectPascal-Dialekt, der das kann.
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
Karstadt

Registriert seit: 8. Nov 2005
788 Beiträge
 
#14

Re: Das Ende von Begin?

  Alt 7. Apr 2006, 08:14
Hallo. Das einrücken von Coder wurde mir in der Ausbildung schon beigebracht. und zwar immer zwei mal einrücken zwischen begin und end. Aber bei 7 schleifen in eine Procedur verliert man trotzdem den Überblick. Deswegen (wurde mir damals gezeigt) gibt es eine Tastenkürzel wo das end von Begin zu erkennen ist, nun habe ich diese Tastenkürzel vergessse
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#15

Re: Das Ende von Begin?

  Alt 7. Apr 2006, 08:23
Hast Du nun GExperts installiert? Wenn nicht, tu es und deine Probleme sind gelöst.

Und was die Sache mit dem Try..Except anbelangt: Das kann man doch nicht ernsthaft vertreten, jeden Block so zu kapseln?

Nebenbei verwende ich einen Codeformatter (DelForExp), das ich festgestellt habe, das ich mit dem formatieren von Code die meiste Zeit verbringe. Von den 100 Formatierungsregeln, die ich vorher hatte, kann DelForExp zwar nur 98 umsetzen, aber dafür habe ich einfach *keine* Arbeit mehr. Die fehlenden 2 Formatierungsregeln (hängendes 'End' und rechtsbündige einzeilige Kommentare) kann ich verschmerzen.

Einfach Alt+D und der Code ist formatiert.

Aber bei so viel verschachtelten Begin/Ends sollte eine Refactoring Abhilfe schaffen. Mehr als -sagen wir- 4 Begin/End-Ebenen solltest Du nicht zulassen. Und 7 Schleifen inneinander verschachtelt braucht kein Mensch. Denn der komplexeste Algorithmus (der nicht verbessert werden kann) hat i.a. maximal 3 ineinander verschachtelte Schleifen.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
Vjay

Registriert seit: 2. Dez 2003
Ort: Berlin/Eschede
481 Beiträge
 
Delphi 7 Professional
 
#16

Re: Das Ende von Begin?

  Alt 7. Apr 2006, 09:51
Also man mal ehrlich.

Im absoluten Zweifelsfall: Man setze den Cursor vor das "b" des begin, dann verwende man die "Pfeilnachuntentaste" so lange, bis das "end" erkennbar ist. Ob nun ein Zeichen eingerückt wurde oder zwei, spielt dabei keine Rolle.

Bei schlecht, bzw. garnicht formatieren Code funktioniert dies allerdings nicht.
Wer später bremst ist eher tot.
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.639 Beiträge
 
#17

Re: Das Ende von Begin?

  Alt 7. Apr 2006, 09:51
Hehe,

im Linux-Quellcode arbeiten die Jungs absichtlich mit 8(!) Zeichen Einrückungstiefe.
Delphi-Quellcode:
begin
        begin
                begin
                        begin
                                begin
                                        begin
                                                begin
                                                        begin
                                                                // und hier ist dann Code in der 7. Ebene...
                                                        end;
                                                end;
                                        end;
                                end;
                        end;
                end;
        end;
end;
Nee, jetzt mal im Ernst:
Überdenke Deinen Code nochmal. Ziehe einzelne Schleifen die Du verwendest in eigene Funktionen runter. Vor allem sich öfter wiederholende Code-Teile sind da einfach ideal für, die in eine eigene Funktion zu packen.

Dann: Einrückung immer mit Tabs, nicht mit Leerzeichen. Hintergrund: 1.) es ist nur ein ASCII-Zeichen was da gelesen werden muss und 2.) (was viel wichtiger Wiegt): Wenn jemand anderes Deinen Code bearbeitet und bei sich z.B. 3 oder 4 oder 5 Zeichen als Einrückungsebene verwendet wird das eine Tab eben mit seiner bevorzugten Breite angezeigt und er muss sich nicht mit dem Problem rumschlagen, was Du gerade hast. Im übrigen haben Typographische Studien ergeben, dass eine Einrückung innerhalb von Text ab 3 Zeichen vom Leser als solche erkannt wird, bei 2 noch nicht. Es ist also der Ergonomie zuträglich, mindestens 3 Zeichen zu verwenden.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#18

Re: Das Ende von Begin?

  Alt 7. Apr 2006, 10:34
Zitat von Phoenix:
Dann: Einrückung immer mit Tabs, nicht mit Leerzeichen. Hintergrund: 1.) es ist nur ein ASCII-Zeichen was da gelesen werden muss
Stimmt, dann kompiliert es schneller.
Zitat von Phoenix:
und 2.) (was viel wichtiger Wiegt): Wenn jemand anderes Deinen Code bearbeitet und bei sich z.B. 3 oder 4 oder 5 Zeichen als Einrückungsebene verwendet wird das eine Tab eben mit seiner bevorzugten Breite angezeigt und er muss sich nicht mit dem Problem rumschlagen, was Du gerade hast.
Und bei Leuten wie mir, die das Tab nicht verwenden, sieht der Code dann aus, als ob er von einem Waldschrat geschrieben wurde. Und wenn man sich den Code mal im NotePad anschaut, auch.

Wenn ich fremden Code denn mal lesen will, dann lade ich ihn in Delphi und formatiere ihn mit dem installierten DelForExp. Dann ist es mir doch schnurz, was für Vorlieben der Coder hat.
Zitat von Phoenix:
Im übrigen haben Typographische Studien ergeben, dass eine Einrückung innerhalb von Text ab 3 Zeichen vom Leser als solche erkannt wird, bei 2 noch nicht. Es ist also der Ergonomie zuträglich, mindestens 3 Zeichen zu verwenden.
Ich bezweifle, das 'typographische Studien' die Lesbarkeit von Code in einer IDE analyisert haben, das mit fixed spaced fonts arbeitet und die Keywörter fett auszeichnet. Anders sieht die Sache bei variable spaced fonts und dem Setzen von Code in z.B. Helvetica aus. So wird das z.B. bei Büchern gemacht, die mit Pseudocode arbeiten.

Hier dürfest du Recht haben, aber es verwundert mich doch, das die 'typographische' Studie mit Leerzeichen hantiert, wo doch das 'em' die Breiteneinheit innerhalb eines Fonts ist, um die es geht. . Na Studien halt.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
Vjay

Registriert seit: 2. Dez 2003
Ort: Berlin/Eschede
481 Beiträge
 
Delphi 7 Professional
 
#19

Re: Das Ende von Begin?

  Alt 7. Apr 2006, 11:43
Zitat von alzaimar:
Kompletter Post
Wer später bremst ist eher tot.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 12:45 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