Similar presentations:
Платформа разработки .NET Framework
1. Платформа разработки: .NET
2. .NET Framework
.NET Framework состоит из двухчастей:
• общеязыковой исполняющей
среды (common language runtime,
CLR)
• библиотеки классов (Framework
Class Library, FCL).
3. Библиотека классов (Framework Class Library, FCL).
• FCL предоставляет объектноориентированный API-интерфейс,используемый всеми моделями
приложений. В ней содержатся
определения типов, которые
позволяют разработчикам выполнять
большой круг задач. Естественно, что
все эти определения типов
соответствуют существующей CLR в
модели программирования.
4. Версии .NET Framework
.NET Framework 1.0• Первый релиз .NET Framework вышел 5
января 2002 года для Windows 98, NT
4.0, 2000 и XP. Общая поддержка,
осуществляемая компанией
Майкрософт, закончилась 10 июля 2007
года, расширенная поддержка
закончилась 14 июля 2009 года.
5. Версии .NET Framework
.NET Framework 1.1• Следующий релиз .NET Framework вышел 1
апреля 2003 года. Это была первая версия,
автоматически устанавливаемая вместе с
операционной системой (Windows Server
2003). Для более старых операционных систем
.NET Framework 1.1 была доступна в виде
отдельного установочного пакета. Общая
поддержка, осуществляемая компанией
Майкрософт, закончилась 14 октября 2008
года, а расширенная поддержка закончилась 8
октября 2013 года.
6. Версии .NET Framework
• .NET Framework 2.0• Версия 2.0 была выпущена одновременно с
Visual Studio 2005, SQL Server 2005 и BizTalk
2006. С выходом версии 2.0 была добавлена
поддержка настраиваемых (обобщённых)
(англ. generic) классов, анонимных методов,
полная поддержка 64-битных платформ x64 и
IA-64. Общая поддержка, осуществляемая
компанией Майкрософт, закончилась 12
апреля 2011 года, а расширенная поддержка
закончится 12 апреля 2016 года.
7. Версии .NET Framework
.NET Framework 3.0
Первоначально .NET Framework 3.0 носила имя WinFX, что
отражало её суть: расширение .NET Framework 2.0 с
сохранением всех библиотек и добавлением четырёх новых
компонентов:
Windows Presentation Foundation (WPF) — презентационная
графическая подсистема, использующая XAML;
Windows Communication Foundation (WCF) — унифицированная
программная модель межплатформенного взаимодействия;
Windows Workflow Foundation (WF) — технология определения,
выполнения и управления рабочими процессами;
Windows CardSpace — технология унифицированной
идентификации.
Поддержка, осуществляемая компанией Майкрософт,
закончилась 12 июля 2011 года.
8. Версии .NET Framework
.NET Framework 3.5Как и версия 3.0, .NET 3.5 использует CLR
версии 2.0. Новшества по сравнению с .NET
Framework 3.0 включают в себя:
– C# 3.0 и VB.NET 9.0
– Добавлен язык LINQ и провайдеры LINQ to Objects,
LINQ to XML и LINQ to SQL
– ASP.NET AJAX включён в поставку
– Расширена функциональность WF и WCF
– Добавлено пространство имён System.CodeDom
9. Версии .NET Framework
• .NET Framework 4.0Нововведения включают в себя:
• Parallel Extensions — PLINQ (Parallel LINQ) и
библиотеку параллельных задач (Task Parallel
Library), предназначенные для упрощения
программирования для многопроцессорных и
распределённых систем
• Нововведения в Visual Basic и C#
• Технологию Managed Extensibility Framework (MEF)
• Поддержку подмножеств .NET Framework и
ASP.NET в варианте Server Core
• Поддержку Code Contracts
Окончательная версия .NET Framework 4.0 была
выпущена 12 апреля 2010 года вместе с
окончательной версией Visual Studio 2010.
10. Версии .NET Framework
.NET Framework 4.5При установке удаляет .NET Framework 4.0.
Несовместима с Windows XP и более ранними
версиями Windows. Нововведения включают в
себя:
• Возможность уменьшения количества
перезапусков системы путем обнаружения и
закрытия приложений платформы .NET Framework
версии 4 во время развертывания.
• Поддержка массивов, размер которых превышает
2 гигабайта (ГБ) на 64-разрядных платформах.
• Улучшенная производительность благодаря
фоновой сборке мусора для серверов. При
использовании серверной сборки мусора в .NET
Framework 4.5 фоновая сборка мусора включается
автоматически.
11. Версии .NET Framework
.NET Framework 4.5• Фоновая компиляция по требованию (JIT), которая
опционально доступна на многоядерных
процессорах для повышения производительности
приложения.
• Возможность ограничить, как долго обработчик
регулярных выражений будет пытаться разрешить
регулярное выражение до истечения времени
ожидания.
• Возможность определить культуру по умолчанию
для домена приложения.
• Поддержка кодировки Юникод (UTF-16) в консоли.
12. Версии .NET Framework
.NET Framework 4.5.1• .NET Framework 4.5.1 выпущен 17 октября 2013
года вместе с Visual Studio 2013. Эта версия
требует Windows Vista SP2 или более свежую
версию, и поставляется вместе с Windows 8.1 и
Windows Server 2012 R2.
.NET Framework 4.5.2
• .NET Framework 4.5.2 является обновлением .NET
Framework 4.5.1, .NET Framework 4.5, и .NET
Framework 4. Устанавливается, при
необходимости, бок о бок с .NET Framework 3.5
Service Pack 1.
13. Версии .NET Framework
.NET Framework 4.6• .NET Framework 4.6 является обновлением .NET Framework
4.5.2, .NET Framework 4.5.1, .NET Framework 4.5, и .NET
Framework 4. Устанавливается, при необходимости, бок о бок
с .NET Framework 3.5 Service Pack 1.Является частью
редакции Microsoft Visual Studio 2015.
• .NET Framework 4.6 поддерживает новый JIT-компилятор для
64-разрядных систем (RyuJIT); WPF и WinForms обновлены
для поддержки экранов с высоким DPI; Криптографический
API в .NET Framework 4.6 использует последнюю версию API
от Microsoft CryptoAPI, благодаря этому стал доступен набор
алгоритмов шифрования «Suite B» — AES, SHA-2, Elliptic curve
Diffie-Hellman, ECDSA.
14. Назначение .NET Framework
• Microsoft .NET Framework позволяетразработчикам в гораздо большей степени
задействовать готовые технологии, чем
предыдущие платформы разработки от
Microsoft. В частности, .NET Framework
предоставляет реальные возможности
повторного использования кода, управления
ресурсами, многоязыковой разработки,
безопасности, развертывания и
администрирования.
15. Общеязыковая исполняющая среда (CLR)
• CLR предоставляет модельпрограммирования, используемую во
всех типах приложений. У CLR
собственный загрузчик файлов,
диспетчер памяти (сборщик мусора),
система безопасности (безопасность
доступа к коду), пул потоков и другое.
Кроме того, CLR предоставляет
объектно-ориентированную модель
программирования, определяющую, как
выглядят и ведут себя типы и объекты.
16.
Исполняющая среда CLRВозможности CLR
доступны любым
языкам
17. Компиляция файлов
В прошлом почти всекомпиляторы генерировали
код для конкретных
процессорных архитектур.Все
CLR-совместимые
компиляторы вместо этого
генерируют IL-код. IL-код
иногда называют
управляемым (managed
code), потому что CLR
управляет его жизненным
циклом и выполнением.
18. Методанные
Каждый компилятор, предназначенныйдля CLR, кроме генерации IL-кода,
также должен создавать полные
метаданные (metadata) для каждого
управляемого модуля.
• Методанные – это набор таблиц данных,
описывающих то, что определено в
модуле, например типы и их члены.
19. Управляемый и неуправляемый код
• Неуправляемый код компилируется дляконкретного процессора и при вызове просто
исполняется.
• В управляемой среде компиляция
производится в 2 этапа:
– 1) компилятор переводит C# код в IL
– 2) для исполнения нужно перевести IL код в
машинный код процессора, что требует доп.
динамической памяти и времени.
20. Объединение управляемых модулей в сборку
• Сборка (assembly) — двоичный файл,содержащий управляемый код.
• Во-первых, это логическая группировка одного
или нескольких управляемых модулей или
файлов ресурсов.
• Во-вторых, это самая маленькая единица с
точки зрения повторного использования,
безопасности и управления версиями.
21. Содержание сборки
В состав сборки входят:• Номер версии ПО,
• Метаданные,
• Инструкции IL,
• Сведения о других сборках, на которые они
ссылаются.
Иначе говоря, CLR знает о сборке все, что нужно для ее
выполнения. Не нужно размещать никакой
дополнительной информации ни в реестре, ни в службе
каталогов Active Directory.
22. Преимущества CLR и FCL.
• Единая программная модель В отличие отсуществующего подхода, когда одни функции
ОС доступны через процедуры динамически
подключаемых библиотек (DLL), а другие —
через СОМ-объекты, весь прикладной сервис
представлен общей объектноориентированной программной моделью.
• Упрощенная модель программирования CLR
Избавляет от работы с разными потаенными
структурами, как это было с Win32 и СОМ. Так,
разработчику не нужно разбираться с
реестром, глобальными уникальными
идентификаторами (GUID).
23. Преимущества CLR и FCL.
• Отсутствие проблем с версиями архитектура.NET Framework позволяет изолировать
прикладные компоненты, так что приложение
всегда загружает компоненты, с которыми оно
строилось и тестировалось.
• Упрощенное развертывание компоненты .NET
Framework не связаны с реестром. По сути
установка приложений .NET Framework
сводится лишь к копированию файлов в
нужные каталоги и созданию ярлыков в меню
Start (Пуск), на рабочем столе или на панели
быстрого запуска задач.
24. Преимущества CLR и FCL.
• Работа на многих платформах При компиляции кодадля .NET Framework компилятор генерирует код на
общем промежуточном языке (common intermediate
language, CIL), а не традиционный код, состоящий из
процессорных команд. При исполнении CLR
транслирует CIL в команды процессора.
• Интеграция языков программирования СОМ
поддерживает взаимодействие разных языков — .NET
Framework обеспечивает интеграцию разных языков, то
есть один язык может использовать типы, созданные на
других языках.
25. Преимущества CLR и FCL.
• Упрощенное повторное использование кодаВсе описанные выше механизмы позволяют
создавать собственные классы,
предоставляющие сервис сторонним
приложениям. Теперь многократное
использование кода становится
исключительно простым и создается большой
рынок готовых компонентов (типов).
• Автоматическое управление памятью CLR
автоматически отслеживает использование
ресурсов, гарантируя, что не произойдет их
утечки. По сути она исключает возможность
явного «освобождения» памяти.
26. Преимущества CLR и FCL.
• Проверка безопасности типов CLR можетпроверять безопасность использования типов
в коде, что гарантирует корректное обращение
к существующим типам.
• Развитая поддержка отладки Поскольку CLR
используется для многих языков, можно
написать отдельный фрагмент программы на
языке, наиболее подходящем для конкретной
задачи, — CLR полностью поддерживает
отладку многоязыковых приложений.
27. Преимущества CLR и FCL.
• Единый принцип обработки в CLR обо всех сбояхсообщается через исключения, которые
позволяют отделить код, необходимый для
восстановления после сбоя, от основного
алгоритма.
• Взаимодействие с существующим кодом В
Microsoft понимают, что разработчики накопили
огромный объем кода и компонентов.
Переписывание всего этого кода, так чтобы он
задействовал все достоинства .NET Framework,
значительно замедлило бы переход к этой
платформе. Поэтому в .NET Framework
реализована полная поддержка доступа к СОМкомпонентам в существующих DLL.