Bei einem der ersten Programme welches ich in PB geschrieben hatte, habe ich ähnliches verwendet und später bereut. Wenn ich mich nicht irre, hatte ich den Teil des Codes leider sogar hier im PB-Forum veröffentlicht.
Goto sinnvoll nutzen
Re: Goto sinnvoll nutzen
Die Verwendung von so etwas wie end1, end2, usw. ist in meinen Augen ein schlechter Programmierstil, weil es die Lesbarkeit des Codes erheblich verschlechtert.
Bei einem der ersten Programme welches ich in PB geschrieben hatte, habe ich ähnliches verwendet und später bereut. Wenn ich mich nicht irre, hatte ich den Teil des Codes leider sogar hier im PB-Forum veröffentlicht.
Bei einem der ersten Programme welches ich in PB geschrieben hatte, habe ich ähnliches verwendet und später bereut. Wenn ich mich nicht irre, hatte ich den Teil des Codes leider sogar hier im PB-Forum veröffentlicht.
PB 4.00 | Windows XP Home SP3
- NicTheQuick
- Ein Admin
- Beiträge: 8816
- Registriert: 29.08.2004 20:20
- Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti - Wohnort: Saarbrücken
Re: Goto sinnvoll nutzen
Ich sehe es halt wie edel, also dass es so wesentlich leichter zu lesen ist. Wenn ich mir den Code von_sivizius so anschaue, dann verwirrt der Code irgendwie ganz schön. Allerdings hat er recht damit, dass es so wesentlich kompakter ist.
Ich habe es jedenfalls lieber so, dass das Programm, solange kein Fehler passiert, in einer Einrückungsebene weiter geht und sich nicht immer weiter nach rechts verzweigt.
Aber Geschmäcker sind verschieden.
Ich denke wir sind uns auf jeden Fall darüber einig, dass man Codedopplungen vermeiden soll. Und das schaffen beide Codes.
Ich habe es jedenfalls lieber so, dass das Programm, solange kein Fehler passiert, in einer Einrückungsebene weiter geht und sich nicht immer weiter nach rechts verzweigt.
Aber Geschmäcker sind verschieden.
Re: Goto sinnvoll nutzen
Ich meinte im Vergleich zu dem von dir als erstes geposteten Code, diesen würde ich trotz der mehrfach gleichen Befehle bevorzugen.NicTheQuick hat geschrieben:Ich sehe es halt wie edel, also dass es so wesentlich leichter zu lesen ist. Wenn ich mir den Code von_sivizius so anschaue, dann verwirrt der Code irgendwie ganz schön.
Und es hat auch nicht unbedingt etwas mit Geschmack zu tun, ich mag Effektivität, nur ist die Abfolge dann auf dem ersten Blick nicht mehr sofort ersichtlich.
Wie gesagt, ich beziehe mich auf den ersten Code von dir.
PB 4.00 | Windows XP Home SP3
Re: Goto sinnvoll nutzen
wenn es um Übersichtlichkeit geht, sollte man meiner Meinung nach Kommentieren, Einrücken, Leerzeilen setzen, Code verstecken. Mit Macros kann man auch viel machen :P
Code: Alles auswählen
Procedure.i init()
Macro _useUSB_
If USB::useConfiguration(*handle, #nConfiguration, #nInterface, #nAltSetting)
ProcedureReturn *handle
EndIf
USB::closeDevice(*handle)
*handle = 0
EndMacro
Macro _checkUSB_
If USB::checkConfiguration(*device, #nConfiguration, #nInterface, #nAltSetting))
*handle = USB::openDevice(*device)
If *handle
_useUSB_
EndIf
EndIf
USB::unuseDevice(*device)
EndMacro
Macro _initUSB_
If USB::init()
*device = USB::findDevice(#idVendor, #idProduct)
If *device
_checkUSB_
EndIf
USB::free()
EndIf
EndMacro
_initUSB_
EndProcedure
- NicTheQuick
- Ein Admin
- Beiträge: 8816
- Registriert: 29.08.2004 20:20
- Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti - Wohnort: Saarbrücken
Re: Goto sinnvoll nutzen
Also die Macro-Variante finde ich jetzt aber am unübersichtlichsten. 
Re: Goto sinnvoll nutzen
es sind aber alle Einzelteile geordnet. Zwar in umgekehrter Reihenfolge, aber das ließe sich auch wieder über Macros steuern ^^. Naja, die Macros kannst du auch ausblenden lassen in der ide
- SDL
- Beiträge: 65
- Registriert: 15.09.2006 05:19
- Computerausstattung: MSI 990FXA-GD80
AMD FX-8350(3,1GHz) 4-4,4GHz
Corsair Dominator Platinum 8GB 2133 (2240)
2 Nvidia GeForce GTX 550Ti
Xilence XQ semipassives Netzteil 750Watt
SATA III WDC WD10 1TB
SATA III SSD Toshiba 128 GB
SATA III SSD Samsung 840 EVO 250 GB
eSATA WDC WD SE16 500 GB
Wassergekühlt
Win 7 pro
Leistungsindex 7,8 - Wohnort: Hansestadt Stendal
Re: Goto sinnvoll nutzen
Also ich habe 1987 auf ein ATARI 130xe mit Turbobasic (BIBO DOS)meine erste Oberfläche gebastelt und dabei sowohl GOTO oder GOSUB verwendet. Das Gleiche unter AMOS auf ein AMIGA1200. Und ich muss sagen das eine sinnvolle Verwendung von GOTO nicht weg zu denken ist, zumal immer ein JUMP (GOTO) dahinter steht.
Über Geschwindigkeitsvorteile zu streiten ist lustig und informativ, aber nicht ernsthaft zu bewerten, da zu viele Randbedingungen definiert werden müssen um vergleichbare Ergebnisse zu erhalten.
Also der eine mag Linsensuppe und der andere Bohnensuppe, aber alle müssen mit Wasser kochen.
Aber man kann sehr viel Lernen
Zu meiner Schulzeit war die Bildung kostenlos, für einige aber Umsonst.
Re: Goto sinnvoll nutzen
Und beide sorgen für ordentlich Wind von hinten.SDL hat geschrieben:Also der eine mag Linsensuppe und der andere Bohnensuppe, aber alle müssen mit Wasser kochen.
:::: WIN 10 :: PB 5.73 :: (x64) ::::
Re: Goto sinnvoll nutzen
Oh man. Da werden Erinnerungen wach. Ich weiß noch wie ich mir damals AMOS gekauft habe. Das waren noch Zeiten. *träum*.SDL hat geschrieben:... Das Gleiche unter AMOS auf ein AMIGA1200.
Aber PureBasic macht mir auch wahnsinnig Spaß. Kenne es ja erst seit drei Wochen. Ich werde aber auch nicht zurück schrecken mal ein GoTo verwenden wenn es Sinn macht bzw. der Code ohne zu unübersichtlich würde...
VG
Sundance
-
Andreas21
- Beiträge: 390
- Registriert: 30.08.2004 09:05
- Computerausstattung: Desktop
Windows 10 Pro x64
CPU: AMD Ryzen 5 2600 3.40 GHz
Ram: 16GB RAM
Grafik: NVIDA Geforce 1060
PB: 5.72 X86/X64 - Wohnort: Heidelberg
Re: Goto sinnvoll nutzen
Zu Commodore C64 und Amiga 500/600 Zeiten......
Erinnerungen werden wach.
Erinnerungen werden wach.
Windows 10 x64 Pro - PB 5.61 X64 / x32 - PB 4.6 x32