Hafner schrieb:
Mit goto kann man maximal den Multiplikator des Aufwandes verringern. Also nicht den quadratischen oder kubischen Aufwand. Es ist durchaus wahr, dass goto in der Kernel-, Treiberentwicklung oder in der Bildverarbeitung Sinn machen KANN. Ein solcher Entwickler wird allerdings kaum hier im Forum nach den Vor- und Nachteilen von goto fragen. Ich wage zu behaupten, dass mit Abstand die meisten Performanceprobleme algorithmisch bedingt und nicht durch 2 Kernelbefehle weniger zu lösen sind.
Der Vergleich mit break und return hickt. Mit break und return kann man keine funktionale oder objektorientierte Programmstruktur aushebeln.
Völlig korrekt, auch wenn es die Komplexitätsklasse niemals verbessert und theoretisch völlig unbedeutend sein mag, sieht die Praxis mitunter ganz anders aus. Der Multiplikator ist bei sovielen Pixeln nunmal doch wichtig und bei Echtzeitsystemen erstrecht. Den Vergleich mit return habe ich (bewusst) nicht angestellt. break exit und continue sehrwohl. Kannst ja mal eine Schleife mit einem dieser Teile versuchen als Nassi-Shneidermann-Struktogramm zu malen. Das wird dir nur in konstruierten Spezialfällen gelingen da der Code unstrukturiert wird, was sehrwohl dem Konzept funktionalen (bzw eigentlich reden wir ja von prozeduralen) Sprachen widerspricht.
@truespin: Ich sag ja nicht dass es in jedem Fall immer benutzt werden muss aber erzähl doch mal was für Treiber und Anwendungen ihr programmiert.
Für alle anderen: Ein Standardtext der Informatik: Goto Statement Considered Harmful, 1968
~ mfg SeBa
Ich beantworte keine PMs zu Computer-/Programmierproblemen. Bitte wendet euch an das entsprechende Forum.
[Blockierte Grafik: http://i.creativecommons.org/l/by-sa/3.0/80x15.png]
Ich beantworte keine PMs zu Computer-/Programmierproblemen. Bitte wendet euch an das entsprechende Forum.
[Blockierte Grafik: http://i.creativecommons.org/l/by-sa/3.0/80x15.png]