| 

.NET C# Java Javascript Exception

10
Ich denke mal jeder kennt es bereits von StackOverflow. Das hier soll auch kein Copy->Translate->Paste() Post sein, sondern eure eigenen Erfahrungen im beruflichen oder privaten Alltag widerspiegeln. Natürlich soll es auch der Unterhaltung dienen und die Beteiligung anregen.

Gesucht sind die besten, lustigsten und merkwürdigsten Kommentare und Code-Schnipsel die euch bisher begegnet sind. Ich bitte euch dabei keine Antworten von StackOverflow zu kopieren, da diese hinreichend bekannt sind (leider ist der Thread dort so langsam ausgelutscht).

Anmerkung: Codekicker könnte eine Meta-Sektion für solche Fragen gebrauchen ;-)
News:
21.07.2011
Dustin Klein 2,9k 2 9
15 Antworten
16
Hallo,

hier: What is the best comment in source code you ahve ever encountered
oder hier: Coding Styles Horror

Und besonders schön finde ich den hier:
// 
// Dear maintainer:
//
// Once you are done trying to 'optimize' this routine,
// and have realized what a terrible mistake that was,
// please increment the following counter as a warning
// to the next guy:
//
// total_hours_wasted_here = 39
//


oder der da
//If you don't understand this code, you should be flipping burgers instead.
21.07.2011
michlG 1,7k 1 5
michlG 1,7k 1 5
1
Ich kringel mich vor lachen in der Ecke :D
Floyd 21.07.2011
1
Hab ich oben bereits in meiner Fragestellung erwähnt, dass es auf StackOverflow bereits einen solchen Thread gibt und man bitte NICHT die Comments einfach kopieren oder übersetzen soll... ;-)
Dustin Klein 21.07.2011
Hoppla, das kommt davon wenn man die Frage nur überfliegt :)
michlG 21.07.2011
Kein Ding, aber damit hast du nun wahrscheinlich den Top-Beitrag ;)
Dustin Klein 21.07.2011
so, ich hab jetzt mal den StackOverflow Link entfernt ;)
michlG 21.07.2011
Der Link darf ruhig bleiben, dann haben wir wenigstens nur einen Kommentar, der einen Link dazu enthält, sonst kommen hier demnächst noch mehr auf die Idee ;-)
Dustin Klein 21.07.2011
dein wunsch sei mir befehl :)
michlG 21.07.2011
9
Schon etwas länger her:
poRequest.HitMeBabyOneMoreTime = true; //Oh baby, baby
return this.SendRequest(poRequest);
21.07.2011
PinBack 687 1 8
Herrlich, ich finde den Kommentar schon gut, aber die HitMeBabyOneMoreTime Property is der Abschuss.
ffordermaier 21.07.2011
haha, super +1
Felix 22.07.2011
7
Das hatte damals ein Mitschüler eines jungen Arbeitskollegen des Informatik Leistungskurses in seinem Informatik-Test stehen:

// Erweiterungsmethode für boolsche
// Variablen um den Wert umzukehren
public static void Reverse(this bool b)
{
if (b == false) return true;
return false;
}

// Lehrer: Meinen Glückwunsch, du wurdest in den Grundkurs zurückversetzt!
inputValid.Reverse();


Hier sollte natürlich jedem klar sein, dass ein "inputValid = !inputValid" das gleiche Ergebnis erzielt ;-)
21.07.2011
Dustin Klein 2,9k 2 9
1
Wenigstens waren sie kreativ. Also der Schüler und der Lehrer :D
Floyd 21.07.2011
1
Ich hätte dem auch zumindest einen Pluspunkt für das unsinnigste aber kreativste Workaround gegeben :D
Dustin Klein 21.07.2011
interessant ist ja auch, dass nicht die Variable auf false überprüft wird sondern direkt "bool" o_O
außerdem, wenn schon als Erweiterungsmethode, dann doch bitte einfach "return !b;" xD
Karill Endusa 21.07.2011
Der bool Fehler war ein Tippfehler beim abschreiben ;-) Danke für den Hinweis. Ganz so blöd war er dann auch wieder nicht :D
Dustin Klein 21.07.2011
6
// Dear fellow programmer. You can be shure I tried my very best to make this look nicer.
// However there is no better solution to this.
// SO MOTHERFUCKER KEEP YOUR HANDS OFF.
21.07.2011
Rolfo 61 2
Das erinnert mich an einen früheren Kollegen. Er hatte als Lieblingstätigkeit das "umorganisieren" der Sourcen. Eines Nachts hat er wieder mal "alles" umgebaut, und am Morgen lief nichts mehr *g*
nabuchodonossor 22.07.2011
6
catch(DivideByZeroException ex){ //Only Cuck Norris can divide by zero
...
}
27.07.2011
Floyd 14,6k 3 9
+1 Der ist echt super :-)
multi1209 16.04.2012
5
Hab auch noch einen gefunden:

set
{
Debug.Assert(value != null);
if(value != null)
{
bnController = null; // darf nicht null sein
}
}
21.07.2011
ffordermaier 8,4k 3 9
oh man! wie geil is das denn xD
DerPunk 22.07.2011
5
Auch sehr schön:

// Magic! Do not touch!!!


oder generell

// Nicht anfassen!! Muß so ein!

ohne eine genaue Erklärung.
21.07.2011
Floyd 14,6k 3 9
normal, ne? :D
Wobei ich zugeben muss, das solche Kommentare durchaus ihre Daseinsberechtigung haben... bei der Verwendung externen Codes kann es durchaus vorkommen, dass man Sachen machen muss, die auf den ersten (bis hundertsten) Blick einfach vollkommen schwachsinnig und wahllos aussehen... interessanterweise funktioniert es aber nur dann.
Karill Endusa 16.08.2011
5
i++; // Increment i by one.


Als ich studiert habe, habe ich nebenher als Übungsleiter gearbeitet. Das war eine Zeile einer Abgabe, bei der ich aufgefordert hatte, die Abgabe bitte zu kommentieren ...
22.07.2011
Golo Roden 2,7k 3 9
4
Es gibt Kommentare, von denen man nicht glaubt, dass es sie gibt, wenn man sie nicht sieht.

Hintergrund: Im einem kommerziellen .NET-Programm wurde in einer Klasse die Schnittstelle IEquatable<T> implementiert. Allerdings wurde in Equals() nicht auf null geprüft, so dass ein Vergleich häufger mal eine NullReferenceException verursachte. Der Entwickler hat dass dann so gelöst, dass die Equals-Methode in diesen Fällen bei Vergleichen jeweils umgangen wurde. Die Equals()-Methode selbst hat er so kommentiert:

// TODO: remove me if possible


Das beziehe ich natürlich direkt auf den Verursacher ;-)
21.07.2011
Andreas Ganzer 1,4k 1 8
3
Auch ein eigenes Verbrechen:

// TODO: Kommentar ändern wenn alles erledigt
// WW_Erzeugung - hat zwar keine Orientations, ist aber wurscht!
foreach (var v in this.ElementContainer.SelectedElements["WW_Erzeugung"].Orientations)
{ ...
21.07.2011
nabuchodonossor 1,3k 5
3
Auch ein Klassiker der mir häufiger vor die Augen tritt:
if( IrgendEtwasKomplexesMitMehrerenAndsUndOrsUndVielleichtSogarKlammern ){
//nix
}
else{
doSomething();
}


Die Leute vergessen das ein einfaches
if( !(IrgendEtwasKomplexesMitMehrerenAndsUndOrsUndVielleichtSogarKlammern) )
den selben Effekt hat.
21.07.2011
Floyd 14,6k 3 9
Könnte daran liegen, dass hinter //nix früher was stand, was dann irgendwann überflüssig wurde. ;)
puls200 12.08.2011
Wenn man es schon löscht dann auch wieder richtig formatieren *grusel* :D
Dustin Klein 12.08.2011
1
Ich finde, es spricht auch was dafür, die originale Aufteilung zu belassen: noch eine Klammerebene mehr, und davor dann dieser schrecklich unauffällige Not-Operator - leserlicher wird es dadurch nicht. Außerdem ergibt es in der Historie der Versionsverwaltung ein Diff, dem man auf den ersten Blick ansieht, was da geändert wurde.

Das eigentliche Problem ist hier m.E., dass
IrgendEtwasKomplexesMitMehrerenAndsUndOrsUndVielleichtSogarKlammern

nicht in eine Methode ausgelagert wurde, deren prägnanter (und hoffentlich kürzerer) Name zusammenfasst, was der Sinn des logischen Ausdrucks ist.
Matthias Hlawatsch 16.08.2011
Auch wahr.
Floyd 16.08.2011
2
nicht gerade ein Kommentar, aber ein (leider von mir) produziertes Snippet:
//Anmerkung: bei iEinStr handelt es sich um einen String :D
iEinStr = iEinStr.Trim(" ".ToCharArray())

nett, eine unnötige Umwandlung eines Leerzeichens in ein Char-Array zum Trim() ... mal ehrlich, ein einfaches iEinStr.Trim() hätts auch getan ^^ aber sowas bemerkt man ja eh erst wenns zu spät ist.
21.07.2011
Karill Endusa 1,5k 1 9
Ich finde das "i" - welches ich als Integer der ungarischen Notation werten würde - irgendwie viel schlimmer im Namen der String-Variable.
Jens Duczmal 15.04.2012
war so nicht im Quelltext vorhanden und sollte hier nur als Abkürzung für "irgend" stehen :)
Keine Sorge, so schlimme Ausrutscher passieren mir nicht mehr
Karill Endusa 16.04.2012
2
Hier ein Klassiker (der schon viele Probleme gemacht hat)
Mit Kommentar fühlt man sich einfach besser.
catch
{
//Macht hier nix
}
21.07.2011
PinBack 687 1 8
1
Ein leeres catch sieht ja auch immer so trostlos aus :D
Dustin Klein 21.07.2011
0
Eine Methode mit dem Namen SuchsKatzi() fand ich mal recht amüsant.
14.04.2012
cybere 353 9
0
Ich schreib in Perlmodulen immer gerne hinter bless ein "# Bless my pointy litte ...." :) Hat schon für den einen oder anderen Lacher gesorgt.

Auch lustig ist ein "grep -iR fuck *" in so manchem Projektbaum :-)

Oder ein Kommentar aus dem Linuxkernel

printk(KERN_WARNING "GSCD: DMA kann ich noch nicht!\n");
linux-2.6.19/drivers/cdrom/gscd.c
(Do we have i18n'ed messages now? -- Ed.)
16.04.2012
Lord_Pinhead 778 1 8

Stelle deine Meta-Frage jetzt!