what is a namespace?
A namespace is a method of organizing a group of assemblies, classes, or types. A namespace acts as a container—like a disk folder—for classes organized into groups usually based on functionality. C# namespace syntax allows namespaces to be nested. For instance, to access the built-in input-output (I/O) classes and members, use the System.IO namespace. Or, to access Web-related classes and members, use the System.Web namespace. All C# programs should call the System namespace—the father of all .NET Framework namespaces. A namespace is similar to a Java package. However, whereas Java package names dictate the source files directory structure, C# namespaces dictate only the logical structure. The C++ namespace syntax is similar to the C# syntax.
Namespaces are unique forms of identification connected with a given organization that has created some type of XML schema. The main function for a namespace is to avoid any ambiguity in naming related to the Uniform Resource Identifier (URI). This is in spite of the fact that the label or title may be found in a variety of different metadata sets. One easy way to think of a namespace is to consider this type of scoping construct as a specified set of closed names. Essentially, this set of closed names is divided in such a way that creates an attribute name for each function or class, but at the same time remains an identifiable construct in its own right. The result of this type of action is that the namespace can interact with all sorts of protocols, such as packages, modules, classes, and procedures. A common component in the use of Extensible Markup Language or XML, the namespace makes it possible to distinguish one set of closed names from another, even if they contain some of the