WikiDer > Refaktor

Refactoren

Refactor (Englisch: Refactoring) restrukturiert die Quellcode von a Computer Programm mit dem Ziel, die Lesbarkeit und Wartbarkeit zu verbessern oder den Code zu vereinfachen. Das Refactoring des Quellcodes ändert nichts an der Funktionsweise der Software: Jeder Refactoring-Schritt ist ein kleiner, rückgängig zu machender Schritt, der die Lesbarkeit erhöht, ohne die Funktionsweise zu ändern. Es wird hauptsächlich verwendet in extremes Programmieren, eine Form von Agile Software Entwicklung.

Software-Refactoring

Refactoring erfolgt hauptsächlich in objektorientiertenProgrammiersprachen wenn C , Java und C#. Beispiele für Refaktoren sind:

  • Umbenennungsmethoden, Variablen und Klassen
  • Konstrukteure durch Fabrikmethoden ersetzt
  • Konvertieren von Klassen mit nur statischen Methoden in a Singleton
  • Verallgemeinerung von (Teilen von) Klassen zu einem Basistyp
  • Kapselung öffentlicher Variablen durch Funktionen (Datenverbergung)

Modern Ideen wie NetBeans und Eclipse-JDT und ein Dutzend andere unterstützen das Refactoring, damit das Refactoring immer abgeschlossen ist. Wichtig ist hier, dass die entsprechenden Kommentar wird aktualisiert.

Hardware-Refactoring

Früher wurde der Begriff „Refactoring“ nur für Software verwendet, in den letzten Jahren wird aber auch Programmcode in Hardwarebeschreibungssprachen (HDLs) umgestaltet. Der Begriff Hardware-Refactoring wird in Hardware-Beschreibungssprachen als praktische Abkürzung für das Refactoring von Code verwendet. Da HDLs von den meisten Elektroingenieuren nicht als Programmiersprache angesehen werden, kann das Hardware-Refactoring als eine vom herkömmlichen Code-Refactoring getrennte Technik betrachtet werden.

Zeng und Huss führten das automatische Refactoring analoger Hardwarebeschreibungen in der Sprache VHDL-AMS ein. Bei ihrem Ansatz bewahrt ein Refactoring das simulierte Verhalten des Hardware-Designs. Die nicht-funktionale Verbesserung besteht darin, dass der neue Code mit Standard-Synthesewerkzeugen weiterverarbeitet werden kann, während dies mit dem ursprünglichen Code nicht möglich war. Ein leitender Ingenieur des Technologieunternehmens Synopys, Mike Keating, hat untersucht, wie digitaler HDL-Code umgestaltet werden kann. Sein Ziel ist es, komplexe Systeme leichter verständlich zu machen, was die Produktivität von Ingenieuren verbessern kann.

Es gibt Tools auf dem Markt für Hardware-Refactoring.