// Metoda Main jest to tzw. "Punkt wejścia programu". Musi być statyczna bo inaczej .net framework mogłby nie rozpoznac, ze jest to "Punkt wejścia programu". static void Main(string[] args) { // klasy Citizen są w różnych przestrzeniach nazw. Pełne nazwy tych klas to Assemblies.Poland.Citizen. Nie musimy uzywać pełnych nazw od tego słuzy nam dyrektywa using. Citizen pole = new Citizen(); USA.Citizen american = new USA.Citizen(); // Przestrzeń nazw i Assemble nie muszą być w relacji 1:1. // Jedna Assembla może zawierać wiele przestrzni nazw przykład Travelling. (moze zawierac klasy zdefinowane w wielu przestrzeniach nazw) // Jedna Przestrzen nazw moze istnieć w kilku Assemblach przykład Shopping/Paying. (klasy, elementy z jednej przestrzeni nazw mogą być zdefiniowane w wielu assemlach) Shoping shoping = new Shoping(); shoping.Pay(); TravellingByTrain travellingByTrain = new TravellingByTrain(); travellingByTrain.Pay(); //klasa z przestrzeni nazw Travelling. Klasy nie mogą nazywać się jak przestrzeń nazw. Gdyby nazwać tak samo kompilator poinformuje nas 'Travelling' is a namespace but is used like a type Assemblies. Travel travelling = new Travel(); travelling.TravelOnFoot(); // Klasy i inne elemnty z przestrzni nazw System zostały zaimplementowane w kilku assemblies tj.: mscorlib.dll, System.dll, System.Core.dll. //Własna klasa w przestrzeni nazw 'System' SystemData systemData = new SystemData(); systemData.GetComputerName(); systemData.GetUserName(); Console.ReadKey(); }