Direktiva using
Rozebereme si program Hello world!. Příkaz vidíme na prvním řádku. První vidíme direktivu using.
Direktiva using nám říká, že používáme určitý prostor jmen, to se vyplatí, pokud tento prostor jmen používáme opakovaně a pak
tento prostor jmen můžeme jednoduše vynechat.
using System;
class Program
{
static void Main()
{
Console.WriteLine("Hello, World!");
Console.ReadLine();
}
}
V programech se objevuje velké množství objektů a každý musí mít jedinečné jméno. Proto se zavedly prostory jmen
pro různé vlastnosti. Prostory jmen jsou různé, mají třeba názvy podle toho, co dělají. Takže System je prostorem jmen a Console je jméno objektu.
Kdyby jsme nepoužili jmenný prostor, zápis by musel vypadat takto:
class Program
{
static void Main()
{
System.Console.WriteLine("Hello, World!");
System.Console.ReadLine();
}
}
Kdybych měl kuchaře - ten by krájel mrkev, loupal brambory, vařil rejži atd. A automechanika ten by spravoval motor, měnil olej,
svářel atd. Tak automechanik a kuchař budou jmenné prostory. Objektem budou ty činnosti, co dělají. Na co tedy furt používat dalšího kuchaře k činostem, co zvládne jeden kuchař, tak ho jednoduše zaměstnáme na všechny úkony
a další nemusíme zaměstnávat.
Používáme-li objekt System.Console a v něm jsou určité metody, které zde umožňují výstup do standardního výstupu a čtení z něj.
Jsou to metody WriteLine a ReadLine. Z toho je jasné, že volání metody začíná jménem objektu, pak následuje tečka a jméno metody. Za jménem
metody musí být kulaté závorky, zde mohou, či nemusí být parametry metody - tedy data, která by se měla dále zpracovávat.
Metoda Main()
Od metody Main() vždy začíná program, když se zavolá. Takže všechny příkazy v metodě Main budou provedeny, tak jak jdou za sebou, počínaje prvním.
Metoda Main() musí vždy začínat velkým písmenem, jelikož je C# Case-Sensitive. Tedy dvě slova s různě velkými písmeny bere jako odlišná. Takže plevel, Plevel, PleVel jsou tři různě odlišná slova v jazyce C#.
Slovo static nám říká, že jde o statickou proměnnou. Slovo void, že metoda nevrací žádnou hodnotu, ale o tom ještě později.