День сто сорок седьмой. #ВопросыНаСобеседовании

Самые часто задаваемые вопросы на собеседовании по .NET

1. Что такое .NET Framework?

.NET Framework - это набор многократно используемых библиотек (коллекций классов), предоставляемый Microsoft для использования в других приложениях .Net, а также для разработки, создания и развертывания многих типов приложений на платформе Windows, включая:

- Консольные приложения

- Приложения Windows Forms

- Приложения Windows Presentation Foundation (WPF)

- Веб-приложения

- Веб-сервисы

- Службы Windows

- Сервис-ориентированные приложения с использованием Windows Communications Foundation (WCF)

- Приложения с поддержкой рабочих процессов, использующие Windows Workflow Foundation (WF)



Работает в основном на операционной системе Microsoft Windows.



Компиляция программы .NET

Что на самом деле происходит, когда мы компилируем программу .NET?

- Созданный exe-файл не содержит исполняемого кода, это код на MicroSoft Intermediate Language (MSIL).

- Когда вы запускаете EXE-файл, запускается общеязыковая среда выполнения (Common Language Runtime или CLR) и инструкции IL выполняются CLR на машинном языке.

- CLR предлагает компилятор Just In Time (JIT), который переводит IL на машинный язык.

См. рисунок ниже.



Таким образом, процесс программирования проходит как:

- Программа пишется на C#, VB.Net и других языках.

- Код компилируется в IL с помощью компилятора языка (csc.exe, vbc.exe и т.д.).

- При запуске программы на IL, запускается CLR, которая, используя JIT, преобразует IL в машинный код по мере выполнения программы.



Ядро .NET Framework

- Сервисы Приложений

- Библиотеки базовых классов

- Общеязыковая Среда Выполнения (Common Language Runtime)

- Сборщик Мусора (Garbage Collector)

- Общая Система Типов (Common Type System)

- Общеязыковая Спецификация (Common Language Specification)



Источник: https://www.c-sharpcorner.com