Автор: Пользователь скрыл имя, 26 Ноября 2012 в 14:05, реферат
Целью данной работы является дать краткое описание платформы Microsoft. NET Framework, ее структуры и принципов работы, показать ее преимущества и недостатки перед другими существующими технологиями, а также последние нововведения в платформу и перспективы ее развития.
Платформа NET Framework ставит своей целью предоставить разработчикам возможность создавать код на любом языке по собственному выбору. При этом платформа обеспечивает максимальную интеграцию всех компонентов, даже если они были написаны на разных языках.
Введение
Описание платформы NET Framework
Архитектура и принцип работы платформы NET Framework
Компиляция исходного кода
Процесс загрузки и исполнения кода в платформе NET
IL-код и верификация
Библиотека классов .NET Framework
Версии
Новые возможности платформы .NET Framework 4.0
Заключение
Федеральное агентство по образованию
Государственное образовательное учреждение
высшего профессионального образования
Ивановский государственный
химико-технологический
Реферат на тему:
«Платформа NET. Framework»
Выполнил студент грПроверил :
Иваново 2011
Содержание
Введение
Заключение
Введение
За прошедшие десятилетия было создано множество технологий, призванных облегчить создание архитектуры и реализацию исходного кода приложений. Многие технологии предусматривают абстрагирование, которое позволяет разработчикам сосредоточиться на решении предметных задач, меньше думая об особенностях аппаратного обеспечения и операционных систем.
Целью данной работы является дать краткое описание платформы Microsoft. NET Framework, ее структуры и принципов работы, показать ее преимущества и недостатки перед другими существующими технологиями, а также последние нововведения в платформу и перспективы ее развития.
Платформа NET Framework ставит своей целью предоставить разработчикам возможность создавать код на любом языке по собственному выбору. При этом платформа обеспечивает максимальную интеграцию всех компонентов, даже если они были написаны на разных языках.
Единая модель программирования, API-интерфейс и язык программирования – большой шаг вперед в области технологий абстрагирования и огромная помощь разработчикам в их работе. Все функции NET Framework направлены на то, чтобы оставить в прошлом проблемы интеграции, что значительно упростило тестирование, развертывание, администрирование, управление версиями, повторное использование и переориентацию кода на выполнение других задач.
NET Framework ставит своей целью предоставить разработчикам возможность создавать код на любом языке по собственному выбору. При этом платформа обеспечивает максимальную интеграцию всех компонентов, даже если они были написаны на разных языках.
Все функции NET Framework направлены на то, чтобы оставить в прошлом проблемы интеграции, что значительно упростило тестирование, развертывание, администрирование, управление версиями, повторное использование и переориентацию кода на выполнение других задач.
1. Описание платформы NET Framework
При проектировании платформы Net Framework, компания Microsoft учла недостатки
существующихWindows-платформ.
- Полное и абсолютное межъязыковое взаимодействие. В .NET Framework.Поддерживаются межъязыковое наследование, межъязыковая обработка исключений и межъязыковая отладка.
- Общая среда выполнения для любых приложений .NET, вне зависимости от того, на каких языках они были созданы. Один из важных моментов при этом то, что для всех языков используется один и тот же набор встроенных типов данных.
- Единая программная модель. В отличие от существующего подхода, когда одни функции операционной системы доступны через процедуры динамически подключаемых библиотек (DLL), а другие - через СОМ-объекты, весь прикладной сервис представлен общей объектно-ориентированной программной моделью.
- Упрощенная модель программирования. Избавляет от работы с разными структурами, как это было с Win32 и СОМ. Так, разработчику не нужно разбираться с реестром, глобальными уникальными идентификаторами (GUID), IUnknown, AddRef, Release, HRESULT и т. д.
- Отсутствие проблем
с версиями. Все Windows-разработчики
знают о проблемах
- Упрощенное развертывание.
Ранее Windows-приложения было
- Работа на многих
платформах. При компиляции кода
для .NET Framework компилятор генерирует
код на общем промежуточном
языке (CommonItermediateLangua
- Интеграция языков
программирования. Технология СОМ
поддерживает взаимодействие
- Упрощенное повторное использование кода. Все описанные выше механизмы позволяют создавать собственные классы, предоставляющие сервис сторонним приложениям. Теперь многократное использование кода становится исключительно простым и создается большой рынок готовых компонентов (типов).
- Автоматическое управление памятью (сбор мусора). Программирование требует большого мастерства и дисциплины, особенно когда речь идет об управлении использованием ресурсов (файлов, памяти, пространства экрана, сетевых соединений, ресурсов баз данных и прочих). Одна из самых распространенных ошибок - небрежное отношение к освобождению этих ресурсов, что может привести к некорректному выполнению программы в непредсказуемый момент. CLR автоматически отслеживает использование ресурсов, гарантируя, что не произойдет их утечки.
- Проверка безопасности типов CLR может проверять безопасность использования типов в коде, что гарантирует корректное обращение к существующим типам. Если входной параметр метода объявлен как 4-байтное значение, CLR обнаружит и предотвратит передачу 8-байтного значения в качестве значения этого параметра. Безопасность типов также означает, что управление может передаваться только в определенные точки (точки входа методов). Невозможно указать произвольный адрес и заставить программу исполняться, начиная с этого адреса. Совокупность всех этих защитных мер избавляет от многих распространенных программных ошибок (например, от возможности использования переполнения буфера для «взлома» программы).
- Развитая поддержка отладки. Поскольку CLR используется для многих языков, можно написать отдельный фрагмент программы на языке, наиболее подходящем для конкретной задачи, – CLR полностью поддерживает отладку многоязыковых приложений.
- Единый принцип обработки
сбоев. Один из самых
- Безопасность. Традиционные
системы безопасности
- Взаимодействие с
существующим кодом. В
2. Архитектура и принцип работы платформы NET Framework
При работе с платформой .NET можно создавать файлы с исходным кодом на любом языке, поддерживающем CLR. Затем соответствующий компилятор проверяет и анализирует исходный код. Независимо от компилятора результатом его работы является управляемый модуль (managedmodule) – стандартный переносимый исполняемый (portableexecutable, РЕ) файл 32-разрядной (РЕ32) или 64-разрядной Windows (PE32+), который требует для своего выполнения исполняемую среду CLR.
В прошлом почти все компиляторы генерировали код для конкретных процессорных архитектур, таких как x86, IA64, Alpha или PowerPC. Все CLR-совместимые компиляторы вместо этого генерируют IL-код. IL-код иногда называют управляемым (managedcode), потому что CLR управляет его жизненным циклом и выполнением.
Каждый компилятор, предназначенный для CLR, кроме генерации IL-кода, также должен создавать полные метаданные (metadata) для каждого управляемого модуля. Коротко говоря, метаданные – это просто набор таблиц данных, описывающих то, что определено в модуле, например типы и их члены. Метаданные служат многим целям:
- Они устраняют необходимость в заголовочных и библиотечных файлах прикомпиляции, так как все сведения о типах/членах, на которые есть ссылки, содержатся в файле с IL-кодом, в котором они реализованы. Компиляторы могут читать метаданные прямо из управляемых модулей.
- В процессе верификации кода CLR использует метаданные, чтобы убедиться, что код совершает только «безопасные» операции.
- Метаданные позволяют сериализовать поля объекта в блок памяти на удаленной машине и затем десериализовать, восстановив объект и его состояние на этой машине.
- Метаданные позволяют сборщику мусора отслеживать жизненный цикл объектов. Используя метаданные, сборщик мусора определяет тип объектов и узнает, какие поля в них ссылаются на другие объекты.
Метаданные расширяют возможности таких старых технологий, как библиотеки типов и файлы языка описания интерфейсов (Interface Definition Language, IDL). Важно заметить, что метаданные CLR гораздо полнее. И в отличие от библиотек типов и IDL они всегда связаны с файлом, содержащим IL-код. Фактически метаданные всегда встроены в тот же ЕХЕ/DLL, что и код, так что их нельзя разделить. Так как компилятор генерирует метаданные и код одновременно и привязывает их к конечному управляемому модулю, рассинхронизация метаданных и описываемого ими IL-кода исключена.
После компиляции набор
управляемых модулей