A .NET két részbÅ‘l áll, hasonlóan a Java-hoz. Külön letölthetÅ‘ a futtatókörnyezet, ami csak alkalmazások futtatására alkalmas, illetve az SDK, ami a szoftver fejlesztéshez kell. Fejlesztéshez ajánlott, hogy a rendszer 64 bites legyen, de 32 bites változatokon is működik. Windows esetén a Visual Studio telepÃtésével mindkettÅ‘t megkapjuk. Ha azonban nem Visual Studio segÃtségével fejlesztenénk, akkor ezt manuálisan nekünk kell telepÃtenünk.
Az SDK és a futtatókörnyezet is a https://dotnet.microsoft.com/en-us/download cÃmrÅ‘l tölthetÅ‘ le.
Linux esetén a telepÃtés nem annyira triviális, ezért minden kiadáshoz készÃtenek egy Linux telepÃtési leÃrást, ami az aktuálisan támogatott disztribúciók számára Ãrja le a terminál parancsok sorozatát, amivel telepÃthetÅ‘ az SDK és a runtime is.
ARM alapú lapok, mint a RaspberryPi, futtatásra képesek1, sÅ‘t elméletben fejlesztésre is, de a limitált CPU sebesség miatt a fejlesztést érdemes egy nagy asztali gépen végezni. Illetve ezen rendszerek esetén a binárisok .tar fájlból telepÃthetÅ‘ek.
Amennyiben sikerült telepÃtenünk az SDK-t vagy futtatókörnyezetet, akkor a működÅ‘képességrÅ‘l a dotnet parancs futtatásával gyÅ‘zÅ‘dhetünk meg:
dotnet --help
A dotnet parancs
A .NET core lelke a dotnet parancssoros eszköz. Ha nem Visual Studio segÃtségével fejlesztünk, akkor mindent ezzel tudunk elintézni, többek között a .NET Core alkalmazások futtatását is. A .NET Core alkalmazások, ha nincs melléjük csomagolva a futtatókörnyezet valamilyen szinten, akkor nem kapnak futtatható binárist. Minden alkalmazás egy .dll fájlba fordul alapértelmezetten. Ha a programunk neve HelloWorld.dll, akkor a dotnet run HelloWorld.dll parancs segÃtségével tudjuk futtatni.
Projekt létrehozása, fordÃtása és futtatása
Új projektet a dotnet new [tipus] parancs segÃtségével tudunk létrehozni. A [tipus] helyére a projekt tÃpusát kell beÃrni. Ha nem adunk meg tÃpust, akkor egy súgó üzenetben megkapjuk, hogy milyen projekt tÃpusok támogatottak jelenleg. Az alábbi parancssorozat egy parancssoros .NET core alkalmazást hoz létre:
mkdir hellocmd
cd hellocmd
dotnet new console
A parancssorozat hatására létrejön a mappán belül a hellocmd.csproj és a Program.cs fájl, ami egy szimpla Hello World programot valósÃt meg:
Console.WriteLine("Hello World!");
A kész programunkat a .csproj fájlt tartalmazó mappában a dotnet build parancs segÃtségével tudjuk lefordÃtani. Ez alapértelmezetten Debug (hiba kereshetÅ‘) változatot fordÃt.
Ha kiadható, Release változatot szeretnénk fordÃtani, akkor azt külön meg kell határozni a -c kapcsolóval:
dotnet build -c Release
A parancs az aktuális mappán belül a /bin/Release/(framework)/ könyvtárba pakolja a program futtatásához szükséges lefordÃtott fájlokat és a dotnet parancs által futtatható hellocmd.dll fájlt, aminek működÅ‘képességét futtatással ellenÅ‘rizhetjük:
dotnet run bin/Release/(framework)/pelda-core.dll
Megjegyzés: .NET Core 3.0 óta minden platform esetén automatikusan generálódik egy közvetlenül futtatható .exe vagy kiterjesztés nélküli elf fájl, ami dupla kattintással vagy a terminálból ugyanúgy futtatható, mint bármelyik másik program.
Ez az bináris viszont nem a tényleges programunk lesz, hanem a dotnet program binárisa másolódik ide, csak a projektnek megfelelÅ‘ néven – lényegében egy indÃtó ‘ikon’ lesz. A fenti parancsban a (framework) célzott .NET verziót jelöli. .NET 7 esetén ez net70 lesz, mÃg korábbi verziók esetén netcoreapp kezdetű, ami után a .NET Core verzió áll.
-
A futtatáshoz ARMv7 utasÃtáskészletet támogató processzor kell, ami a Pi Zero és Pi ZeroW modellek esetén nem áll rendelkezésre.↩