- •Языковые средства визуального программирования
- •Визуальные языки и среды разработки приложений. Классификация.
- •Классы языков программирования:
- •Характеристика языков программирования.
- •Операционные системы и платформы программирования.
- •Архитектура операционных систем и систем программирования
- •Элементы технологии .Net Framework.
- •Стратегии и проблемы визуального программирования
- •Особенности технологии .Net по сравнению с моделями com, corba и языком Java.
- •Проблемы взаимодействия компонентов распределенных систем.
- •Проблемы глобального программирования приложений
- •Среда .Net Framework
- •1.Предназначение сетевой платформы .Net Framework
- •Предпосылки возникновения .Net Framework:
- •2. Упрощенная архитектура платформы .Net Framework
- •2.1 Схема архитектуры платформы .Net Framework Цели создания .Net Framework:
- •Основными составляющими платформы .Net Framework являются:
- •Базовая платформа – Baseframework
- •2.2 Возможности доступа на платформе .Net Framework
- •2.3 Приложение и платформа .Net Framework
- •2.4 Взаимодействие платформы .Net Framework с ос и приложениями пользователя
- •3. Процедуры преобразования управляемого кода .Net
- •Рассмотрим основные составляющие платформы .Net Framework
- •3.4 Автоматическое управление памятью .Net Framework
- •3.5 Библиотека классов
- •4 Сопровождающие составляющие платформы .Net Framework
- •4.1 Перечень сопровождающих функциональных составляющих концепции .Net.
- •Сборка может включать в себя 4 элемента:
- •VisualStudio
- •Особенности:
- •Embarcadero rad Studio (Delphi for .Net)
- •Новые возможности в Delphi xe2:
- •Технологиями, ускоряющими написание текста программ, являются:
- •Новые возможности Delphi xe3:
- •Технологии, ускоряющие написание текста программ rad(RapidApplication):
- •Особенности платформы .Net Frameworkv.4.5
- •Возможности .Net Framework4.0
- •Dot gnu, Mono
- •Технология Windows Presentation Foundation
- •WindowsCommunicationFoundation
- •WindowsWorkflowFoundation
- •Технология atlas
- •Технология linq (Language Integrated sql)
- •Недостатки .Net
- •Технологии доступа к источникам данных
- •Работа с бд
- •Доступ к данным .Net
- •Доступ к отсоединенным данным
- •Общая характеристика технологии ado.Net Основные понятия технологии ado.Net
- •В технологии ado.Netподдержка реляционной модели осуществляется 2 способами:
- •Преимущества технологии ado.Netпо сравнению с технологиейAdo
- •Пространство имен System Data
- •Класс Command
- •Объект DataAdapter
- •Основные свойства классаCommand
- •Объект DataSet
- •Класс Command
- •DataAdapter
- •Основные свойства класса Command
- •Объект DataSet
- •Платформа ado.Net Entity Framework и доступ к данным
- •Модель edm (Entity Data Model)
- •Архитектура доступа к данным технологии Entity Framework
- •Conceptualmodel
- •StorageModel
- •Marking– отображение
- •EntityClientDataProvider
- •DbDataReader иEntityDataReader
- •Технология mvc4
2.3 Приложение и платформа .Net Framework
Достоинства приложений:
для всех приложений используются согласованные концепции и службы. Такая согласованность значительно сокращает процесс изучения новых компонентов, которые могу предлагаться для открытого использования
расширяются возможности повторного использования компонентов
поддержка нескольких языков программирования
2.4 Взаимодействие платформы .Net Framework с ос и приложениями пользователя
Общеязыковая Среда выполнения выполняет туже самую роль что и виртуальная машина Javaв технологияхSUN, она загружает код и обеспечивает для него множество сервисов во время выполнения, это управление памятью, потоками, безопастностью, удаленный вызов методов и другие формы управления процессом запуска и работы кода гарантирующий безопасность и надежность.
Управляемый код - код который может использовать службы предоставляемые общеязыковой средой выполнения (CLR)
Неуправляемый код – код, не предназначенный для среды выполнения.
Схема взаимодействия элементов .Net Framework с приложениями ОС и пользователя
ОС
CRL – посредник между управляемым кодом и ОС
Managedcodeуправляемый код
Unmanaged codeнеуправляемый код
Управляемое web приложение (Managed Web Application)
Неуправляемое web приложение (Unmanaged Web Application) (Internet Information Services)
Среда выполнения ASP NET (Runtime ASP NET)
Библиотека классовClassLibrary
Библиотека объектов пользователя CustomobjectsLibrary
Для работы 5. ОС (1.) запускает неуправляемое приложение (6.) кот в свою очередь запускает среду выполнения, под управлением которой выполняется управляемый код webприложений
В отличие от других сред разработки CLR не интерпретирует код и не выполняет его внутри виртуальной машины, в данной технологи управляемый код для исполнения компилируется в машинный исполняемый код, в который встроены механизмы взаимодействия с CLR. Но такой код не является интерпретируемым.
3. Процедуры преобразования управляемого кода .Net
Для того что бы управляемый код прошел все ступени до запуска под управлением CLRнеобходимо выполнить следующие 4 шага
выбор компилятора
трансляция исходного кода в промежуточный
исходный код транслируется в промежуточный платформенно-независимый код на языкеMSI(CIL) код на этом языке содержит команда загрузки и инициализации объектов, вызова методов, инструкции арифметических и логических операций, инструкции по выполнению кода программы, обработки исключительных ситуацій и другие необходимые команда на промежуточном языке.
В этот файл на языке MSIвключаются метаданные которые создаются на этом этапе. Они несут в себе информацию о том, какие типы определены в данном модуле о сигнатурах методов, зависимостях, и другую информацию, которая используетсяCLRдля управления кодом. Присутствие метаданных дает возможность коду идентифицировать себя, что делает ненужным использование библиотек типов и использования языка IDL (InterfaceDefinitionLanguage)
компиляция промежуточного кода в исполняемый машинный код
режимы такой компиляции:
JITкомпиляция (Just-in-timeCompilation) компиляция по требованию, по мере обращения к тем или иным данным в коде происходит компиляция соответствующих фрагментов кода в машинный код, а затем этот код загружается и исполняется. После исполнения данного фрагмента кода код сохраняется в кэше и при повторном обращении происходит только извлечение кода их хранилища, а не компиляция.
ITCJ(InstallTimeCodeGeneration) генерация кода во время установки. Тут происходит компиляция большого функционально связанного фрагмента кода целиком, называемого сборкой.
Во время компиляции промежуточного кода в исполняемый происходит верификация на соответствие кода назначенной политике безопасности проверка корректности доступа к памяти соответствие типов, соответвие сигнатуры вызовов методов их обьявлению
загрузка и выполнение кода. Управляемый код использует службы предоставляемые CLRв число которых входят службы обеспечения безопасности взаимодействия с неуправляемым кодом, «сборщик мусора», служба автоматического управления памятью
Лекция №5 02.10.2012