Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Lesedauer 2 Min.

Refaktorieren führt nicht zu besserem Code

Laut einer jüngst veröffentlichten Studie von Forschern in Sri Lanka ist das Überarbeiten und Umstrukturieren von Programmcode komplett unnütz.
Die Ziele für das Überarbeiten von existierendem Code sind klar definiert: Der Code soll lesbarer und effizienter werden und alles in allem leichter zu pflegen sein. Es wird allgemein angenommen, dass die heute für das Refaktorieren investierte Zeit geringer wiegt als die zukünftigen Kosten, wenn der Code unter Termindruck geändert werden muss. All diesen Annahmen widerspricht die Studie welche die Forscher aus Sri Lanka hier veröffentlicht haben.Der überarbeitete Code ist danach nicht leichter zu verstehen, nicht leichter zu ändern, er läuft nicht schneller, spart keine Ressourcen und es gibt keinen Grund anzunehmen, dass der Code nach dem Refaktorieren einfacher zu Pflegen wäre. Dies sind die Kernaussagen der Studie. Diese wurde allerdings anhand einer recht überschaubaren Anwendung mit lediglich 4.500 Zeilen C#-Code durchgeführt. Dabei kamen zehn gängige Refactoring-Techniken zum Einsatz. Beurteilt wurde der Code dann von Studenten der Universität von Kelaniya -- die Hälfte begutachtete den alten, die andere Hälfte den neuen Code. Die gemessenen Unterschiede waren marginal.Freilich ist das Ergebnis nicht zu verallgemeinern. Bei einer Stichprobe von 1 gilt das Ergebnis auch nur für genau diese Stichprobe. Deren Code war eben schon vorher ganz brauchbar. Man müsste mal 333 zufällig ausgewählte Programme unterschiedlicher Länge derselben Analyse unterziehen. Dann wären die Ergebnisse vermutlich aussagekräftiger. [bl]

Neueste Beiträge

Delphi als Turbo für die mobile Entwicklung - Mobile Apps entwickeln mit Delphi, Teil 1
Delphi ermöglicht es, effizient plattformübergreifende Anwendungen zu erstellen. In diesem ersten Teil der Serie beleuchten wir die Motivation ebenso wie das Setup eines ersten Beispielprojekts.
6 Minuten
SSH für.NET-Applikationen mit SSH.NET - Best of NuGet, Teil 1
SSH – dahinter verbirgt sich die Abkürzung Secure Shell – ist insbesondere im Bereich der unixoiden Systeme weit verbreitet. Mit SSH.NET steht ein NuGet-Paket zur Verfügung, das die Interaktion mit der sicheren Remote Shell aus .NET-Applikationen heraus zu ermöglichen sucht.
6 Minuten
25. Sep 2025
DDC hakt nach: Wie baust Du eine Softwarearchitektur ohne Schuldenfalle auf?
Moderne Softwarearchitektur muss zukunftsfähig sein – aber auch schon heute funktionieren. David Tielke über den architektonischen Spagat zwischen Cloud, KI, Schuldenmanagement und gesundem Menschenverstand.
7 Minuten
22. Sep 2025
Miscellaneous

Das könnte Dich auch interessieren

PolyCoder: Quelloffener KI-Code-Generator - Carnegie Mellon University
PolyCoder ist ein quelloffener KI-Code-Generator, der mit 249 GByte Daten in zwölf Programmiersprachen trainiert wurde und laut Forschern C-Code mit großer Genauigkeit verfasst.
2 Minuten
15. Mär 2022
Sicher ist sicher - Azure DevOps Pipelines Security
Als integraler Bestandteil der Entwicklungsumgebung ist Azure DevOps Pipelines oft Ziel von Angriffen. Da ist es gut zu wissen, wo die Schwachstellen des Systems liegen.
14 Minuten
16. Jun 2025
C#-.NET-Apps mit WinUI 3 - Komponentenbasierte Apps mit Fluent/FAST, Teil 3
Microsoft macht mit WinUI 3 ein natives User-Experience-Framework für Windows verfügbar, dessen Komponenten auf dem Microsoft-eigenen Design-System Fluent 2 basieren.
23 Minuten
13. Mai 2024
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige