Kürzlich sah sich der Autor dieses Artikels vor die Aufgabe gestellt, im Rahmen eines Projekts einer bestehenden Anwendung weitere Funktionen hinzuzufügen. Dies ist für einen Entwickler eine der größten Herausforderungen, denn die bereits vorhandene Anwendung schränkt seinen Handlungsspielraum stark ein.
Das Projekt bestand aus drei Anwendungen, die sich in vieler Hinsicht ähneln. Es stellte sich schnell heraus, dass ein Großteil des Codes redundant war, da die Anwendungen viele Funktionen gemeinsam hatten. Eine Menge doppelten Codes fand sich in Klassen – daher bestand der erste Schritt darin, eine Klassenbibliothek zu erstellen, um den Wartungsaufwand zu reduzieren und die aktuelle Aufgabe, das Hinzufügen weiterer Funktionen, zu erleichtern.
Klassenbibliotheken
Man kann Klassenbibliotheken für jede Art von .NET-Anwendung einsetzen. Das .NET Framework enthält die .NET Framework Class Library, eine umfangreiche Sammlung mit Tausenden von Typen (Klassen, Interfaces, Strukturen, Delegaten und Enumerationen), die darauf abzielen, die Funktionalität wichtiger System- und Anwendungsservices zu verkapseln, um die Anwendungsprogrammierung einfacher und schneller zu machen.
Es gibt Klassen, mit denen man das Dateisystem manipulieren, auf Datenbanken zugreifen, Objekte serialisieren und mehrere Ausführungs-Threads starten und synchronisieren kann – um nur einige zu nennen. Wer sich die Arbeit mit diesen Klassen erleichtern will, kann Klassen mit ähnlicher Funktionalität in Namespaces zusammenfassen. Bei der Entwicklung von Anwendungen, die XML verwenden, ist unbedingt der Namespace System.XML erforderlich, der gleichzeitig eine Klassenbibliothek darstellt. Das .NET Framework kompiliert Klassenbibliotheken zu DLLs, so dass die Klassenbibliothek System.XML sich in der Datei System.XML.dll befindet.
Wenn man Visual Studio .NET benutzt, kann man einen Namespace (die DLL-Datei) dem Verweise-Abschnitt (References) des Projekts hinzufügen. Sobald man einer Assembly einen Verweis hinzufügt, lässt sich auf jeden der Typen in deren Namespaces zugreifen, indem man einen vollständig qualifizierten Verweis auf den Typ bereitstellt. Das Eingeben des vollständig qualifizierten Namens für jeden .NET-Typ kann rasch mühsam werden, besonders für Typen, die in den Tiefen eines hierarchischen Namespaces angesiedelt sind. Man kann aber auch die Direktiven Imports (VB.NET) und using (C#) zur Nutzung eines bestimmten Namespaces verwenden. Dies ermöglicht dem Compiler die Auflösung einer bestimmten Typ-Referenz, so dass man nicht den vollständig qualifizierten Pfad angeben muss.
Ausgeklügelte Phishing-Kampagne verwendet eine weiterentwickelte Version der Rhadamanthys-Stealer-Malware.
Die EU-Kommission kritisiert die Verknüpfung von Facebook und dem hauseigenen Online-Kleinanzeigendienst. Sie sieht darin einen…
Fast zwei Drittel halten jedoch eine Umsetzung aller Vorgaben von NIS 2 bis Jahresende für…
Mit dem Dekryptor von Bitdefender können Opfer von Attacken mit der Shrinklocker-Ransomware Dateien wiederherstellen.
In der Vorweihnachtszeit ist vor allem Malvertising auf dem Vormarsch. Cyberkriminelle locken Nutzer über schädliche…
Dazu trägt unter der Infostealer Lumma-Stealer bei. Hierzulande dominiert der Infostealer Formbook die Malware-Landschaft.