[[oktatas:programozás:csharp|< CSharp]] ====== A .Net keretrendszer ====== ===== Kezdetben ===== Kezdetben a mikró-számítógépes időkben, nem volt még operációs rendszer. A felhasználó maga adott parancsot egy program betöltésére, majd utána az indítására, stb. Ezek a programok még grafikával is gyorsabbak voltak mint a mai gépek, éppen az operációs rendszerek hiánya miatt is. Ezen rendszerek tehát sematikusan így nézhetnek ki: Program Hardver A program, közvetlenül a hardveren futott. ===== Általános ===== A számítógépek hardvereinek fejlődése lehetővé tette, hogy ma már egy külön operációs rendszernek nevezett programok összessége segíti a hardver használatát. A programjainkat így az operációs rendszer futtatja. Az ilyen programokat hívjuk **natív** programoknak. Program Operációs rendszer Hardver ===== Java ===== A Java megalkotói úgy gondolták, hogy olyan programot szeretnének írni, amelyik változtatás nélkül minden operációs rendszeren fut. Az operációs rendszerek különbözősége miatt ez nem lehetséges, ezért az operációs rendszerre tettek egy **keretrendszert** (Java machine, vagy java gép, vagy Java Runtime Environment, vagy Java futtató környezet, vagy egyszerűen: Framework), amelyen fut a Java program. Az így futó program lassabb mint a natív program, de minden rendszeren változtatás nélkül fut. Program Keretrendszer Operációs rendszer Hardver A sematikus ábrán láthatjuk, hogy a futó program és hardver közzé most két másik rendszer ékelődött. Előnye a különböző operációs rendszereken bitről-bitre azonos kód futtathatósága: Program Java Linux Hardver Program Java Windows Hardver Program Java Mac OS X Hardver ===== A .Net ===== A .Net a Javához hasonlóan egy keretrendszer. A .Net viszont nem létezik csak Windowsra ezért nincs meg azaz előnye, amely a Java programokra jellemző, a platformfüggetlenség. Program .Net Windows Hardver A .Net keretrendszer nem része alapból az XP-nek, de része a Windows7-nek. A futtató környezet mellett tartalmazza a fordítót is. A C# fordító neve: csc.exe A .Net keretrendszerre programot létrehozhatunk több nyelven is. Az adott nyelven létrehozzuk a forráskódot. A forráskód egy szimpla szöveges állomány, így bármely egyszerű szövegszerkesztővel szerkeszthető, például "Jegyzettömb". A forráskódban megmondjuk mit csináljon a programunk, amit fejlesztünk. A forráskódot ezek után lefordítjuk futtatható kóddá. Ez a futtatható kód .exe kiterjesztést kap, de keretrendszer nélkül nem használható. Ha keretrendszer nincs telepítve az ügyfélnél kinek számára készítjük a programot, akkor az nem fog ott működni. Az sem mindegy, hogy milyen keretrendszerrel lett fordítva a program. Ha például 4.0 -es keretrendszerrel fordítottuk és az ügyfélnek csak 3.5-ös van, akkor az ügyfél gépén nem fog futni a program. A .Net keretrendszert a Microsoft fejlesztette, és ezzel együtt egy új nyelvet is kifejlesztett, ez lett a C#. A C# nyelv a Java nyelv felépítését utánozza. Ugyanúgy kötelező az osztályban való megvalósítás. A Java csomagjai helyett azonban a C++-hoz hasonló névtereket alkalmaz. A C# nyelvere nyilván több nyelv is hatással lehetett még, de ez két nyelv amelyre azt mondhatjuk ezeken alapszik. https://msdn.microsoft.com ^ .Net programozási nyelvei ^^^^ | C# | CPP | F# | VB |