Die Wiederverwendung von Code ist eine Methode zur Entwicklung von Computern und anderen Systemen, bei der bereits vorhandener Code wiederverwendet wird. Ein System sollte teilweise oder vollständig aus Teilen von früher geschriebenen Komponenten und/oder Teilen eines anderen Systems bestehen. Die Wiederverwendung von Code ist die wichtigste Methode, um die Arbeitskosten bei der Entwicklung komplexer Softwaresysteme zu senken.
Gespräche über die "Wiederverwendung von Code" sind unter Programmierern sehr beliebt, und meist äußern sie sich positiv darüber. Sie glauben gerne, dass die von ihnen entworfenen Designs "universell" und "für andere Projekte geeignet" sind. Aber ist das wirklich so?

Code-Wiederverwendung: Lohnt sich das?

Die Wiederverwendung von Code ist sehr nützlich, wenn Sie etwas erstellen, das Sie als Bibliothek für mehrere Projekte verwenden wollen. Diese Methode spart Zeit und Ressourcen und reduziert den Aufwand durch die Verwendung bereits erstellter Ressourcen. Der Schlüsselgedanke bei der Wiederverwendung von Code ist, dass Teile eines Computerprogramms, die zu einem bestimmten Zeitpunkt geschrieben wurden, bei der Erstellung anderer Programme verwendet werden können, die zu einem späteren Zeitpunkt geschrieben wurden.
Bei einigen so genannten "Wiederverwendungs"-Codes werden einfach einige oder alle Codes aus einem bestehenden Programm in ein neues Programm kopiert. Obwohl Organisationen diesen Ansatz verwenden können, können sie mit vielen der gleichen Probleme konfrontiert werden, die bei Lizenzcodes durch Kürzung und Programmierung entstehen.

Arten der Wiederverwendung von Code

Viele Forscher haben daran gearbeitet, die Wiederverwendung von Code schneller und einfacher zu gestalten. Die Wiederverwendung von Code kann weiter klassifiziert werden:
? Interne Wiederverwendung - die Organisation verwendet ihre eigenen Komponenten wieder. Dies kann eine gute geschäftliche Entscheidung sein, da die Organisation eine Komponente kontrollieren möchte, die für das Projekt entscheidend ist.
? Externe Wiederverwendung - das Unternehmen kann eine Komponente eines Drittanbieters lizenzieren. Die Lizenzierung einer Komponente eines Drittanbieters kostet in der Regel 1-20 Prozent der Entwicklungskosten innerhalb des Unternehmens. Das Team sollte auch den Zeitaufwand für die Suche, Untersuchung und Integration der Komponente berücksichtigen.
Einer der größten Märkte für Vorlagen ist zum Beispiel https://themeforest.net/. Hier kann man Themen kaufen, Text und Bilder bearbeiten und die Website so veröffentlichen, wie man sie selbst erstellen würde. Das ist kein schlechter Ansatz, wenn Sie ein kleines Unternehmen sind und eine schnelle Lösung brauchen. Die große Frage ist - was ist, wenn Sie eine Facebook-ähnliche Website erstellen wollen, können Sie eine Vorlage finden und sie wiederverwenden? Selbst wenn Sie das können, lautet die Antwort nein. Denn es ist schwer, sich an die Codebasis eines anderen anzupassen, und auch sehr schwer zu aktualisieren, und wahrscheinlich ist es einfacher, ein neues Projekt von Grund auf zu beginnen.

Vor- und Nachteile der Methode der Wiederverwendung von Code

Lassen Sie uns die Vor- und Nachteile der Wiederverwendung von Code betrachten. Unser Ziel ist es, die Kosten zu senken, die Zuverlässigkeit zu erhöhen und die Konsistenz zu verbessern.
? Kosten - Die Kosten für die Nutzung vorhandener Software sind in der Regel geringer als die Kosten für die Entwicklung eines gleichwertigen Produkts. Die Kosten für den Kauf von Softwareprodukten sind geringer als die Kosten für die Nutzung von Open-Source-Projekten. Obwohl die Änderung des bestehenden Codes schwieriger ist als das Schreiben eines neuen Codes).
? Verlässlichkeit - Beim Umschreiben von Code können zwei Situationen leicht übersehen werden. Die erste ist ein funktionaler Code, der vom ursprünglichen Autor hinzugefügt wurde. Die zweite ist ein neuer Code, der dem Quellcode hinzugefügt wurde, nachdem ein Fehler im Test entdeckt wurde. Die Verwendung von bewährtem Code ist in der Regel zuverlässiger als neuer Code.
? Konsistenz - die vom System bereitgestellte externe Schnittstelle muss konsistent sein: Schreiben Sie einen neuen Code, der mit anderen Teilen der Systemfunktion konsistent sein kann.
Wir sollten auch an die Größe des Projekts denken. Im Folgenden finden Sie zum Beispiel die Vor- und Nachteile der Wiederverwendung von Code für eine kleine Website.
Vorteile:
? Schnell auf den Markt.
? Günstiger Preis (normalerweise ist das eine kleine Gebühr oder 10-30 USD pro Monat).
? Enthält häufig Aktualisierungen.
Benachteiligungen:
? Ihr Endprodukt ist nicht einzigartig (fühlt sich an wie eine Vorlage billige Lösung).
? Oft nicht sehr viel anpassbar.
? Sie müssen noch einen Programmierer oder einen freiberuflichen Programmierer einstellen, um das Projekt umzusetzen.

Bei komplexen und großen Anwendungen stellt sich die Situation der Wiederverwendung von Code anders dar

Vorteile:
? Wenn eine Lösung 100% Ihren Anforderungen entspricht und über einen qualifizierten Support und einen günstigen Preis verfügt, ist es sinnvoll, sie zu verwenden.
Benachteiligungen:
? Immer noch erheblich kosten (eine in der Regel eine monatliche bezahlte Plan Sie gehen, um für immer zu zahlen).
? Sie brauchen ein internes Team, das den Betrieb und die Entwicklung/Verbesserung verwaltet.
? Das ist sehr schwierig, mit einer anderen Codebasis zu arbeiten, manchmal sogar unmöglich, da es sehr chaotisch sein kann.

Risiken der Wiederverwendung von Code

Die Wiederverwendung von Code ist mit gewissen Risiken verbunden. Es gibt Situationen, in denen sie einfach unmöglich ist. Ein Problem bei der Rechtfertigung von Investitionen besteht darin, dass manche Manager keine Zeit für die Beherrschung des alten Codes haben. Ein weiteres potenzielles Risiko ist ein mangelndes Verständnis des Umfangs und der Komponenten des Codes. Ein weiteres potenzielles Risiko ist die Unfähigkeit, eine Analyse durchzuführen.
Der Wunsch, den gesamten Code zu verstehen, kann eine überwältigende Aufgabe sein, daher ist es wichtig, den Code in Komponenten zu unterteilen und die wichtigsten Teile für die Wiederverwendung hervorzuheben. Nehmen Sie sich die Zeit, um die wiederzuverwendenden Codebestandteile zu identifizieren. Manchmal kann es notwendig sein, den Code vollständig zu dokumentieren. Zum Beispiel aufgrund gesetzlicher Vorschriften, aber Versuche, den gesamten Code wiederzuverwenden und zu dokumentieren, sind in der Regel nicht effektiv. Das primäre Ziel sollte darin bestehen, Codeschnipsel für die Dokumentation und Wiederverwendung zu identifizieren.

Wiederverwendung von Code: vier Schlüsselaspekte für den Erfolg

Die wichtigsten Schlüsselaspekte einer erfolgreichen Wiederverwendung von Code sind:
1. Verstehen der Architektur des ursprünglichen Codes, um Komponenten, Grenzen und Schnittstellen zu identifizieren.
2. Bestimmung des Potenzials für die Wiederverwendung.
3. Bewertung des Zeitaufwands für die Wiederverwendung im Vergleich zur Neuerstellung von Komponenten.
4. Entscheidung über jede Komponente: was soll wiederverwendet werden und wie (unverändert, mit geringfügigen oder wesentlichen Änderungen).

Schlussfolgerung

Das Wichtigste ist, dass es sehr einfach ist zu denken "hmmm diese Lösung entspricht 80% von dem, was ich brauche". Sicherlich ist es billiger, einfach zusätzliche Funktionen hinzuzufügen. Trotzdem empfehlen wir Ihnen das nicht. Es ist schwieriger, die bestehende Struktur und Lösung anzupassen, das Design zu ändern und alles unter einem anderen Code zu machen.
Die Wiederverwendung von Code ist möglich, solange Sie sich mit einer Nachahmung oder einer völlig identischen Lösung zufrieden geben. In dem Moment, in dem Sie den bestehenden Code anpassen, wird es schwierig, die Struktur in der richtigen Weise beizubehalten. Die Wiederverwendung von Code ist keine Option für Sie, wenn Sie eine hervorragende Leistung erzielen wollen. Die kundenspezifische Entwicklung ist zwar teuer, bringt aber Qualität, wenn Sie die richtigen Entwickler auswählen.