programozás c# nyelven - mfpi.hu · pdf fileforráskód: vb, c#, j#, cobol,...
TRANSCRIPT
Programozás C# nyelven (alapok)
Miről lesz szó?
A C# nyelv szintaktikája
Példák konzol felületen
A C# jellemzői
A grafikus felület
Módszertani kérdések
A .NET keretrendszer
Forráskód: VB, C#, J#, Cobol, stb.
Közbülső nyelv: MSIL vagy IL (Microsoft Intermediate Language)
Futtatás előtti fordító (Just-in-time compiler)
Menedzselt kód: Futtató környezetben, pl. szemétgyűjtés, jogosultságok
Fejlesztői környezet, pl. Visual Studio
A C# nyelv története
Új nyelv a .NET keretrendszerhez
Azzal együtt, 2000-ben mutatták be
Visual Basic egyszerűsége + C++ hatékonysága C# programozási nyelv
Hello World!
Indítás New Project Console Application
Project: összetartozó fájlok, neve az exe neve lesz Solution: összetartozó projektek (több nyelv)
A kód:
Az exe fájl helye: Project\bin\debug
Életkor I.
Változók, típusok I.
Szigorúan típusos nyelv:
egész: byte (0..255), int (32 bit), long (64 bit), maradékos osztás: /, maradékképzés: %
lebegőpontos: float, double Math.Abs(x), Math.Sin(x), Math.PI, ...
char: unicode karakter (´g´) string: szöveg (˝gé˝)
logikai: bool (true vagy false)
Változó deklarálása: int x; vagy int x=2;
Változók, típusok II.
Konvertálás:
számmá: Convert.ToInt32(x)
szöveggé: x.ToString() vagy x.ToString(˝F2˝)
kényszerített: (int) x
Értékadás, egyenlőség: a = 2; //értékadás
a == 2 //egyenlőség vizsgálat
a != 2 //egyenlőtlenség vizsgálat
a++; //inkrementálás
a += 2; //növelés
Életkor II.
Egy utasítás esetén:
Több utasítás esetén {} közé:
A változó automatikusan konvertálódik
Családi pótlék
Többirányú elágazás szintaxisa:
Fényújság I.
for ciklus szintaxisa:
Késleltetés (a ciklusmagban):
Fényújság II.
while ciklussal:
Hátultesztelő: do {...} while (feltétel);
foreach ciklus: lista elemeinek bejárása
Vektorok használata I.
Deklarálás: objektumként, i-edik eleme: v[i]
Vektorok használata II.
Jól használható érdekességek:
Részekre bontás I. (egyszerű)
A C# teljesen objektumorientált
Osztály: adattagok + metódusok
.NET keretrendszerben: osztálykönyvtárak
Névtér: hasonló funkciókat ellátó osztályok
Meghívás: System.Console.ReadLine(); vagy using System; majd Console.ReadLine();
public: elérhető kívülről, private: nem
Az osztályok „áthidalása”: Statikus adattag: nem az osztályban tárolódik Statikus metódus: a statikus tagokat kezeli
Részekre bontás II. (OOP)
Grafikus példa: Átváltás
MessageBox
TextBox, txtN
Button cmdOK
Label
Form
Eseménykezelő eljárás
cmdOK_Click()
Pizzarendelés I.
RadioButton optKicsi
(Kezdőérték: true)
CheckBox chkSonka
NumericUpDown nupDb
(Kezdőérték: 1 Kell hozzá címke is)
GroupBox (egy kiválasztott
lehet)
Label lblFizetendő
(AutoSize: false BorderStyle: Fixed3D
TextAlign: MiddleRight
Kezdőérték: 600)
Pizzarendelés II.
A három kijelölt objektum feliratkozik a CheckedChanged eseményre
Új eljárást hozunk létre Változás néven
Később a többi objektumot is hozzávesszük
Pizzarendelés III.
A közös kód. Gondoskodni kell a megfelelő konverziókról is. (A sortörés megengedett.)
Néhány fontosabb tulajdonság
Vezérlő neve: (name), felirata: Text
Bevitt érték (konvertálni kell):
TextBox: Text (string)
RadioButton: Checked (bool)
CheckBox: CheckState (-1, 0, 1) vagy Checked
NumericUpDown: Value (int)
HScrollBar, VScrollBar: Value (int)
Módszertani kérdések
A karakteres felület gyorsabb, de nem kelti fel az érdeklődést
Grafikus felületen vezérlőkkel:
TextBox, Label Változók, típusok, számítások
RadioButton, CheckBox elágazások
ListBox Ciklus, Tömb
Karakteres felület Sztringek, programozási tételek
CommonDialogControll Fájlkezelés
Ajánlott irodalom
Könyvek:
Reiter István: C# programozás lépésről lépésre
Sipos Marianna: Programozás élesben, C#
Novák István (szerk.): Windows 8 fejlesztés lépésről lépésre
Érettségi feladatok megoldása C# nyelven:
http://jos.hu/Letoltes/Programozas.htm