© saicle/Shutterstock.com
PHP Magazin
Zehn Gründe, warum Legacy-Code zu vermeiden ist

You shall not!

Du möchtest guten Code schreiben, der nachhaltig ist und die Softwarequalität hoch hält? Dann solltest du einige Dinge beachten, die im CoderAlltag leider gerne übersehen werden.

Roland Golla


So gilt zunächst einmal immer die Regel, vor dem Schreiben über die nächsten Schritte nachzudenken und diese zu planen. Und daneben gibt es natürlich jede Menge andere hilfreiche Grundsätze für erfolgreiches Coden. Klar bei all dem ist: Eine kurzfristige Lösung ist oftmals der falsche Weg – zumal es meist nicht viel länger dauert, Clean-Code zu schreiben. Gegenüber Legacy-Code spart man so unter dem Strich sehr viel Zeit, die ansonsten für die Wartung aufgewendet werden müsste. Das darf man nie vergessen.

#1: Das Single-Responsibility-Prinzip

Gerade beim Code Refactoring fällt immer wieder auf, dass einzelne Methoden viel zu viele Aufgaben übernehmen. Das ist kontraproduktiv. Vielmehr sollte jede Methode (in dem Zusammenhang auch „Unit“ genannt) nur eine Aufgabe haben, denn dadurch lässt sich Code viel leichter lesen, testen und debuggen. Macht eine Methode hingegen mehrere Dinge, wird es schwerer, sie zu verstehen. Zudem wird es somit auch schwerer, einen Bug zu finden, der sich buchstäblich in solchen Codenestern verstecken kann. Als Entwickler muss man sich dann immer wieder neu einlesen. Das kostet nicht nur viel Zeit, sondern geht auch zu Lasten der Motivation und Lebensqualität.

#2: Erst denken, dann schreiben

Programmierer kennen das Phänomen: Code ist in dem Moment, in dem man ihn schreibt, einfach zu verstehen – doch wenn man aus der Pause kommt oder ihn länger nicht gesehen hat, plötzlich nicht mehr. Das hat mit der Herangehensweise zu tun.

Grundsätzlich schreiben wir Code, damit wir ein Problem, oder besser gesagt eine Aufgabe, aus der realen Welt in Maschinensprache übersetzen und lösen. Das große Problem dabei ist, dass wir die Aufgabe mit all ihren Ansprüchen in der realen Welt meist nicht zu Ende gedacht haben. Egal, wen genau da nun die Schuld trifft – alle Szenarien abzubilden, die ein User gehen kann, ist immer eine große Herausforderung. Dennoch wird im Allgemeinen viel zu wenig aus der Sicht des Users gedacht.

Darüber hinaus sind Unit-Tests der Schlüssel zur Steigerung der Softwarequalität. Hier steht man der Stabilität der Methode in Bezug auf fehlerhafte Parameter und ihrem eigenen Verhalten bei unterschiedlichen Cases viel kritischer gegenüber und entwickelt dadurch besseren Code.

#3: Über Lesen und Verstehen

Aussagekräftige Variablen­, Methoden­ und Klassennamen sind sehr verbreitet, und trotzdem muss man das Thema leider ansprechen. „Wir benennen das später noch mal um …“ Hier hat Robert C. Martin alias Uncle Bob bereits ganz richtig er...

PHP Magazin
Zehn Gründe, warum Legacy-Code zu vermeiden ist

You shall not!

Du möchtest guten Code schreiben, der nachhaltig ist und die Softwarequalität hoch hält? Dann solltest du einige Dinge beachten, die im CoderAlltag leider gerne übersehen werden.

Roland Golla


So gilt zunächst einmal immer die Regel, vor dem Schreiben über die nächsten Schritte nachzudenken und diese zu planen. Und daneben gibt es natürlich jede Menge andere hilfreiche Grundsätze für erfolgreiches Coden. Klar bei all dem ist: Eine kurzfristige Lösung ist oftmals der falsche Weg – zumal es meist nicht viel länger dauert, Clean-Code zu schreiben. Gegenüber Legacy-Code spart man so unter dem Strich sehr viel Zeit, die ansonsten für die Wartung aufgewendet werden müsste. Das darf man nie vergessen.

#1: Das Single-Responsibility-Prinzip

Gerade beim Code Refactoring fällt immer wieder auf, dass einzelne Methoden viel zu viele Aufgaben übernehmen. Das ist kontraproduktiv. Vielmehr sollte jede Methode (in dem Zusammenhang auch „Unit“ genannt) nur eine Aufgabe haben, denn dadurch lässt sich Code viel leichter lesen, testen und debuggen. Macht eine Methode hingegen mehrere Dinge, wird es schwerer, sie zu verstehen. Zudem wird es somit auch schwerer, einen Bug zu finden, der sich buchstäblich in solchen Codenestern verstecken kann. Als Entwickler muss man sich dann immer wieder neu einlesen. Das kostet nicht nur viel Zeit, sondern geht auch zu Lasten der Motivation und Lebensqualität.

#2: Erst denken, dann schreiben

Programmierer kennen das Phänomen: Code ist in dem Moment, in dem man ihn schreibt, einfach zu verstehen – doch wenn man aus der Pause kommt oder ihn länger nicht gesehen hat, plötzlich nicht mehr. Das hat mit der Herangehensweise zu tun.

Grundsätzlich schreiben wir Code, damit wir ein Problem, oder besser gesagt eine Aufgabe, aus der realen Welt in Maschinensprache übersetzen und lösen. Das große Problem dabei ist, dass wir die Aufgabe mit all ihren Ansprüchen in der realen Welt meist nicht zu Ende gedacht haben. Egal, wen genau da nun die Schuld trifft – alle Szenarien abzubilden, die ein User gehen kann, ist immer eine große Herausforderung. Dennoch wird im Allgemeinen viel zu wenig aus der Sicht des Users gedacht.

Darüber hinaus sind Unit-Tests der Schlüssel zur Steigerung der Softwarequalität. Hier steht man der Stabilität der Methode in Bezug auf fehlerhafte Parameter und ihrem eigenen Verhalten bei unterschiedlichen Cases viel kritischer gegenüber und entwickelt dadurch besseren Code.

#3: Über Lesen und Verstehen

Aussagekräftige Variablen­, Methoden­ und Klassennamen sind sehr verbreitet, und trotzdem muss man das Thema leider ansprechen. „Wir benennen das später noch mal um …“ Hier hat Robert C. Martin alias Uncle Bob bereits ganz richtig er...

Neugierig geworden?


    
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang