A menedzselt kód ( eng. manage code ) a Microsoft által bevezetett kifejezés egy .NET virtuális gép „vezérlése” alatt végrehajtott program kódjára [1] [2] [3] – Common Language Runtime vagy Mono . Ebben az esetben a gépi kódot nem menedzselt kódnak ( angolul unmanaged code ) nevezzük .
A „ felügyelt ” szó itt a program és a végrehajtási környezet közötti információcsere módszerére utal. Ez azt jelenti, hogy a végrehajtás bármely pontján a vezérlőkörnyezet szüneteltetheti a végrehajtást, és az aktuális állapotra jellemző információkat kaphat. Az ehhez szükséges információkat a kezelt középfokú nyelvi kód és a kódhoz társított metaadatok tartalmazzák .
Technikailag a felügyelt kód minden olyan kód, amely hibakereső környezetben fut .
A felügyelt kód a .NET vagy a MONO által támogatott programozási nyelvek egyikén írható.
A .NET [4] [5] által támogatott fő nyelvek a C# , C++/CLI , Microsoft Visual Basic , JavaScript , valamint az F# és még sok más.
A Mono projekt támogatja [6] C#, F#, Java, Scala , Boo , Nemerle , Visual Basic.NET, Python , JavaScript , Oberon , PHP , Object Pascal , Lua , Cobra, Synergy-DBL, valamint a #Smalltalk, DotLisp és több .
A Microsoft C++ fejlesztői környezet lehetővé teszi felügyelt kódok és lefordított kódok létrehozását is, amelyek Windows platformokon futnak a C++ futásidejű könyvtárak használatával.
A felügyelt kód használatának előnyei a programozói kényelem (magasabb absztrakciós szint), a biztonsági garanciák és a platformfüggetlenség. A hátrányok közé tartozik a hosszú rendszerindítási idő és a megnövekedett rendszererőforrás-használat.