1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz
2 A.NET filozófiája Virtuális gépi kódú nyelv használata Egységesített típusrendszer Szabványok használata OOP mint alapvető tervezési és fejlesztési eszköz erőteljes használata
3 A.NET felépítése
4 Operating System: A legalsó réteg a mikroprocesszor Rögtön fölötte az operációs rendszer Ez a két réteg megszabja, mit lehet maximum kihozni a számítógépből Minden műveletet velük, rajtuk keresztül lehet csak megvalósítani Az operációs rendszer megkerülhető (a vírusok meg is teszik)
5 Common Language Runtime (CLR) A virtuális gépi kódú nyelv definíciója A processzor-szimulátornak ezt a nyelvet kell megértenie A benne található elemi utasításokat az adott operációs rendszer és processzor segítségével végre kell tudni hajtani
6 Common Language Runtime (CLR) Ez a gépi kódú nyelv erősen típusos Az utasítások végrehajtását feltételekhez (pl jogosultságokhoz) köthetik Pl: file megnyitás csak akkor végrehajtható, ha a programnak van rá joga (és nem a felhasználónak, aki nevében fut a program!) Pl: hálózati kapcsolat (port megnyitása) is ilyen korlátozás lehet!
7 Base Class Library (BCL) Általános célú eljárások és függvények gyűjteménye Alacsony szintű, és rendkívül magas szintű eljárások és függvények OOP stílusban megírva Ez megkönnyíti a használhatóságot, és a továbbfejleszthetőséget
8 Base Class Library (BCL) Ez része a.NET környezetnek Nem programozási nyelvhez tartozik, hanem magához a környezethez A.NET programozó számára ez az operációs rendszer szolgáltatásait helyettesíti (A.P.I.)
9 Base Class Library (BCL) Rajta keresztül van lehetőség hozzáférni az operációs rendszer szolgáltatásaihoz is Ez nem „helyes” magatartás, mert így a program nem lesz operációs rendszer független Sok szempontból bőségesebb szolgáltatást nyújt, pótolja az operációs rendszer esetleg hiányzó szolgáltatásait
10 ADO.NET és XML A réteg két fele a külső, programon kívüli perzisztens adattárolás lehetőségeit tartalmazza Az ADO.NET az adatbázis-kezelő szolgáltatásokat rejti (pl SQL) Az XML nyelv is adatok tárolását és lekérdezését támogatja az XML szintaxis szerint (spec. szerkezetű text file)
11 WINDOWS FORMS Hagyományos grafikus felhasználói felületű interaktív programok fejlesztésének lehetősége (GUI) Menüvel, nyomógombokkal, legördülő listákkal, …
12 ASP.NET, WEB FORMS, MOBILE INTERNET TOOLKIT HTML alapú, böngészőn keresztül futtatható felhasználói felülettel rendelkező Web alkalmazások fejlesztésének lehetősége COOKIE és SESSION kezelése Mobil telefonokon is olvasható és használható tartalmat állít elő
13 WEB SERVICES HTTP protokollon keresztüli távoli eljáráshívás (RPC) használata Paraméterek átadása, átvétele SOAP protokoll használata
14 COMMON LANGUAGE SPECIFICATION (CLS) Különböző programozási nyelvek közötti különbségek elrejtése (string ábrázolás, tömbindexelés, alapvető változótípusok (int, bool, char, …) definiálása) Automatikus élettartam menedzselés Önleíró objektumok …
15 Programozási nyelvek .NET-ben mindegy milyen nyelven programozunk. C#, VB, J#, C++, … Az adott nyelvnek meg kell felelnie a CLR előírásainak Az adott programozási nyelv fordítóprogramja nem gépi kódra fordít, hanem.NET virtuális kódra Minden programozási nyelv egyenlő lehetőségekkel rendelkezik (BCL) Csak szintaktikai különbségek vannak