# Tuesday, July 22, 2008

Spartanisch Programmieren - von Stefan Lieser

Stefan Lieser schreibt in seinem Blog, er wäre ein Freund des spartanischen Programmierens. Ich kann mich ihm dort nicht anschließen, da ich lieber Code schreibe, der sich lesen lässt; Variablen bekommen Namen, die auch ein Außenstehender versteht, Code wird kommentiert, es wird mit Freizeilen zur Strukturierung gearbeitet etc. Aber das ist, wie Stefan bereits schrieb, eine persönliche Einstellung. Wenn sie nicht durch Implementierungskonventionen erzwungen oder verboten wird.

Weshalb ich mich jedoch aufgefordert fühle, auf seinen Blogpost zu antworten, ist sein Fast-Exit-Beispiel. Um eine große Verschachtelungstiefe zu vermeiden, schreibt Stefan lieber viele Exits in einer Funktion, statt seinen Code ordentlich zu strukturieren. Zuerst ein schlechtes Beispiel (von Stefan ebenfalls als schlecht angesehen):
public void DoSomething() {
  if (a) {
    if (b) {
      if (c) {
        DoItRealy();
      }
    }
  }
}
Nun seine Verbesserung (Stichwort Fast-Exit), mit der ich noch immer nicht einverstanden bin:
public void DoSomething() {
  if (!a) {
    return;
  }
  if (!b) {
    return;
  }
  if (!c) {
    return;
  }

  DoItRealy();
}

Und nun zwei Arten, die ich persönlich den beiden Vorangegangenen (nicht uneingeschränkt, aber meistens) vorziehen würde:
public void DoSomething() {
  if ( ( a )
    && ( b )
    && ( c ) )
  {
    DoItRealy();
  }
}

public void DoSomething() {
  if (!a) 
  {
    Log("Not a");
  }
  else if (!b)
  {
    Log("Not b");
  }
  else if (!c)
  {
    Log("Not c");
  }
  else
  {
    Log("All requirements complied.");
    DoItRealy();
  }
}

Tuesday, July 22, 2008 6:01:54 PM (W. Europe Standard Time, UTC+01:00) #    Comments [1] | Trackback
# Thursday, July 17, 2008

creative commons-Party in Siegen

So, nach langer Zeit nochmal ein Post. Diesmal auch nur, da der Lokalpatriotismus mich dazu treibt ;) Technische Einträge werden auch wieder hier erscheinen, allerdings ist momentan die Zeit einfach etwas zu knapp.

Nun zum eigentlichen Thema: In Siegen findet am 05.09.2008 die erste (Siegens erste) "creative commons"-Party statt. Das 7inch geht auch diesmal wieder in die Vorreiterrolle; dort geht es um 19:00 Uhr los, der Eintritt ist frei (was auch sonst). Wer möchte, kann sich die dort gespielte Musik auf einen mitgebrachten USB-Stick kopieren lassen. Und wer nicht kommen kann, findet neben einigen Informationen auch zwei Live-Streams auf der Seite der Veranstalter.

Falls sich jemand fragt, was eine "creative commons"-Party ist: Creative Commons ist eine Lizenzform, so wie die GPL. Nun gibt es Musiker, die ihre Musik unter einer CC-Lizenz veröffentlichen. Je nach Ausprägung kann diese Musik unterschiedlich verwendet werden (herunterladen und weiterverbreiten, weiterverbreiten nur mit Nennung des Künstlers etc.). Die Beiträge in diesem Blog werden zum Beispiel unter der "CC by-nc-sa"-Lizenz veröffentlicht: Man darf vervielfältigen, veröffentlichen, verbreiten und weiterverarbeiten. Bedingungen: Namensnennung, keine kommerzielle Nutzung, Weitergabe unter gleichen Bedingungen.

Eine "creative commons"-Party nun ist eine Party, bei der nur Musik gespielt wird, die frei erhältlich ist, sozusagen Open-Source-Musik. Daher ist auch die Mitnahme auf USB-Stick möglich.

Thursday, July 17, 2008 11:33:58 AM (W. Europe Standard Time, UTC+01:00) #    Comments [0] | Trackback
# Thursday, June 19, 2008

C# XML Documentation

During my nightly coding session working on my gps class library for my smart phone I started to use the xml decomentation tags see and seealso. Later on after the "nightly build" I had several warnings that the compiler could not resolve the types provided inside these tags. But thanks to Alan Dean and his great artivle about XML documentation in C# my usual sleep amount wont be decreased as much as I feared 10 minutes before.

Thursday, June 19, 2008 10:58:44 PM (W. Europe Standard Time, UTC+01:00) #    Comments [0] | Trackback
# Sunday, April 20, 2008

Häuser wie Software

Und wieder hat der Code-Inside Blog einen sehr interessanten, diesmal weniger lustigen, weil leider wahren Artikel in seinem Blog veröffentlich. Allerdings hätte ich Mark durch Euro ersetzt; Was aber zeigt, dass das Problem bereits sehr lange bekannt und doch immer noch nicht gelöst wurde.

Sunday, April 20, 2008 11:37:51 AM (W. Europe Standard Time, UTC+01:00) #    Comments [0] | Trackback