AGB  ·  Datenschutz  ·  Impressum  







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

Break / Exit - Grundsatzfrage

Ein Thema von burn · begonnen am 19. Dez 2008 · letzter Beitrag vom 19. Dez 2008
Antwort Antwort
Seite 3 von 3     123   
burn

Registriert seit: 9. Apr 2003
80 Beiträge
 
Delphi 5 Professional
 
#21

Re: Break / Exit - Grundsatzfrage

  Alt 19. Dez 2008, 11:53
@himitsu

Nur damit kein Mißverständnis entsteht:
Ich weiß was Break / Exit machen ... Mir geht lediglich darum
warum ich die nicht verwenden soll ...

mfg Burn
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#22

Re: Break / Exit - Grundsatzfrage

  Alt 19. Dez 2008, 11:53
Ich oute mich jetzt auch mal als schlechten Programmierer, da ich öfter solche Dinge hier verwende:
Delphi-Quellcode:
procedure TuWas;
begin
  if not unabdingbare_Ausgangsbedingung then exit;
  //hier dann der eigentliche Code
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Tyrael Y.

Registriert seit: 28. Jul 2003
Ort: Stuttgart
1.093 Beiträge
 
Delphi 2007 Professional
 
#23

Re: Break / Exit - Grundsatzfrage

  Alt 19. Dez 2008, 11:54
Zitat von DeddyH:
Ich oute mich jetzt auch mal als schlechten Programmierer, da ich öfter solche Dinge hier verwende:
Delphi-Quellcode:
procedure TuWas;
begin
  if not unabdingbare_Ausgangsbedingung then exit;
  //hier dann der eigentliche Code
end;
Das ist völlig vernünftiger Code...siehe mein Post darüber.
Levent Yildirim
Erzeugung von Icons aus Bildern:IconLev
  Mit Zitat antworten Zitat
burn

Registriert seit: 9. Apr 2003
80 Beiträge
 
Delphi 5 Professional
 
#24

Re: Break / Exit - Grundsatzfrage

  Alt 19. Dez 2008, 11:56
@DeddyH

Genau so mach ich das auch immer und
ich versteh nicht was daran schlecht sein soll.

Ich finde den Code so einfach lesbarer (Meine Meinung)

Burn
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.088 Beiträge
 
Delphi 12 Athens
 
#25

Re: Break / Exit - Grundsatzfrage

  Alt 19. Dez 2008, 12:05
das in #23 von DeddyH mach ich auch öfters

(schreibe oftmals mehrere Befehle in eine Zeile und da kann ich den gesparrten Platz bezüglich der Einrückung schon gut gebrauchen ... außerdem wird da eine Zeile, für's END gesparrt)

@burn
hatte erst alle, statt einige geschrieben ... also hab nicht unbedingt dich gemeint


PS: wißt ihr wie schön man ein GOTO verwenden kann, wenn man mit BREAK nicht mehrere Schleifchen auf einmal verlassen kann? (ich vermisse sowas wie Break(3); für's Verlassen der letzen 3 Ebenen )
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#26

Re: Break / Exit - Grundsatzfrage

  Alt 19. Dez 2008, 12:06
Ich denke mal, break und exit können dann in eine Falle führen, wenn sie in sehr weit verschachtelten Codes mittendrin verwendet und daher irgendwann übersehen werden können. Da ist dann eine anständige Schleifenbedingung "selbstredender". Aber wie ich schon im anderen Thread gesagt habe, man sollte diese Möglichkeiten nicht generell verteufeln, überlegt und mit Bedacht eingesetzt können Sie IMHO sinnvoll eingesetzt werden (siehe mein Beispielcode).
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#27

Re: Break / Exit - Grundsatzfrage

  Alt 19. Dez 2008, 12:18
Ich finde eigentlich auch nichts schlimmes an break oder Exit

Ich meine ich finde sowas:
Code:
forschleife
begin
  if (bed_1 || bed_2)
    break;

  if (bed_3)
    continue
  else if (weltuntergang)
    exit;

// Code

  if (sonderfall)
    continue;

 // Code
end;
Viel schöner als das mit einem Riesenbatzen logischer Verknüpfungen im while-Kopf zu lösen.

Spätestens ab 3 voneinander Abhängigen Bedingungen sieht der while-Kopf dann nur noch unübersichtlich aus.

Evtl. kann man in manchen Fällen statt einem Exit eine Exception werfen (z.B. Leere Liste sortieren).

Aber grundsätzlich finde ich diese Schlüsselwörter zur Schleifensteuerung sinnvoll und möchte sie nicht um jeden Preis in die while-Bedingung reinquetschen wollen

goto ist da deutlich unübersichtlicher als ein break an der richtigen Stelle. (Wir brauchen ein ComeFrom ^^)

Man sollte imho allg. darauf achten, dass der Code verständlich ist und wann was getrtan wird. Wenn ich am Schleifenkopf 5 Variablen mit 7 Operatoren verknüpfe blicke ich da ne Woche später nicht mehr durch ...

@himitsu ganz oben: Ob der Compiler aus meiner Schleife goto's macht, oder nicht ist mir egel, solange er sich nicht darin verheddert ^^

@himitsu nicht ganz oben: In seperate Funktionen auslagern? ==> Exit ^^
  Mit Zitat antworten Zitat
Benutzerbild von nicodex
nicodex

Registriert seit: 2. Jan 2008
Ort: Darmstadt
286 Beiträge
 
Delphi 2007 Professional
 
#28

Re: Break / Exit - Grundsatzfrage

  Alt 19. Dez 2008, 12:22
Zitat von himitsu:
(ich vermisse sowas wie Break(3); für's Verlassen der letzen 3 Ebenen )
Viel Spaß beim Modifizieren des Quellcodes, wenn sich die Anzahl der Blöcke ändert
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.088 Beiträge
 
Delphi 12 Athens
 
#29

Re: Break / Exit - Grundsatzfrage

  Alt 19. Dez 2008, 12:37
Zitat von nicodex:
Viel Spaß beim Modifizieren des Quellcodes, wenn sich die Anzahl der Blöcke ändert
nja, dazu dann noch 'ne Variante einer benannten While/Repeat-Schleife und es paßt

Delphi-Quellcode:
while Bedingung name 'xyzdo begin
  while Bedingung do begin

    Break('xyz');

  end;
end;
wobei es so nach Speicher-/Rechenleistung wohl besser wär,
dazu leider unverständlicher (schön benannter Name <> Zahl), abgesehn bei Verwendung von Konstanten
Delphi-Quellcode:
while Bedingung id 123 do begin
  while Bedingung do begin

    BreakID(123);

  end;
end;

ein
Delphi-Quellcode:
with name1:irgendwas do
  with name2:irgendwas do

oder gar //

with name1:irgendwas, name2:irgendwas do
würde sich in Delphi auch gut machen
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
burn

Registriert seit: 9. Apr 2003
80 Beiträge
 
Delphi 5 Professional
 
#30

Re: Break / Exit - Grundsatzfrage

  Alt 19. Dez 2008, 12:42
Also um das ganze nochmal auf den Punkt zu bringen:

Break/Exit sind DOCH kein schlechter Stil, wenn man diese
sinnvoll einsetzt und der Code lesbar bleibt.

Besten Dank für eure Meinungen

und Tschüss


mfg Burn
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 21:57 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