Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> C Sprache

C# Namespaces: Namenskonflikte vermeiden & Code organisieren

Was ist ein Namespace?

Ein Namespace ist ein logischer Container, der Typen (Klassen, Structs, Interfaces, Enums, Delegates) gruppiert und Namenskonflikte vermeidet. Gleichnamige Typen in verschiedenen Namespaces kollidieren nicht.

Namespace definieren

namespace MyCompany.MyProject.Utilities
{
    public class Helper { ... }
}

Typen verwenden

Vollqualifizierter Name:

MyCompany.MyProject.Utilities.Helper h = new MyCompany.MyProject.Utilities.Helper();

using-Direktive

Macht Typen eines Namespaces ohne Präfix verfügbar:

using MyCompany.MyProject.Utilities;

Helper h = new Helper(); // Kurzform

using Alias

Bei Namenskonflikten oder langen Namen:

using Util = MyCompany.MyProject.Utilities;
Util.Helper h = new Util.Helper();

Beispiel: Zwei Namespaces, gleiche Klassennamen

namespace FirstSpace
{
    public class MyClass { public void Func() => Console.WriteLine("FirstSpace"); }
}

namespace SecondSpace
{
    public class MyClass { public void Func() => Console.WriteLine("SecondSpace"); }
}

class Test
{
    static void Main()
    {
        FirstSpace.MyClass f = new FirstSpace.MyClass();
        SecondSpace.MyClass s = new SecondSpace.MyClass();
        f.Func(); // FirstSpace
        s.Func(); // SecondSpace
    }
}

Verschachtelte Namespaces

namespace Outer
{
    namespace Inner
    {
        public class NestedClass { }
    }
}

// Zugriff
Outer.Inner.NestedClass obj = new Outer.Inner.NestedClass();
// oder mit using
using Outer.Inner;
var obj2 = new NestedClass();

Best Practices

C Sprache

  1. C# Hello World – Ihre erste C#-Anwendung erstellen
  2. C# Keywords und Identifiers verstehen: Regeln, Listen und Best Practices
  3. C# Variablen & Primitive Datentypen meistern: Der komplette Guide
  4. C# Operatoren – Umfassender Leitfaden zu Operatoren in C#
  5. C# Bitweise und Bit-Shift-Operatoren meistern: Umfassender Leitfaden
  6. C# Grundlagen: Eingabe und Ausgabe Essentials
  7. C# Ausdrücke, Anweisungen & Blöcke: Umfassender Leitfaden mit Beispielen
  8. C# Kommentare meistern: Arten, Best Practices und XML-Dokumentation
  9. C# Switch Statement meistern: Syntax, Beispiele & Best Practices
  10. C# Ternärer Operator: Knapper Leitfaden zu bedingten Ausdrücken