{"id":512,"date":"2015-02-04T13:14:00","date_gmt":"2015-02-04T11:14:00","guid":{"rendered":"http:\/\/www.bundes-telefonbuch.de\/blog\/?p=512"},"modified":"2020-03-24T08:45:59","modified_gmt":"2020-03-24T06:45:59","slug":"refactoring","status":"publish","type":"post","link":"https:\/\/www.bundes-telefonbuch.de\/blog\/was-ist-eigentlich\/refactoring\/","title":{"rendered":"Was ist eigentlich &#8230; Refactoring?"},"content":{"rendered":"<p>Refactoring, zu deutsch Umstrukturierung, ist ein Begriff aus der <a title=\"Was ist eigentlich \u2026 Agilit\u00e4t?\" href=\"http:\/\/www.bundes-telefonbuch.de\/blog\/was-ist-eigentlich\/ist-eigentlich-agilitaet\/\">agilen<\/a> Softwareentwicklung und beschreibt die Bearbeitung eines Programmcodes. Ziel des Refactoring ist die bessere Lesbarkeit, \u00dcbersichtlichkeit und Erweiterbarkeit von Quelltexten.<\/p>\n<p>Wenn Sie schon einmal einen Blick in einen Quellcode geworfen haben, werden Sie verstehen, dass so ein Programm schnell un\u00fcbersichtlich werden kann. Selbst erfahrene Programmierer ben\u00f6tigen Zeit, um sich bei tausenden Zeilen Quellcode einen \u00dcberblick zu verschaffen.<\/p>\n<p>Sie k\u00f6nnen sich so einen Quelltext vorstellen wie eine gro\u00dfe Fabrikhalle, in der etwas produziert wird. Das Endprodukt ist in unserem Fall dann zum Beispiel eine Website oder ein Computerprogramm. In der Fabrikhalle gibt es verschieden Maschinen (im Quellcode spricht man von Funktionen), die jeweils eine bestimmte Aufgabe haben. Umso komplexer das Endprodukt, umso mehr Maschinen gibt es und umso un\u00fcbersichtlicher wird die Fabrikhalle. Ziel ist es also, die Fabrikhalle so aufzubauen, dass jemand, der sie zum ersten Mal betritt, sich schnell einen \u00dcberblick verschaffen kann. Das kann man zum Beispiel tun, indem man den Maschinen eindeutige Namen gibt und eine Dokumentation dar\u00fcber pflegt, welche Aufgaben die einzelnen Maschinen haben. (Ja, auch in der Programmierung haben Funktionen Namen und werden im Idealfall dokumentiert.)<\/p>\n<p>Stellen Sie sich nun vor, Sie wollen die Fabrikhalle erweitern. Sie stellen Kleidung her. Bisher gibt es Maschinen, die die Stoffe zuschneiden, n\u00e4hen und verpacken. Nun sollen die Pullover zus\u00e4tzlich einen Aufdruck erhalten. Sie haben daf\u00fcr mehrere M\u00f6glichkeiten: Sie k\u00f6nnten die Pullover-N\u00e4h-Maschine so erweitern, dass Sie zus\u00e4tzlich Aufdrucke anfertigt. Sie k\u00f6nnten aber auch eine komplett neue Maschine nur f\u00fcr Aufdrucke aufstellen. Das hat den Vorteil, dass Sie auch Pullover ohne Aufdruck herstellen, andere Kleidungsst\u00fccke bedrucken und Fehler schneller beheben k\u00f6nnen.<\/p>\n<p>Nach dem gleich Prinzip ist ein gut strukturierter Quellcode mit seinen Funktionen aufgebaut.<\/p>\n<p>Refactoring kann also einige Zeit in Anspruch nehmen (gerade bei sehr unstruktierten Fabrikhallen), spart diese auf lange Sicht aber wieder ein. N\u00e4mlich dann, wenn neue Programmierer sich in kurzer Zeit im Quellcode zurechtfinden, Bugs schneller beheben und problemlos neue Funktionen implementieren k\u00f6nnen.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Refactoring, zu deutsch Umstrukturierung, ist ein Begriff aus der agilen Softwareentwicklung und beschreibt die Bearbeitung eines Programmcodes. Ziel des Refactoring ist die bessere Lesbarkeit, \u00dcbersichtlichkeit und Erweiterbarkeit von Quelltexten. Wenn Sie schon einmal einen Blick in einen Quellcode geworfen haben,&hellip;<\/p>\n<p class=\"more-link-p\"><a class=\"more-link\" href=\"https:\/\/www.bundes-telefonbuch.de\/blog\/was-ist-eigentlich\/refactoring\/\">Read more &rarr;<\/a><\/p>\n","protected":false},"author":2,"featured_media":515,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[120],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.bundes-telefonbuch.de\/blog\/wp-json\/wp\/v2\/posts\/512"}],"collection":[{"href":"https:\/\/www.bundes-telefonbuch.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bundes-telefonbuch.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bundes-telefonbuch.de\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bundes-telefonbuch.de\/blog\/wp-json\/wp\/v2\/comments?post=512"}],"version-history":[{"count":3,"href":"https:\/\/www.bundes-telefonbuch.de\/blog\/wp-json\/wp\/v2\/posts\/512\/revisions"}],"predecessor-version":[{"id":520,"href":"https:\/\/www.bundes-telefonbuch.de\/blog\/wp-json\/wp\/v2\/posts\/512\/revisions\/520"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bundes-telefonbuch.de\/blog\/wp-json\/wp\/v2\/media\/515"}],"wp:attachment":[{"href":"https:\/\/www.bundes-telefonbuch.de\/blog\/wp-json\/wp\/v2\/media?parent=512"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bundes-telefonbuch.de\/blog\/wp-json\/wp\/v2\/categories?post=512"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bundes-telefonbuch.de\/blog\/wp-json\/wp\/v2\/tags?post=512"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}