Windows: Какво е .NET Framework

Може би на много хора е непонятно какво представлява .NET Framework. Аз също никога не съм се занимавал с тази платформа повече от ползването на програми написани за нея, но въпреки това реших, че на някого може да е полезно ако споделя това, което зная.

.NET си прилича много с Java, дотолкова, доколкото конвертира програмния код до байт код, който в последствие се изпълнява от виртуална машина. Разликата е там, че .NET виртуалната машина конвертира този байт код до изпълним код, който може да бъде използван многократно при последващи извиквания на дадена функция например, докато Java само го интерпретира в процеса на изпълнение на програмата. Това прави .NET приложенията доста по-бързи от тези на Java, но при процеса на начално анализиране и конвертиране и по-бавни от тези написани за конкретна архитектура. Въпреки това, при компилирането на този байт код, или така наречения IL код (Intermediate Language), се взима предвид и самата архитектура, на която той се изпълнява. От това следва, че производителността, при последващо извикване на вече компилирания и записан в паметта код по нищо не се различава от тази, написана за конкретната архитектура.

За самия процес на програмиране не мога да твърдя нищо, защото не съм се сблъсквал с него, но съм чувал че е по-лесно. Това което знам е, че повечето от популярните езици си имат и свой .NET вариант. Например, ако вие сте програмист на Java или PHP, то лесно можете да преминете на Java .NET или PHP .NET . И програмите, които ще напишете на тези езици ще работят на различни архитектури, без да се налага да бъдат компилирани специално за тези архитектури. Това обаче официално е възможно само под Windows.

Накратко, това което инсталирате под името Microsoft .NET Framework е точно виртуалната машина, която изпълнява байт кода на програмите написани на .NET платформата. Доколкото съм запознат, това няма връзка с цялостната производителност, нито със “здравето” или сигурността на вашата система и инсталирането на .NET Framework и използването на приложения написани за него не би трябвало да притесняват никого. Просто при стартирането на програма написана на .NET, въпреки че в повечето случаи завършва на “.exe”, системата разбира за какво става въпрос и предава изпълнението на виртуалната машина. Сега остава да се надяваме, че Microsoft ще отворят тази платформа и за други операционни системи (рано или късно).

Автор: Захари Юруков
Дата: 20 май 2009 г.

Прикачен файлГолемина
Свалете като текстов файл4.28 КB