Mario Sedlak
Softwareentwicklung
Software
Computer
Hauptthemen

Wiederverwendbarkeit von Programmteilen

Wiederverwendbarkeit wird häufig als großes ungelöstes Problem der Softwareentwicklung bezeichnet. Man verweist z. B. auf die Auto-Industrie, die ihre verwendeten Teile standardisiert hat und dadurch unnötige Neuentwicklungen vermeidet. Aber ich glaube, dieser Vergleich hinkt, denn Software ist viel komplexer als ein Auto.

Problem

Bei einfachen Dingen, etwa einem Eingabefeld, klappt die Standardisierung und Wiederverwendung noch gut, denn die Funktionsweise ist ebenso standardisiert, sodass es kaum Spezialwünsche gibt. Dasselbe Eingabefeld kann überall eingebaut werden. Kaum ein Programmierer wird es je neu erfinden müssen.

Völlig anders sieht es aus, wenn man z. B. eine Standardkomponente zur Anmeldung auf Webseiten schreiben will. Zum Anmelden muss man meist Benutzername und Passwort eingeben, manchmal aber auch mehr. Das Aussehen muss zur Webseite passen. Alle Texte müssen änderbar sein. Vielleicht muss man auch mal ein Javascript einbinden. Serverseitig kann die Überprüfung der Anmeldung völlig verschieden aufgebaut sein. Hier stößt die Wiederverwendbarkeit meines Erachtens naturgemäß auf Grenzen:

Vergleiche

Wörterbücher und Lexika lassen sich gut standardisieren, aber es wäre wohl aussichtslos, wollte man einen Roman schreiben, der ausschließlich aus "wiederverwendbaren Textteilen" besteht. Einen Roman kann man nicht schreiben, indem man vorgegebene Bausteine zusammensetzt, so wie man die standardisierten Bauteile zu einem Auto zusammensetzen kann.

Einfachheit und beliebige Anpassbarkeit sind nahezu Gegensätze. Ein Beispiel:

Im Wirtshaus kann man ein Wiener Schnitzel bestellen. Das ist einfach. Du hast damit aber keinen Einfluss auf die gewählten Zutaten und die Art der Zubereitung. Wenn du alles genau bestimmen willst, hast du viel zu definieren: Auswahl der Lieferanten, Dicke des Schnitzels, Schlagstärke beim Klopfen usw. bis zur Art des Geschirrs, das verwendet werden soll. Und wenn du das falsche Geschirr oder das falsche Öl nimmst, wird das Schnitzel ungenießbar.

Es ist eben nicht einfach, alles beeinflussen zu wollen! Und im Endeffekt ist es dann wahrscheinlich einfacher, es gleich selbst zu machen.

Mein Fazit

Durch entsprechenden Programmierstil kann man die Wiederverwendbarkeit von Programmteilen erhöhen, aber in der Regel kann man nur bei einfachen, standardisierten Aufgaben so programmieren, dass die Aufgabe ein für alle Mal gelöst ist.

Weiter

Programmiersprachen