Facebook
Twitter
Google+
Kommentare
13

Buchtipp: Clean Code

Für diejenigen, die nur wenig Zeit haben um Artikel zu lesen:
Clean Code ist meine neue Bibel. Jeder Entwickler sollte es gelesen haben. Also: Kaufen, lesen, anwenden. Machen wir die Code-Welt ein bisschen besser. Jetzt.

3826655486Für alle die etwas mehr Zeit haben:
Ich habe in den vergangenen Jahren viele Bücher über: „So programmiert man richtig!“ gelesen. Keines dieser Bücher hat es geschafft, mich wirklich zu begeistern. Ja. Na klar weiss ich wie man entwickeln sollte. Auch schon vor dem Lesen dieses Buches. Aber entscheidend ist das Warum und das Wie. Robert C. Martin schafft es ein eigentlich sehr trockenes Thema sehr anschaulich nahe zu bringen. Dabei „sieht“ man wie er sich selbst entwickelt hat. Er beschreibt es sogar an eigenem Code, den er selbst refactored. Ich finde schön, dass alle Dos and Don’ts der Programmierung behandelt werden. Einfach zu befolgende Regeln werden aufgestellt und geben dem Leser die Möglichkeit nachzuvollziehen, wie auch ein großer Berg braune Masse nach dieses Regeln mit der Zeit besser wird. Jawohl. Besser. Nicht schlechter.

Regeln wie:
  • Dry (Dont repeat yourself)
  • Yagni (You ain’t gonna need it)
  • Separation of concerns
  • Eine Methode/Funktion macht genau EINE Sache.
  • Hinterlasse den Berg ein bisschen sauberer als Du ihn vorgefunden hast (Pfadfinderregel)
  • Sprechende Name für Klassen, Methoden, Variablen
  • Ein Programmierer schreibt ein Buch, das andere lesen können müssen
  • Testen, testen, testen, testen, testen und nochmal testen (Das erst erlaubt Refactoring)
  • Nichts muss beim ersten Versuch perfekt sein, aber die Entwicklung hört nicht beim „es läuft“ auf.
  • Warum brauchen Methoden/Funktionen mehr als 3 Parameter? Damit man andere Ärgern kann!
  • Ein guter Entwickler schreibt einfachen  und gut nachvollziehbaren Code.
  • Viele Kommentare sind unnütz.

Naja.. Und ein paar mehr. Diese Regeln helfen wirklich. Wenn man anfängt danach zu programmieren, versteht man sehr schnell, dass Dependency Injection ganz toll ist, wenn man Unittests schreiben will.

Robert C. Martin beschreibt auch warum Projekte, die nicht diesen Regeln folgen immer wieder zu großen braunen Bergen werden und wie man anfangen kann zu analysieren, wo die Bräune am dunkelsten ist. Dazu gibt die Liste von Code-Smell, die ich gerne ausdrucke und an Wände hänge. Einfach nur um sie vor Augen zu haben, wenn man programmiert. Probiert es mal. Es hilft wirklich.Er gibt auch Tips, worauf man zum Beispiel bei der Programmierung mit paralleler Verarbeitung achten muss und wie man auch diese Aufgaben mit einfachen Mitteln lösen kann.

Dieses Buch hat mir in vielen Punkten geholfen. Es hilft auch bei der Argumentation gegen verbreitete Quick and Dirty – Argumente. Als Sahnetop ist es noch sehr gut lesbar und macht sogar richtig Spaß. Kleine Bilder, Zitate und natürlich Uncle Bob helfen dabei. Der einzige, kleine Wehrmutstropfen ist die, in der Deutschen Ausgabe, teilweise, fehlerhafte Übersetzung. Da hat der Autokorrektor ein paar mal böse zugeschlagen.

Über den Autor

Mike Lohmann

Mike Lohmann arbeitet zur Zeit als Software Architekt beim Verlag Gruner+Jahr AG & Co KG. Er arbeitet seit 1998 im IT-Bereich und seit 2000 im Bereich Webentwicklung.
Kommentare

13 Comments

  1. Wem die ganzen schönen, praktischen und plausiblen Regeln und Hilfestellungen zu viel auf einmal sind. Sollte sich mal http://clean-code-developer.de/ ansehen.

    Dort werden die Praktiken und Prinzipien aus „Clean Code“ und aus anderen Quellen in sowas wie Judo-Dans aufgeteilt. So kann man sich nach un nach auf sen jeweilig Ausschnitt konzentrieren und in sein tägliches Arbeiten übergehen lassen.

    Reply
  2. Auch hier Daumen hoch!
    Zwar ist auch mal der ein oder andere Hinweis auch mal gewoehnungsbeduerftig (Kommentare braucht man nicht) aber gut nachvollziehbar und nicht dogmatisch.

    Schoen, dass du es auch endlich gelesen hast! 😉

    Reply
  3. Ich persönlich finde auch die dt. Übersetzung gelungen und würde jedem, der lieber deutsche Bücher liest, dies an Herz legen.

    Reply
  4. Das Buch ist fantastisch und gehört meines erachtens auf jeden Programmiererschreibtisch. Weitere Lesempfehlungen: Refactoring (Martin Fowler) und Working Effectively With Legacy Code (Michael Feathers). Über beide Bücher wurde hier schon gesprochen.

    Reply
  5. Ich finde das gute an dem Buch ist, dass es einfach die Grundlegensten Regeln aufzeigt und man ein wenig die Augen geöffnet bekommt…

    Mir gefällt auch, dass es ein wenig in die Kerbe vom Pragmatischen Programmierer schlägt….

    Reply
  6. Danke für den Tip.

    Aber ist die Short URL wirklich notwendig um Deine Amazon Affiliate ID zu verstecken Nils? Wirkt auf mich immer komisch sowas. Als würde wir sonst nicht drauf klicken …

    Reply
  7. @Martin: Erstmal nachprüfen … die URLs spuckt dir Amazon so aus, wenn du den Twitter Link generieren lässt und das ist die einfachste Möglichkeit den Link zu bekommen, denn ansonsten muss man sich erst durchklicken. Außerdem ist der Artikel immer noch nicht von mir.
    Trotzdem danke fürs Lesen 😉

    Reply
  8. Guter Tipp, vielen Dank dafür. Werde ich mir auf jeden Fall mal ansehen. Was haltet ihr von „Besser PHP programmieren“ von Möhrke?

    Ich hätte mal eine ganz andere Frage. Ich studiere Wirtschaftsinformatik und wir haben für das nächste Semester „Webhacking – Demo“ als Projektarbeit zugewiesen bekommen.

    Nun wollte ich fragen, ob ihr Tipps für mich habt, welche Bücher sich dafür besonders gut eignen.

    Es geht darum, dass wir einen kleinen Onlineshop aufbauen sollen und ihn während und nach dem Aufbau entsprechend absichern sollen. Stichworte: Cross-Site-Scripting, SQL Injection etc. pp.

    Habt ihr mir vielleicht irgendwelche Tipps?

    Reply

Leave a Comment.

Link erfolgreich vorgeschlagen.

Vielen Dank, dass du einen Link vorgeschlagen hast. Wir werden ihn sobald wie möglich prüfen. Schließen