Unterschied zwischen Namespace und Assembly

Namensraum vs Assembly

Im .NET-Framework bestehen Assemblys aus verschiedenen Bausteinen. Diese bilden die Schlüsseleinheit, die für die Bereitstellung, Wiederverwendung, Kontrolle der Sicherheitsberechtigungen und den Aktivierungsbereich verwendet wird. Eine Assembly dagegen ist eine Sammlung von Typen und Ressourcen, die zusammengebaut werden und eine logische Einheit bilden. Betrachtet man eine Assembly, ist es offensichtlich, dass sie mit ihren Informationen die Common Language Runtime bereitstellt und damit ihre Implementierungen erkennen kann. Ein Typ hingegen ist zur Laufzeit nicht vorhanden, insbesondere außerhalb des Kontexts einer Assembly.

Ein Blick auf den Namespace zeigt auch, dass es eine Sammlung von Klassen gibt. Dies macht den Namespace zu einer ausgezeichneten Wahl, die in der logischen Organisation von Klassen verwendet werden kann. Dies ist eine sehr leistungsfähige Steuerungsfunktion, die den Namespace für Benutzer sehr wertvoll macht.

Beim Betrachten der .NET-Umgebung, in der ein Namespace in Bezug auf Visual Studio vorhanden ist, bezieht sich der Stamm-Namespace darauf, wozu jede in Visual Studio erstellte Klasse Teil wird. Der Namespace übernimmt an der Basis auch alle eventuell vorhandenen Sub-Namespaces und wird automatisch zugewiesen, wenn eine Klasse innerhalb des Projektordners erstellt wird. Beachten Sie auch den Assemblynamen der kompilierten Datei, in die der Code kompiliert wird.

Bei der Standardanwendung von Visual Studio sollte ein Standardnamespace mit demselben Namen wie der Assemblyname erstellt werden. Es ist jedoch ratsam, zuerst zu überlegen, was Sie benötigen, bevor Sie entscheiden, ob Sie denselben Namen verwenden möchten oder nicht. Es ist wichtig, an das Umbenennen und Umbenennen zu denken, da dies, wenn es ohne Vorsicht gemacht wird, den Benutzern viele Kopfschmerzen bereiten kann. Dies ist insbesondere bei der Quellcodeverwaltung der Fall. Wenn Sie für den Namensraum und den Assemblynamen unterschiedliche Namen wünschen, sollten Sie zunächst die gesamten Projektordner umbenennen.

Ein einfacher Weg, um aufkommende Probleme zu behandeln, besteht darin, einen Projektnamen zu haben, der einen beschreibenden Namen darstellt, der die Konzepte des Projekts darstellt. Auf der anderen Seite sollte der Name der Baugruppe möglichst versuchen, die Komponentenverteilung und die Technologie sowie den Firmennamen zu berücksichtigen.

Die Assembly sollte immer Namespaces, Klassen und Datentypen enthalten, da sie eine kleine Einheit ist, die für die Codeentwicklung dient. Beachten Sie, dass Assembly den Namen der DLL-Datei definiert. Da es die Einheit ist, die die DLL-Datei definiert, ist es auch derselbe Dateiname, der in Fällen verwendet werden muss, in denen das DLL-Problem vermieden werden muss. Der Namespace hat sich als hervorragendes Element erwiesen, das Konflikte beim Generieren benutzerdefinierter Klassen verhindert.

Zusammenfassung

  1. Namespace ist eine Sammlung, deren Namen jeweils eindeutig sind

  2. Die Verwendung von Namespaces hilft bei der Erstellung logischer Grenzen zwischen Klassengruppen.

  3. Es muss unbedingt sichergestellt werden, dass der Namespace jederzeit in den Benutzereigenschaften definiert ist, um die Funktionalität sicherzustellen

  4. Die Montage dagegen ist eine Einheit der Leistung

  5. Assembly hilft bei der Versionierung und Bereitstellung

  6. Es enthält MSIL-Code

  7. Es gibt eine Selbstbeschreibung in Assembly anstelle von Namespace

  8. Die Assembly ist der Baustein der .NET-Umgebung

  9. Assembly ist eine Sammlung von Funktionen in Build und Funktion

  10. Assembly hilft bei der Verwaltung von Typen und Ressourcen, die entweder zugänglich sind oder sich innerhalb der Implementierungseinheit befinden