C# — объектно-ориентированный язык программирования общего назначения. Разработан в 1998—2001 годах группой инженеров компании Microsoft под руководством Андерса Хейлсберга и Скотта Вильтаумота как язык разработки приложений для платформы Microsoft .NET Framework и .NET Core. Впоследствии был стандартизирован как ECMA-334 и ISO/IEC 23270.
.NET Framework — программная платформа, выпущенная компанией Microsoft в 2002 году. Основой платформы является общеязыковая среда исполнения Common Language Runtime (CLR), которая подходит для различных языков программирования. Функциональные возможности CLR доступны в любых языках программирования, использующих эту среду. В настоящее время .NET Framework развивается в виде .NET.
ASP.NET — технология создания веб-приложений и веб-сервисов от компании Майкрософт. Она является составной частью платформы Microsoft .NET и развитием более старой технологии Microsoft ASP.
Декомпиля́тор — это программа, транслирующая исполняемый модуль в эквивалентный исходный код на языке программирования высокого уровня.
Управля́емый код — термин, введённый фирмой Microsoft, для обозначения кода программы, исполняемой под «управлением» виртуальной машины .NET — Common Language Runtime или Mono. При этом машинный код называется неуправля́емым кодом.
Common Intermediate Language — «высокоуровневый ассемблер» виртуальной машины .NET. Промежуточный язык, разработанный фирмой Microsoft для платформы .NET Framework. JIT-компилятор CIL является частью CLR — общей среды выполнения программ, написанных на языках .NET. Ранее язык назывался «Microsoft Intermediate Language (MSIL)», однако был переименован для создания стандарта «ECMA-335».
Base Class Library, или так называемая .NET FCL, сокращённо BCL — стандартная библиотека классов платформы «.NET Framework». Программы, написанные на любом из языков, поддерживающих платформу .NET, могут пользоваться классами и методами BCL — создавать объекты классов, вызывать их методы, наследовать необходимые классы BCL и т. д.
Java Native Interface (JNI) — стандартный механизм для запуска кода под управлением виртуальной машины Java (JVM), который написан на языках C/C++ или Ассемблере и скомпонован в виде динамических библиотек; позволяет не использовать статическое связывание. Это даёт возможность вызова функции C/C++ из программы на Java, и наоборот. Более ранние интерфейсы, в отличие от JNI, не удовлетворяли условию двоичной совместимости.
Windows Forms — интерфейс программирования приложений (API), отвечающий за графический интерфейс пользователя и являющийся частью Microsoft .NET Framework. Данный интерфейс упрощает доступ к элементам интерфейса Microsoft Windows за счет создания обёртки для существующего Win32 API в управляемом коде. Причем управляемый код — классы, реализующие API для Windows Forms, не зависят от языка разработки. То есть программист одинаково может использовать Windows Forms как при написании ПО на C#, С++, так и на VB.Net, J# и др.
F# — мультипарадигмальный язык программирования из семейства языков .NET, поддерживающий функциональное программирование в дополнение к императивному (процедурному) и объектно-ориентированному программированию. Структура F# во многом схожа со структурой OCaml с той лишь разницей, что F# реализован поверх библиотек и среды исполнения .NET. Язык был разработан Доном Саймом в Microsoft Research в Кембридже, в настоящее время его разработку ведёт Microsoft Developer Division. F# достаточно тесно интегрируется со средой разработки Visual Studio и включён в поставку Visual Studio 2010/2012/2013/2015/2017/2019/2022; разработаны также компиляторы для Mac и Linux.
Portable Executable — формат исполняемых файлов, объектного кода и динамических библиотек (DLL), используемый в 32- и 64-разрядных версиях операционной системы Microsoft Windows. Формат PE представляет собой структуру данных, содержащую всю информацию, необходимую PE-загрузчику для отображения файла в память. Исполняемый код включает в себя ссылки для связывания динамически загружаемых библиотек, таблицы экспорта и импорта API-функций, данные для управления ресурсами и данные локальной памяти потока. В операционных системах семейства Windows NT формат PE используется для EXE, DLL, SYS и других типов исполняемых файлов.
Шаблон:Сравнения языков программирования
PowerShell — расширяемое средство автоматизации от Microsoft с открытым исходным кодом, состоящее из оболочки с интерфейсом командной строки и сопутствующего языка сценариев. Впервые публично язык был продемонстрирован на Профессиональной конференции разработчиков в сентябре 2003 года под кодовым названием Monad. Изначально средство выпущено как компонент Windows под названием Windows PowerShell. Открытый исходный код был выпущен с началом разработки PowerShell Core в августе 2016 года.
Cosmos — операционная система с открытым кодом, написанная на языке программирования C#. Кроме того, она содержит компилятор языка Microsoft Intermediate Language (IL2CPU), позволяющий формировать законченные программные модули, включающие в себя библиотеки .NET Framework и саму операционную систему Сosmos, что позволяет создавать загрузочные модули, не требующие для своей работы внешней ОС. Может загружаться с дискеты, USB флеш-накопителя, CD-ROM или в виртуальной машине. В настоящее время поддерживается архитектура только x86, хотя система направлена на C#, она может быть использована с большинством совместимых языков .NET. Cosmos в первую очередь предназначен для использования только с Microsoft .NET Framework, но может быть скомпилирована с использованием Mono с опорой на блок System.Threading, класса ReaderWriterLockSlim.
Common Type System — часть .NET Framework, формальная спецификация, определяющая, как какой-либо тип должен быть определён для его правильного выполнения средой .NET. Кроме того, данный стандарт определяет, как определения типов и специальные значения типов представлены в компьютерной памяти. Целью разработки CTS было обеспечение возможности программам, написанным на различных языках программирования, легко обмениваться информацией. Как это принято в языках программирования, тип может быть описан как определение набора допустимых значений и допустимых операций над этими значениями.
Visual Studio Tools for Office представляет собой набор средств разработки, доступных в виде Visual Studio add-in и runtime, что позволяет Microsoft Office 2003 и более поздние версии приложений Office использовать функциональность .NET Framework Common Language Runtime (CLR) с помощью .NET type system. В результате позволяет расширить Office приложения, которые будут записаны в CLI-совместимом языке, а также использовать функциональные возможности и пользовательский интерфейс конструкций из приложений Office в .NET приложений. VSTO заменяет VBA версий Office 2000 и Office XP. Является runtime, хотя часть VSTO, также загружаемые отдельно, если требуется.
Windows Runtime, или WinRT — это новая модель программирования от Microsoft, являющаяся основой для разработки приложений в стиле Метро в новой операционной системе Windows 8. WinRT поддерживает разработку на C++, управляемых языках C# и VB.NET, а также JavaScript.
Dynamic Language Runtime от Microsoft работает поверх исполняющей среды Common Language Runtime и предоставляет службы компьютерного языка для динамического языка. Эти услуги включают:
- Динамическая система типов, которая будет разделяться между всеми языками, использующими службы DLR.
- Метод динамического связывания
- Генерация динамического кода
- Хостинг API
Shared Source Common Language Infrastructure, ранее носившая кодовое название Ротор, является реализацией фирмы Microsoft с общим исходным кодом, реализация общей языковой инфраструктуры, ядра .NET. Хотя SSCLI не подходит для коммерческого использования из-за своей лицензии, он позволяет программистам изучить детали реализации многих библиотек .NET и создавать модифицированные версии CLI. Microsoft предоставляет CLI с общим исходным кодом в качестве эталонной реализации интерфейса командной строки, подходящей для использования в образовательных целях.
Parallel Extensions — библиотека управляемого параллелизма, разработанная в результате сотрудничества Microsoft Research и группы CLR в Microsoft. Библиотека была выпущена в версии 4.0 .NET Framework. Она состоит из двух частей: Параллельный LINQ (PLINQ) и Библиотека параллельных задач (TPL). Она также состоит из набора структур данных координации (CDS) — наборов структур данных, используемых для синхронизации и координации выполнения параллельных задач.