C# - 1. lekce
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

C# - 1. lekceC# - 1. lekce

 

C# - 1. lekce

Google       Google       13. 6. 2006       71 300×

Tento kurz navazuje na Seriál C#. Řekneme si, které infromace ze seriálu byste si měli zopakovat a něco navíc samozřejmě doplním. Nakonec si zadáme první tzv. opakovací úkol.

Od doby, kdy byl seriál vydáván, se hodně změnilo, takže v tomto kurzu budeme využívat novinek z .NET Frameworku verze 2.0. Obnáší to tedy instalaci .NET Framework 2.0. Předpokládám využití Visual Studia C# 2005 Express.

Co je to .NET Framework?

.NET Framework je platforma z dílny společnosti Microsoft. Její začátky spadají do roku 2000 a má nahradit současný komponentový model programování – COM. Dalo by se říci, že tato platforma je vrstvou mezi aplikací a operačním systémem.

Software napsaný pro tuto platformu se nejprve zkompiluje do tzv. mezikódu &ndash MSIL (Microsoft Intermediate Language). Ten je uložen do exe či dll souborů. Když takový exe soubor spustíme na klientském počítači, .NET Framework MSIL kód zkompiluje do nativního kódu a spustí. Bližší informace o tom, jak to celé funguje, naleznete v článcích o architektuře Microsoft .NET Frameworku.

Pro platformu můžeme psát v mnoha jazycích (např. C++, VB.NET, J# atd.). Korunním jazykem se stal C#, což je, podle slov vývojářů z Microsoftu, další člen do rodiny C jazyků. Já bych se spíše přiklonil k tvrzení, že C++ je jeho bratr a Java sestra. Ve skutečnosti nezáleží na tom, v jakém jazyce budete aplikaci psát, kompilátory ji vždy přeloží do stejného – MSIL jazyka.

Jak asi všichni (většina) víte, pro běh aplikací je třeba nainstalovaný .NET Framework příslušné verze. Uznávám, že není zrovna ideální nutit uživatele kvůli malému prográmku stahovat 20 MB balík platformy, útěchou nám může být, že v budoucích Windows bude .NET Framework její součástí (např. Windows Vista beta 2 toto splňuje).

Základní struktura programu

Nebudu zde rozepisovat něco, co zde bylo dobře popsáno. Pro pochopení základní struktury doporučuji Seriál C# lekce 1, 2 a 4.

Vstup, výstup

Zatím pracujeme pouze s konzolovými aplikacemi. Zopakujeme si, jak předávat informace uživateli, a řekneme si, jak informace přijímat. K tomuto účelu slouží třída Console, se kterou jste se seznámili v příkladu Hello World.

Vypíšeme text:

Console.Write("Nějaký text");

Vypíšeme text a odřádkujeme:

Console.WriteLine("Další text");

Přečteme text z konzole a uložíme jej do proměnné vstup:

string vstup = Console.ReadLine();

Můžeme také celou plochu konzole vyčistit:

Console.Clear();

Pole a kolekce

Opět vás nejprve odkážu na Seriál C#, lekci číslo 5. Zmíním se zde o některých třídách, které vám mohou ulehčit práci s poli a seznamy.

Třída Array (jmenný prostor System)

Zde si ve zdrojovém kódu ukážeme některé užitečné metody: Inicializujeme si pole čísel typu Int32 (int):

int[] pole = { 2, 5, 1, 0, 7, 6, 11, 256, 111 };

Metoda BinarySearch nám vyhledá prvek v poli a vrátí jeho index. Když ho nenajde, vrátí −1:

int kdeJeNula = Array.BinarySearch<int>(pole, 0);

Metoda Reverse nám obrátí pořádí prvků v poli:

Array.Reverse(pole);

Metoda Sort nám seřadí prvky pole:

Array.Sort<int>(pole); 

Chtěl bych jenom upozornit na metody BinarySearch a Sort. Jedná se o tzv. generické metody. Co to přesně znamená, si vysvětlíme v budoucnu. Pro teď nám bude stačit vědět, že mezi špičaté závorky <T> (kde T značí typ objektu) napíšeme, s jakými typy bude metoda pracovat.

Třída List (jmenný prostor System.Collections.Generic)

Vytvoříme si instanci třídy List, do které budeme ukládat objekty typu long:

List<long> seznam = new List<long>();

Přidáme do seznamu několik prvků:

seznam.Add(1111);
seznam.Add(5151);
.................
.................

Pomocí cyklu foreach projdeme a vypíšeme všechny prvky:


foreach(long prvek in seznam)
	Console.WriteLine(prvek.ToString());

Velice užitečná je metoda ToArray(), která vrací obyčejné pole:

long[] pole = seznam.ToArray();

Pokud již nebudeme seznam dále potřebovat, vyčístíme ho:

seznam.Clear();

Třídu List je možné použít všude tam, kde neznáte dopředu počet prvků. I tato třída je generická, takže je nutno definovat typ, se kterým bude pracovat.

Prací se seznamy se budu věnovat v některé z dalších lekcí.

Operátory

Viz. Seriál C# lekce 7.

Shrnutí

V tomto bodě byste měli mít znalosti na vytvoření jednoduchých programů. Měli byste ovládat cykly, pole, být obeznámeni se seznamy a dokázat komunikovat s uživatelem prostřednictvím konzole.


Úkol číslo 1

Zadání
Vytvořte konzolovou aplikaci, do které uživatel zadá seznam čísel. Velikost seznamu uživatel zadá jako první. Program pak vypíše seznam čísel, jak jej přijal; potom seřazený seznam a obrácený seznam.

Příklad
Zadám, že počet čísel bude 3. Napíšu čísla 5, 6, 1. Program vypíše 5, 6, 1, pak 1, 5, 6 a 6, 5, 1.

Nápověda
Pro konverzi řetězce na číslo použijte metodu Int32.Parse(string).

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
Autor má rád programování, čtení, spaní a špagety. Nemá rád dechovku, rajskou.

Nové články

Obrázek ke článku Stavebnice umělé inteligence 1

Stavebnice umělé inteligence 1

Článek popisuje první část stavebnice umělé inteligence. Obsahuje lineární a plošnou optimalizaci.  Demo verzi je možné použít pro výuku i zájmovou činnost. Profesionální verze je určena pro vývojáře, kteří chtějí integrovat popsané moduly do svých systémů.

Obrázek ke článku Hybridní inteligentní systémy 2

Hybridní inteligentní systémy 2

V technické praxi využíváme často kombinaci různých disciplín umělé inteligence a klasických výpočtů. Takovým systémům říkáme hybridní systémy. V tomto článku se zmíním o určitém typu hybridního systému, který je užitečný ve velmi složitých výrobních procesech.

Obrázek ke článku Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Vedení týmu v oboru informačních technologií se nijak zvlášť neliší od jiných oborů. Přesto však IT manažeři čelí výzvě v podobě velmi rychlého rozvoje a tím i rostoucími nároky na své lidi. Udržet pozornost, motivaci a efektivitu týmu vyžaduje opravdu pevné manažerské základy a zároveň otevřenost a flexibilitu pro stále nové výzvy.

Obrázek ke článku Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Za poslední rok se podoba práce zaměstnanců změnila k nepoznání. Především plošné zavedení home office, které mělo být zpočátku jen dočasným opatřením, je pro mnohé už více než rok každodenní realitou. Co ale dělat, když se při práci z domova ztrácí motivace, zaměstnanci přestávají komunikovat a dříve fungující tým se rozpadá na skupinu solitérů? Odborníci na personalistiku dali dohromady několik rad, jak udržet tým v chodu, i když pracovní podmínky nejsou ideální.

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý