Bereiche
News
Rewind
Tipps & Berichte
Forum
Galerie
Journals
Events
Umfragen
Themenwoche
Kleinanzeigen
Interaktiv
Anmelden
Registrierung
Zu allen empfangenen Nachrichten
Suche...
Zur erweiterten Suche
Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Galerie
>
Kurioses
>
Überflüssiges
"Überflüssiges" von dan@mac
Älteres Bild
Neueres Bild
0
0
Ausgangsbeitrag
dan@mac
30.08.10
14:36
So kann man auch überflüssigen Code produzieren. Auch wenn ich so etwas immer nur zufällig bemerke und mich dann frage was ich da gedacht haben muss, als ich das gemacht habe - funktionieren tut's trotzdem.
Kommentare
Arachnid
30.08.10
14:43
au weia. manchmal tut sowas weh.
Flashmueller
30.08.10
14:45
Was sagst du? Bahnhof?
ww
30.08.10
15:24
Na ja ist ja möglich, dass sich mal was ändert, dann bist du schneller beim Anpassen
Ich denke dieser Code ist historisch gewachsen - grins
PaulMuadDib
30.08.10
15:33
Das kommt hier drauf, was genau Du damit bezwecken wolltest. Ausserdem sieht man den zusammenhang nicht. Da ist ja bestimmt noch merh Code drumrum, denke ich aml. Wie würdest Du denn es jetzt machen?
ultrapaine
30.08.10
15:35
Schaut euch den Code doch mal an, in dem fall hätte es die Zeile
IPSegmentIndex = index;
auch getan!
Christoph_M
30.08.10
15:37
würdest du
iPSegmentIndex = index;
machen, dann könnte iPSegmentIndex auch Werte ausserhalb des Bereiches [0,3] annehmen. Vielleicht ist das aber gerade nicht gewollt.
Natürlich könnte man das durch if(index >= 0 && index <=4) eleganter lösen, dass geht aber nur solange es sich um einen nicht gesplitteten Bereich handelt.
Will jetzt den Coder nicht unbedingt verteidigen, weil wirklich schön ist der Code echt nicht, aber gleich abzugehen ohne die Umstände zu kennen halte ich für etwas unangebracht.
chaos-ritter
30.08.10
15:40
ultrapaine:
Das kannst du so ohne Zusammenhang nicht sagen,
ich würde
if (index >= 0 && index <= 3) {
IPSegmentIndex = index;
}
schreiben..
Mr. Fuchs
30.08.10
15:58
ich fänds mal interessant wie viele verstehen über was ihr diskutiert...
Im übrigen finde ich eine Switch-Case garnet sooo schlimm, selbst wenn es so "unnötig" wie hier ist.
Es ist (finde ich) einfach übersichtlicher, als sowas:
if (index >= 0 && index <= 3) {
IPSegmentIndex = index;
}
Wie es mit der Performance aussieht weiß ich allerdings nicht...
blue_raptor
30.08.10
16:06
Der Code ist aber ausgesprochen blödsinnig. Eine "inrange" Prüfung kann man auch gescheiter machen als alle Werte als case-Fall zu schreiben.
dan@mac
30.08.10
16:10
Es ist tatsächlich historisch gewachsen. Die switch-case Abfrage sah vorher auch anders aus. index wird nur einen Wert von 0-3 haben und später einfach verwendet. iPSegmentIndex ist einfach unnötig.
blue_raptor
Der Code ist aber ausgesprochen blödsinnig. Eine "inrange" Prüfung kann man auch gescheiter machen als alle Werte als case-Fall zu schreiben.
Es sollte ursprünglich ja aber was passieren, wenn es eben 2 ist und zwar genau zwei und nicht zwischen 0 und 3.
Request
30.08.10
16:11
Da fragt man sich eher wieso du überhaupt in index speicherst und nicht gleich in iPSegmentIndex...
1984 - Think different - Macintosh - iPhone / iPad - Think nothing - 2014
Schnapper
30.08.10
17:31
Och, da sehen manche gewachsenen Routinen von mir noch viel, viel wilder aus.
Insofern: gräme dich nicht, es könnte noch viel schlimmer sein. Mir fällt da grad ne sehr wirre Variante mit ineinander verschachtelten Schleifen ein...
Megaseppl
30.08.10
17:47
Ich sehe hier kein Problem. Eventuell sind Deine Gedankengänge damals nicht davon ausgegangen dass der IPSegemtIndex in jedem Fall dem Index entspricht. Und wie bereits geschrieben werden so nur valide IPSegmentIndex-Werte zugelassen.
Zum Problem wird es nur wenn dieser Aufruf messbar ist bzw. spürbar mehr Zeit benötigt als die einfache Zuweisung und eine eventuelle Werte-Überprüfung vorab. Das dürfte aber nur der Fall sein wenn er mehrere hundert male pro Sekunde ausgeführt wird. Und auch da muss man individuell testen. Das ist nicht in jeder Sprache gleich.
Kommentieren
Sie müssen sich
einloggen
, um ein Galerie-Bild kommentieren zu können.