rem -> A C# programok .NET futásidelyű környzete a CLR rendszer. rem Itt futtathatóak, úgynevezet IL fájlok, mely tartalmazza a kezelt/maneged kódot rem és ennek fájl kiterjesztése már exe rem -> Hól találom .NET -et és a c# fordítot (vagy fordítókat)? dir /s %WINDIR%\Microsoft.NET\CSC.EXE rem -> Hogyan hozzak létre fejlesztői mini környezetet? cd %HOMEPATH% // saját alap lünyvtárunkba lépés a gépen mkdir miedemo // fejlesztői, teszt munka könyvtár létrehozása cd miedemo // könyvtárba lépés, használatba vétel rem ----------------------------------------- rem : clr futtató környezet beállítás c: cd c:\Users\kecskemetilajos\Documents\WORK\sj\" rem dir rem pause rem ----------------------------------------- rem -> fordítás 1. c:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe Hello.cs rem -> futtatás 1. Hello.exe rem ----------------------------------------- rem -> fordítás 2. c:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe MieForm.cs rem -> futtatás 2. Hello.exe pause rem ----------------------------------------- Rem lefordultó kód vezérlése és kód futtatása .NET -ben rem -> fordítás 3. c:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /t:winexe MieForm.cs rem -> futtatás 3. MieForm.exe rem ----------------------------------------- rem Egy pár egyebb kapcsoló c:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe -nologo MieForm.cs rem ----------------------------------------- pause rem ----------------------------------------- rem rsp (Response fájl) használata rem -> rsp fálj tartalma /target:exe /out:Hello.exe /nologo Hello.css Hello2.css Hello3.css rem ----------------------------------------- rem -> fordítás 4. CSC @hello.rsp rem -> futtatás 4. Hello.exe pause rem ----------------------------------------- exit rem -----------------------------------------
Rem -> Dokumentációs megjegyzés (különleges hámtört vonallal jelzet megjegyzés, rem melyet xml stílusú kód tagok követnek) /// <summary> /// A program fő belépési pontja /// </summary> rem fordítás és XML dokumentálás (ekkor egy xml file is keletkezik az exe mellet) csc /doc:xmlfile mieapp.csc
Rövidítések
OOP : Objektum orientált programozás
CTS : közös tipus rendszer
BCL : .NET alaposztály könyvtár
- osztály : egy késöbb készítendő elem meghatározása (váza, leírása)
objektum: az osztáyl meghatározás szerint legyártott elem, példány
A kettejük viszonyát sütemény és sütőforma kapcsolattal szemléltethetjük
További info : Link
További minták
-------- 1. using System; namespace ConsoleApplication1 { /// <summary> /// Az osztály összefoglalása. /// </summary> class Class1 { /// <summary> /// A program fő belépési pontja /// </summary> [STAThread] static void Main(string[] args) { // Megjegyzés // Ez lesz az alkalmazás fő programja // Kapcsos zárójelek közzé zárva } } } //---------------2. using System; namespace ConsoleApplication3 { /// <summary> /// /// </summary> class Class1 { /// <summary> /// /// </summary> [STAThread] static void Main() { Console.WriteLine ("Kérlek válassz a menüből!"); //kíratás a képernyőre Console.WriteLine ("1-es io műveletek, 2-es ciklusok, karakter formázással!"); string adat=Console.ReadLine(); if(adat=="1") //elágazás struktúra { io(); //egy eljárás meghívása a nevével } else //különben ága { if (adat=="2") //a 'hamis' ágban beágyazva egy elágazás { ciklus(); } else { Console.WriteLine ("Más számot választottál!"); Main(); // még a Main függvényt is meg lehet hívni } } Console.ReadLine(); //várunk egy billentyű leütésre //ez azért kell, hogy a konzol ne záródjon be tulajdonképpen és élvezni tudjuk a programunk futásának eredményét } static void io() //definiálunk egy típus nélküli -void- eljárást { //a program részlet bemutatja a különböző formázási lehetőségeket a teljesség igénye nélkül Console.WriteLine("Az 1-es számot választottad!"); Console.WriteLine("A karakter formázások lesznek a téma!"); string value1 = "Ez"; //string tipusú változó deklarációja értékadással string value2 = "egy teszt"; string value3 = "szöveg"; Console.WriteLine("{0}- {1}- {2}", value1,value2,value3);// <-- formátum string string. <-- a felvett értékek Console.WriteLine("oszlopos elrendezés"); Console.WriteLine("{0,-10} {1,10} {2,20}", value1,value2,value3); Console.WriteLine("{0,-10} {1,-10} {2,20}", "másik","teszt","szöveg"); Console.WriteLine("számformátumok"); double szam = 1; //adott egy szám string eredm = string.Format("A szám százalékban= {0:0.0%}",szam); //%-os számformátum format függvénnyel Console.WriteLine(eredm); //gyakorlatilag string formázás történik eredm = string.Format("A szám soktizedes alakban= {0:0000.000}",szam); Console.WriteLine(eredm); Console.WriteLine("dátum formátumok"); DateTime time = DateTime.Now; // aktuális idő string formátum = "yyyy.MM.dd. HH:mm "; // magyar dátum formátum beállítása Console.WriteLine(time.ToString(formátum)); formátum = "HH:mm "; // óra perc kijelzés Console.WriteLine(time.ToString(formátum)); DateTime now = DateTime.Now; Console.WriteLine(now.ToString("d")); //rendszeridő rendszerben tárolt formátumban történő kiírása Console.WriteLine("Viszlát!"); } static void ciklus() //ciklusok bemutatása ezen eljáráson belül { int i; Console.WriteLine("A 2-es számot választottad!"); Console.WriteLine("A ciklusok lesz a téma!"); Console.WriteLine ("Kérlek válassz a menüből!"); Console.WriteLine ("1-es iterációs, 2-es elöltesztelő, 3-mas hátultesztelő ciklus!"); string adat=Console.ReadLine(); //adat változó definíciója. Közben beolvasás billentyűzetről switch(adat) //többszintű elágazás { case "1": for (i=1; i<10; i++) //iterációs ciklus más néven for ciklus { Console.WriteLine("Ez a ciklusmag!!!"); //kiírom a mi a ciklusmagban van } goto case "ki"; case "2": i=0; while (i<20) //elöl tesztelő ciklus { Console.WriteLine("Ez a ciklusmag!!!"); i++; //vezérlő kifejezés i=i+1 értékadással azonos } goto case "ki"; case "3": i=0; do // hátul tesztelő ciklus { Console.WriteLine("Ez a ciklusmag!!!"); i++; } while (i<30); // feltétel vizsgálat a ciklus magja után történik goto case "ki"; case "ki": Console.WriteLine ("Kilépés:k, új opció választás:u"); adat=Console.ReadLine(); while(adat!="k" & adat!="u" ) { Console.WriteLine ("Kilépés:k, új opció választás:u"); adat=Console.ReadLine(); } if (adat=="k") // az elágazásban az == operátor a logikai egyezőséget (nem matematikai) fejezi ki { Console.WriteLine ("viszlát!"); } else { ciklus(); } break; default: Console.WriteLine("Válassz máskor helyes számot!"); goto case "ki"; } } } }