1_C#_введение.pptx
- Количество слайдов: 11
Литература 1. Троелсен Э. Язык программирования С# 2010 и платформа. NET 4 - Изд. “И. Д. Вильямс”, 2011. 2. Трей Нэш. C# 2010. Ускоренный курс для профессионалов. - Изд. Вильямс, 2010. 3. Нейгел К. , Ивьен Б. и др. С# 2008 и платформа NET 3. 5 для профессионалов. – Изд. Диалектика, 2008. 4. Герберт Шилдт. С# 3. 0. Полное руководство. - Изд. Вильямс, 2010. 5. Березина Н. И. Лабораторные работы по курсу «Объектноориентированное программирование: Язык программирования C#»
Платформа Microsoft®. NET Версии: 1. 0 (февраль 2002) 2. 0 (ноябрь 2005) 3. 5 (ноябрь 2007) 4. 0 ( апрель 2010) Цели разработки платформы: • Создать единую объектно-ориентированную среду программирования для локальных и распределенных приложений. • Упростить развертывание (deployment) приложений и решить проблемы с конфликтом версий. • Создать среду для безопасного выполнения кода, в том числе кода, созданного другими производителями программного продукта. • Унифицировать процесс разработки различных типов приложений, например, Windows-приложений и Web-сервисов. • . NET Enterprise Servers • . NET Framework • Visual Studio. NET
. NET Framework • Общеязыковая среда выполнения Сommon Language Runtime (CLR) • Базовая библиотека классов. NET Framework Class Library ( другие термины - Base Class Library (BCL) или Framework Class Library (FCL))
Компиляция и выполнение кода • Компиляция исходного кода на языке C# в код Microsoft intermediate language (MSIL). • В процессе выполнения кода под управлением CLR компиляция кода MSIL в команды процессора (native code). • Just-in-time (JIT) компиляторы. Рисунок из MSDN Getting Started with Visual C# Introduction to the C# Language and. NET Framework
Общеязыковая среда выполнения (CLR) • • • JIT компилятор Сборщик мусора Загрузчик классов Взаимодействие с BCL Обработка исключительных ситуаций Взаимодействие с неуправляемым кодом (PInvoke, COM) Поддержка многопоточности Проверка типов Обеспечение безопасности Поддержка отладки
Сборка (assembly) • Сборка - исполняемое под управлением CLR приложение или библиотека с типами и/или ресурсами. • Cборка – минимальная единица повторного использования, управления версиями и безопасностью. • Может распространяться простым копированием. • Может состоять из одного или нескольких файлов. По умолчанию компилятор создает однофайловую сборку. • Для создания многофайловых сборок используется компоновщик AL. exe, который запускается из командной строки.
Сборка (assembly) -2 • Сборка может использоваться (share) несколькими приложениями одновременно. Для этого она должна находиться в глобальном кэше сборок (Global Assembly Cache – GAC). Сборки в GAC должны иметь строгое имя (strong name). • В процессе выполнения приложения в память загружаются только необходимые сборки. • Можно программно получить всю информацию о сборке, используя механизм отражения (reflection). • Можно явно загрузить сборку, например, для того, чтобы получить информацию о сборке.
Структура исполняемого файла • Декларация (manifest) содержит • Список всех файлов сборки • Версию сборки • Региональные стандарты сборки (culture) • Издателя сборки Рисунок из MSDN Overview of the. NET Framework Assemblies in the Common Language Runtime Assembly Contents • Информацию о целостности сборки • Ссылки на внешние сборки • Метаданные содержат описание всех типов, определенных в приложении.
Метаданные ü Метаданные – это бинарная информация, которая добавляется в PEфайл (portable executable file) при компиляции исходного кода в MSIL. ü При выполнении кода CLR загружает метаданные в память. ü Метаданные содержат полную информацию о сборке. • Описание сборки. • Имя, версия, региональные стандарты (culture), ключ издателя (public key). • Типы, определенные в сборке. • Другие сборки, на которые ссылается данная сборка. • Права (security permissions), необходимые для выполнения сборки. • Описание каждого типа, определенного в приложении. • Имя, видимость, базовый класс, реализованные интерфейсы. • Члены класса (методы, свойства, поля, события, вложенные типы). • Атрибуты – дополнительную декларативную информацию.
Метаданные ü Метаданные используются • Сборщиком мусора • При сериализации объекта • Средой Visual. Studio для подсказок при написании исходного кода ü Метаданные доступны через • Методы классов, поддерживающих механизм отражения (reflection) • ILDASM
Библиотека классов ü Библиотека. NET Framework - множество готовых типов (классов, интерфейсов и типов-значений), которые используются при разработке приложений. ü Большинство библиотечных типов можно использовать как базовые для определения пользовательских типов. ü Библиотечные типы находятся в нескольких… сборках. ü Все типы находятся в пространствах имен, которые образуют иерархическую структуру. ü В корневом пространстве имен System находятся классы для встроенных типов (Int 32, Double, Single и т. д. )


