🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fido.ger.c_echo
Article #15

Danke :-)

#15
From: Frank Huettemeister
Date: Thu, 11 Sep 1997 00:00
57 lines
3152 bytes
Hallo Herbert.

 > [... suchen. Jedes goto deutet auf einen schweren Designfehler. ]

 >  FH> Man sollte die vorsichtig angedeutete Ablehnung aus dem K&R nicht
 >  FH> zur Schicksalsfrage aufbauschen. :)

 > Das ist auch keine Schicksalsfrage, sondern nichts weiter die Frage,
 > ob man fehlertoleranten, wartbaren Code oder lieber unwartbare
 > Spaghettiso�e hat.
Auf letzteres deutet _ein_ `goto` auf keinen Fall hin.

 >  FH> Ein `break`, `continue` oder `return` kann ebenfalls logisch
 >  FH> aufgebaute Strukturen auf einem unerwarteten Weg verlassen.

 > Falsch! die sind sehr geanau, zielsicher und niemals unerwartet, man
 > wei� sofort, wo sie hingehen. Ein Goto landet todsicher irgendwo, wo
 > man es nicht erwartet.
Sicher wei� man sofort - wie beim `goto` - , wo sie hingehen. Die
wesentliche Denkarbeit beim Nachvollziehen des Source-Codes ist dabei
aber nicht, den Sprung zu verfolgen, sondern sich den aktuellen Zustand
von Variablen und Schachtelungen zu vergegenw�rtigen, zB. den Wert einer
noch sp�ter zu verwendenden Laufvariable einer (mit break oder goto)
vorzeitig verlassenen for-Schleife; oder wieviele Klammern noch mit welchen
abschlie�enden Anweisungen zu schlie�en sind.

 >  FH> Das break l��t sich sogar durch ein `goto <marke>` ersetzen. Ist
 >  FH> der Unterschied wirklich so gro�?

 > Ja.
Achso.

 >  FH> Zugegeben, besonders toll ist `goto` nicht. F�r einen Neuling,
 >  FH> der die M�glichkeiten der bedingten Verzweigung, der
 >  FH> Strukturierung oder Schachtelung noch nicht kennt, sollte dies
 >  FH> aber kein behinderndes Dogma sein.

 > Das ist genauso, als w�rdest Du einem F�hrerscheinneuling zugestehen,
 > auch entgegen der Fahrtrichtung durch eine Einbahnstra�e zu fahren,
 > mit dem Argument: der mu� sich ja erst mal mit den gegebenheiten des
 > Autofahrens zurechtfinden.
Das Verbieten von goto ist eher so, wie wenn Du einem Kind solange
nichts zu essen gibst, bis es nicht mehr kleckert.

Nein, Dein Vergleich haut nicht hin: Im einen Fall werden feste Regeln
gebrochen, was zu einer Katastrophe f�hren kann (man kann nichts daraus
lernen), im andern Fall wird lediglich der Knigge mi�achtet (es l��t
sich was daraus lernen). Da aber keiner zuguckt, macht das nix :).

Aus Olaf Weinerts Mail sehe ich jedoch, da� seine Experimentierfreude
ungebrochen ist.

Weiter so! :))

Und tschuess,
 Frank
Technical Details
Message-ID: <MSGID_2=3A2442=2F4013.2=40fidonet_7f12a429@fidonet.org>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <MSGID_2=3A2476=2F493_34156de2@fidonet.org>

Show Full Headers
Complete Article Headers
X-Google-Language: GERMAN,ASCII
X-Google-Thread: 100a0f,99a02cf1a1f4d899
X-Google-Attributes: gid100a0f,public
From: Frank.Huettemeister@p2.f4013.n2442.z2.fidonet.org (Frank Huettemeister)
Subject: Danke :-)
Date: 1997/09/11
Message-ID: <MSGID_2=3A2442=2F4013.2=40fidonet_7f12a429@fidonet.org>
X-Deja-AN: 272334778
References: <MSGID_2=3A2476=2F493_34156de2@fidonet.org>
X-FTN-Path: 2442/4013 4000 0 2448/600 24/888 777 2480/2 13 843
X-Comment-To: (Herbert Rosenau)
X-FTN-Tearline: GEcho 1.00
X-FTN-Domain: Z2@fidonet
X-Gateway: FIDO .. gamma.ray.camelot.de [FIDOGATE 4.1.5]
X-FTN-Seen-By: 2490/5001 2494/28
Organization: hAS ANYONE SEEN MY cAPSLOCK KEY?
Newsgroups: fido.ger.c_echo