Jetzt aktualisieren!
05/11/2023
Weshalb sollte man seinen Code aktuell halten? 5 gute Gründe
Die IT-Welt entwickelt sich ständig weiter – das Wissen Entwicklungsteams besser als alle anderen. Doch auch nachdem eine Website, App oder Software geliefert wurde, ist noch nicht alles in Stein gemeisselt. Entwickler*innen verbessern ihre Arbeit fortlaufend weiter und aktualisieren und pflegen ihren Code. Dafür gibt es eine ganze Reihe von Gründen: Sie beheben Bugs, lösen Konflikte, profitieren von den Vorteilen der Funktionen neuer Versionen und mehr. Warum ist es so unverzichtbar, den eigenen Code immer aktuell zu halten? Wir wollen uns fünf Beispiele ansehen, die deutlich aufzeigen, warum dieser Prozess so entscheidend ist.
1. Die Interoperabilität mit verschiedenen Komponenten oder Drittanbieterdiensten gewährleisten
Die Entwicklungsarbeit erfordert gelegentlich den Rückgriff auf bestimmte Komponenten oder Dienste von Drittanbietern, besonders bei komplexen Projekten. Entsprechend wichtig sind die Integrationsmöglichkeiten und Interoperabilität zwischen den verschiedenen in einem Projekt genutzten Technologien. Beispiel Im Rahmen meiner Arbeit habe ich 2015 eine mobile Android-App entwickelt. Für das Projekt musste ich die Push Notifications-API von Google verwenden. Bei meiner Recherche fand ich heraus, dass die Version, die ich nutzen wollte, wenige Monate später eingestellt werden sollte. Ich konnte letztendlich die neue Version der API verwenden, doch hätte ich diesen Punkt nicht überprüft, hätte die Anwendung nach kurzer Zeit nicht mehr korrekt funktioniert. Ich hätte die Änderung im Nachhinein vornehmen müssen, was die Nutzenden der Anwendung beeinträchtigt hätte.
2. Bibliothekskonflikte auflösen
Ein weiterer zentraler Grund für die Code-Aktualisierung ist das Auflösen von Konflikten zwischen Bibliotheken. Je aktueller die genutzten Versionen von Programmiersprachen, Bibliotheken, Tools usw. sind, desto besser wird die Performance und desto weniger Bugs entstehen. Ausserdem werden ältere Versionen ab einem gewissen Zeitpunkt oft nicht mehr unterstützt, nachdem neue Versionen veröffentlicht wurden. Selbst Versionen, die noch unterstützt werden, können Abhängigkeiten und Konflikte zwischen Bibliotheken, Tools, Softwareanwendungen und mehr erzeugen. Wenn mehrere Bibliotheken verwendet werden, können diese Abhängigkeiten und Konflikte dazu führen, dass nach der Aktualisierung einer einzelnen Bibliothek – und sei es nur für die Einführung einer neuen Funktion – für jede der Bibliotheken eine neue Version benötigt wird. Beispiel Wurde eine Ihrer Websites, Softwarelösungen oder Anwendungen mit AngularJS entwickelt? Ich empfehle Ihnen die Migration zu Angular 2+, da TypeScript ständig weiterentwickelt wird. Gleichzeitig wird es mit Angular 2+ leichter, einen geeigneten Code für die Nutzung bestimmter Funktionen zu finden. Zudem ist die Entwicklungs-Community grösser und bietet einen umfangreicheren Support, etwa mit Bibliotheken und Tipps zur Problemlösung, und es ist einfacher, Entwickler*innen zu finden, die mit Angular 2+ vertraut sind.
3. Sich an technologische Entwicklungen anpassen
Durch den rapiden technologischen Fortschritt kommen ständig neue Elemente ins Spiel, die bewirken, dass Software die aktuellen Anforderungen nicht mehr erfüllt und weiterentwickelt werden muss. Wenn Unternehmen Software weiterverwenden, die mittlerweile als veraltet gilt, bremsen sie sich damit häufig selbst aus. Früher oder später müssen diese sogenannten Legacy-Systeme zwingend modernisiert werden, damit sie weiter funktionsfähig und an die technologische Umgebung angepasst bleiben. Code-Aktualisierungen sind damit unverzichtbar. Besonders deutlich werden die Auswirkungen des technologischen Wandels und die Notwendigkeit, Code entsprechend weiterzuentwickeln, beim Websitedesign. Lange Zeit wurden Websites mit einer Auflösung von 900 Pixeln Breite entwickelt. Mittlerweile sind mobile Browser ins Spiel gekommen und haben die Situation vollständig verändert: Wenn Ihre Website etwa zehn Jahre alt ist und damals perfekt dargestellt wurde, ist fast sicher davon auszugehen, dass sie heute nicht mehr so angezeigt wird, wie sie sollte. Der Anteil der Website-Aufrufe über Mobilgeräte hat enorm zugenommen (2023 erfolgten etwa 60 % des weltweiten Datenverkehrs über Mobilgeräte) und auch auf Desktop-Computern hat sich die Auflösung geändert. Websites müssen somit nicht nur an die Auflösungen von Smartphones und Tablets von 1.900 Pixeln oder mehr angepasst werden, sondern auch an die häufig noch grösseren Auflösungen von Computern. Zum Glück gibt es viele Tools, mit denen Entwicklungsteams Designs erstellen können, die sich an verschiedene Bildschirmgrössen anpassen. Texte passen sich der Bildschirmgrösse an, Elemente wechseln die Position und werden neu angeordnet, während eine Person auf der Website navigiert (statt einfach mehr Scrollen zu erfordern), und mehr. Beispiel Bootstrap gehört zu den Tools, die das Layout und die Anpassung von Code an verschiedene Auflösungen erleichtern. So lässt sich sicherstellen, dass eine Website unabhängig von der Bildschirmgrösse (etwa von Computern, Smartphones und Tablets) korrekt dargestellt wird.
4. Ein hohes Sicherheitsniveau aufrechterhalten
Die Optimierung von Code ist auch deshalb so wichtig, weil sie es ermöglicht, Sicherheitslücken zu schliessen. Cyberkriminelle nutzen Schwachstellen in Software oder Apps aus, um ihre Funktion zu beeinträchtigen, sensible Daten zu stehlen oder sich Zugang zu IT-Systemen zu verschaffen und umfassendere Angriffe durchzuführen. Sie sind geschickt darin, vor allen anderen Schwachstellen aufzuspüren, die bisher weder bemerkt noch behoben wurden – die berüchtigten „Zero-Day“-Schwachstellen. Ausserdem enthalten Anwendungen meist sensible Daten (Bankdaten, Kundendaten, personenbezogene Daten usw.), die mit entsprechenden Sicherheitsmassnahmen und Patches geschützt werden müssen, damit Cyberkriminelle Schwachstellen nicht ausnutzen können. So lassen sich nicht autorisierte Zugriffe und Datenlecks verhindern. Sicherheitsfragen stehen bei der Entwicklungsarbeit mehr und mehr im Vordergrund. Deutlich wird das durch den „DevSecOps“-Ansatz (Development – Security – Operations). Das Prinzip besteht darin, Sicherheitsaspekte bereits bei der Konzeption des Projekts und während seines gesamten Lebenszyklus einzubeziehen, anders als bei traditionellen Vorgehensweisen, die sich erst am Ende des Projekts mit der Sicherheit beschäftigen. Während der verschiedenen Entwicklungszyklen werden Scans und Sicherheitstests durchgeführt. Möglich sind auch Pentests (Penetrationstests) für den Code während der wichtigsten Entwicklungsphasen.
5. Fehlenden Support überbrücken
Es kommt nicht selten vor, dass Tools, die bei der Entwicklung genutzt werden, in dieser Zeit das Ende ihrer Lebensdauer erreichen: Anbieter kündigen an, dass ab einem bestimmten Datum kein Support mehr angeboten wird und keine Sicherheitsupdates und neuen Funktionen mehr veröffentlicht werden. Beispiel Im Jahr 2021 kündigte Microsoft an, dass das Silverlight-Plugin ab Oktober 2021 nicht mehr unterstützt wird. Ich selbst habe unter anderem an der Migration einer Website zu HTML 5 gearbeitet, die zuvor Silverlight verwendet hatte.
Die Code-Aktualisierung gilt als ein grundlegender Schritt, der fest zur Entwicklungsarbeit dazugehört. Fragen Sie sich nun, wie es mit den Technologien und Tools aussieht, die Sie selbst in Ihrem Alltag verwenden? Warten Sie nicht, bis die Technologien veraltet sind, bevor Sie einen qualifizierten Anbieter suchen. Sprechen Sie mich an: Ich analysiere schon heute den Code Ihrer Software, Websites und Anwendungen und prüfe, ob der Code weiterhin aktuell ist und noch unterstützt wird.