TOC

This article is currently in the process of being translated into Czech (~99% done).

Začínáme:

Hello world explained

V minulé kapitole jsme si v naší první C# aplikaci zkusili vypsání textu do konzole. Abychom viděli nějaký skutečný pokrok, nešli jsme při vysvětlování kódu do detailů a tato kapitola je tedy zaměřená na vysvětlení použitého kódu. Při pohledu na kód si všimněte, že některé řádky si jsou navzájem podobné, a proto je vysvětlíme po skupinách. Začneme s nejkratšími a nejběžnějšími znaky v našem kódu: { a }. Často se jím říká složené závorky (curly braces), a v C# označují začátek a konec logického bloku kódu. Složené závorky se používají v mnoha jazycích, například v Javě, C++, javaScriptu a dalších. V kódu lze vidět, že se používají k zaobalení několika řádků kódu které patří k sobě. V dalších příkladech bude jejich využití jasnější.

Začněme od začátku:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using je klíčové slovo, zvýrazněné modrou barvou editorem. Klíčové slovo using importuje jmenný prostor (namespace), což je vlastně kolekce tříd. Třídy přináší nějakou funkcionalitu, a při práci s pokročilým IDE jako je Visual Studio, obvykle části triviálního kódu vytvoří za nás. V tomto případě za nás vytvořil třídu a importoval jmenné prostory, které jsou vyžadovány, nebo jsou běžně využívány. Tentokrát se jedná o 5 jmenných prostorů, a každý z nich obsahuje mnoho užitečných tříd. Jako příklad uvedu třídu Console, kterou jsme použili, a která je součástí jmenného prostoru System.

Na druhou stranu jsme zatím nijak nevyužili jmenný prostor System.Linq, takže jestli máte rádi čistý kód, můžete tento řádek smazat, ale nijak zvlášť na tom nezáleží.

Všimněte si, že máme i svůj vlastní jmenný prostor:

namespace ConsoleApp1

Jmenný prostor ConsoleApp1 je nyní hlavním jmenným prostorem této aplikace, a nové třídy budou jeho součástí. Pochopitelně to lze změnit a nové třídy vytvářet v jiném jmenném prostoru. Pokud daný nový jmenný prostor budete chtít v aplikaci použít, budete jej muset importovat klíčovým slovem using stejně jako všechny ostatní.

Dále si definujeme naší třídu. Jelikož C# je skutečně objektově orientovaný jazyk, každý řádek kódu, který opravdu něco dělá, je zaobalen uvnitř třídy. V tomto případě se třída jmenuje jednoduše Program:

class Program

Můžeme mít více tříd, dokonce i ve stejném souboru. Prozatím nám ale stačí jen jedna. Třída může obsahovat různé proměnné, vlastnosti a metody, což jsou koncepty, kterými se budeme zabývat později. Prozatím vám stačí vědět, že naše stávající třída obsahuje pouze jednu metodu a nic jiného. Je deklarována takto:

static void Main(string[] args)

Tento řádek kódu je nejspíš ten nejkomplikovanější v tomto příkladě, takže si ho trochu rozdělíme. Prvním slovem je static. Klíčové slovo static nám říká, že tato metoda by měla být přístupná bez inicializace třídy, o čemž si řekneme více v kapitole o třídách.

Dalším klíčovým slovem je void, a to nám říká co by tato metoda měla vrátit. Mohlo by se například jednat o integer, nebo string (řetězec) textu, ale v tomto případě nechceme, aby nám metoda cokoliv vracela (C# používá klíčové slovo void k vyjádření konceptu NIC).

Dalším slovem je Main, což je jméno naší metody. Tato metoda je jakýmsi vstupním bodem naší aplikace, neboli první částí kódu, která se spustí, a v našem případě také jediným kódem, který se spustí.

Za jménem metody lze v závorkách specifikovat argumenty. V našem případě metoda přijímá jen jeden argument, a sice args. Tento argument je datového typu string, nebo abychom byli přesnější, pole stringů, ale o tom si povíme více později. Když se nad tím zamyslíte, dává to smysl, jelikož Windows aplikace mohou vždy být zavolány s několika nepovinnými argumenty. Tyto argumenty jsou pak předány jako řetězce textu (string) do naší main metody.

A to je vše. Nyní byste měli alespoň na základní úrovni rozumět své první C# aplikaci, a také základním principům, na kterých konzolová aplikace stojí.

This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!