Архитектура .NET Framework
Архитектура Web-приложений
Web-приложения представляют собой особый тип программ, построенных по архитектуре "клиент-сервер". Особенность их заключается в том, что само Web-приложение находится и выполняется на сервере - клиент при этом получает только результаты работы. Работа приложения основывается на получении запросов от пользователя (клиента), их обработке и выдачи результата. Передача запросов и результатов их обработки происходит через Интернет (рисунок 11.1).
Рисунок 11.1 - Архитектура Web-приложений
В процессе обработки запроса пользователя Web-приложение компонует ответ на основе исполнения программного кода, работающего на стороне сервера. В результате, формируется HTML-страница, которая отправляется клиенту.
К наиболее типичным операциям, выполняемым Web-приложениями, относятся:
- прием данных от пользователя и сохранение их на сервере;
- выполнение различных действий по запросу пользователя: извлечение данных из базы данных (БД), добавление, удаление, изменение данных в БД, проведение сложных вычислений;
- аутентифицирование пользователя и отображение интерфейса системы, соответствующего данному пользователю;
- отображение постоянно изменяющейся оперативной информации и т. д.
За счет наличия исполняемой части, Web-приложения способны выполнять практически те же операции, что и обычные Windows-приложения, с тем лишь ограничением, что код исполняется на сервере, в качестве интерфейса системы выступает браузер, а в качестве среды, посредством которой происходит обмен данными, — Интернет.
Архитектура .NET Framework
11.2.1 Платформа .NET Framework является надстройкой над операционной системой, в качестве которой может выступать любая версия Windows). На сегодняшний день платформа .NET Framework включает в себя:
- четыре официальных языка: С#, VB.NET, Managed C++ (управляемый C++) и JScript .NET;
- объектно-ориентированную среду CLR (Common Language Runtime), совместно используемую этими языками для создания приложений под Windows и для Internet;
- ряд связанных между собой библиотек классов под общим именем FCL (Framework Class Library).
11.2.2 Компиляция и язык MSIL. .NET-приложения исполняются иначе, чем традиционные Windows-приложения. Такие программы компилируются фактически в два этапа.
На первом этапе исходный код компилируется во время построения проекта и вместо исполняемого файла с машинными кодами получается сборка (assembly), содержащая команды промежуточного языка MSIL (Microsoft Intermediate Language — промежуточный язык Microsoft). Код IL (MSIL) сохраняется в файле на диске. При этом файлы, генерируемые компилятором, например, С#, идентичны IL-файлам, генерируемым компиляторами с других языков .NET. В этом смысле платформа остается в неведении относительно языка. Самой важной характеристикой среды CLR является то, что она общая; одна среда выполняет как программы, написанные на С#, так и программы на языке VB.NET.
Второй этап компиляции наступает непосредственно перед фактическим выполнением страницы. На этом этапе CLR транслирует промежуточный код IL в низкоуровневый собственный машинный код, выполняемый процессором. Процесс происходит следующим образом: при выполнении .NET-программы системы CLR активизирует JIT-компилятор, который затем превращает MSIL во внутренний код процессора. Этот этап известен как оперативная компиляция или JIT-компиляция, и он проходит одинаково для всех приложений .NET. На рисунке 11.2 показан этот двухэтапный процесс компиляции.
Рисунок 11.2 - Схема компиляции .NET-приложения
Дата добавления: 2017-03-12; просмотров: 3298;