Читайте также: |
|
ПЛАТФОРМА – аппаратный и/или программный комплекс, служащий основой для различных вычислительных систем. Платформа определяется характеристиками процессоров, особенностями ОС. FRAMEWORK – это инфраструктура среды выполнения программ, определяющее особенности разработки и выполнения программного кода на данной платформе. Она предполагает средства организации взаимодействия с операц системой и приклад прог, методы доступа к БД, средства поддержки сетевых прилож. Dot NET Framework состоит из двух главных компонентов: 1) библиотеки базовых классов FCL 2) CLR— общая для языков среда исполнения NET-приложений. FCL предоставляет сервисы операционной системы, среды выполнения. В FCL существует несколько сотен классов, они сгруппированы в пространства имен. Она является типобезопасной, так как классы удовлетворяют спецификации общей системы типов (CTS) и является объектно-ориентированной.
Компонент CommonLanguageRuntime располагается над сервисами ОС. Назначение CLR выполнение приложений, управление памятью, обеспечение безопасности, интеграция с ЯП. Разработчики не взаимодействуют с CLR напрямую — все сервисы предоставляются библиотекой классов, которая располагается над CLR. Частью библиотеки классов является программная модель для создания Web-прил., называемая ASP.NET. Среди предоставляемых этой средой функций следует отметить 1)обработку исключительных ситуаций; 2)обеспечение безопасности; 3)средства отладки поддержки версий.
Компилируемый компилятором код для CLR называется управляемым кодом (managedcode). После компил. управляемый код содержит метаданные, которые содержат инфу о типах, членах и ссылках, используемых в коде. Метаданные используются средой выполнения:1)для обнаружения классов; 2)загрузки классов; 3)генерации кода для конкретной платформы; 4)обеспечения безопасности. Среда выполнения проверяет, доступны ли все необходимые ресурсы. Среда выполнения также следит за временем жизни объектов.
CLR также задает общую систему типов (CTS), используемую всеми ЯП. За счет единой системы типов достигается более простая интеграция компонентов и кода, написанных на разных языках программир.
Сборка (Assembly) – базовый блок приложения в.NET. Управляемые модули объединяются в сборки. Сборка может быть либо исполняемым прилож., либо библиотечным модулем (.dll). Часто файлы сборки содержат код, но в состав сборки могут также входить и графич. изобр., и ресурсы. Такие сборки назыв. статич. сборками, т.к они хранятся на диске. Динамич. сборки создаются во время выполнения программы и на диске обычно не сохраняются. Каждая сборка содержит специальные метаданные, называемые манифестом. В манифесте сод. инфа о классах, типах и ссылках на др. сборки. Схема выполнения.Net приложения. Код приложения на одном из языков.NET -> компилятор.Net -> сборка в виде файлов dll, exe -> загрузчик -> Jit-компилятор -> инструкции ассемблера - > выполнение. Common Type System (CTS) это компонент CLR. CTS определяет типы, поддерживаемые CLR. Типы можно условно раздел.на 2 группы: данные со значением и ссылочные типы. Данные со знач. описывают знач., представляемые последовательностью байтов. Ссылочные типы служат для описания значений, представляемых местонахождением последовательности байтов. Ссылочные типы делятся на 3 категории: Объектные типы, Интерфейсные, Указательные типы. В основе всех типов.NET, лежит класс System.Object Сборкой мусора это освобождение памяти, занятой объектами, ставшими бесполезными и не используемыми. В ряде языков программированя(в C++), память освобождает сам программер, отдавая команды, на создание, и удаление объекта. Задача сборки мусора снята не только с программистов, но и с разработчиков транслятор.она решается в нужное время CLR, ответственной за выполнение вычислений. За механизм сборки мусора отвечает класс GarbageCollector. В.NET существует - механизм исключений. Под исключительной ситуацией понимается возникновение особого события в программе..NET содержит набор классов, которые позволяют сохр-ть информацию о возникающих исключениях, а также предоставляет механизм передачи и перехвата объектов этих классов. Перехват и обработка исключений осуществляется с помощью блоков try…catch, Классы описывающие исключения, являются потомками класса System.Exception.
16. Поясните ключевые концепции объектно-ориентированного языка программирования C#
CLR делит свою память на: стек и кучу. Большую часть времени типы значение создаются в стеке, а ссылочные типы – в управляемой куче. Память для ссылочных типов всегда выделяется из управляемой кучи с помощью оператора С# new, который выполняет следующие действия. Ссылочный тип: 1)память для ссылочных типов всегда выделяется из управляемой кучи;2) каждый объект, размещаемый в куче, имеет некоторые дополнительные члены, подлежащие инициализации;3)незанятые полезной информацией байты объекта обнуляются (касается полей);4)размещение объекта в управляемой куче со временем инициирует сборку мусора. Значимый тип размещаются в стеке потока.В представляющей экземпляр переменной нет указателя на экземпляр; поля экземпляра размещаются в самой переменной. Экземпляры значимых типов не обрабатываются сборщиком мусора, поэтому уменьшается интенсивность работы с управляемой кучей.
Если тип называют классом (class), речь идет о ссылочном типе. Так, классы System.Object, SystemException, System.lO.FileStream и System.Random – это ссылочные типы. В свою очередь значимые типы в документации называют структурами (structure) и перечислениями (enumeration). Все структуры являются прямыми потомками абстрактного типа System.ValueType, который в свою очередь является производным от типа System.Object.
C# является ОО языком программирования. Вся логика содержится в структурах и классах. В класс могут добавляться поля и методы, определяющие данные и поведение класса. В зависимости от цели и предназначенной функциональности класса в нем можно определить любое количество полей и методов. Все методы, которые определены в классе, могут получить доступ к полю. Каждое поле имеет имя, тип данных и модификатор доступа, по умолчанию является private. Метод это процедура или функция, определнная внутри класса. Методы используются для реализации поведения класса. Каждый метод имеет имя, список параметров, тип возвращаемого значения и модификатор доступа.
При создании объекта CLR автоматически вызывает конструктор это специальный метод, автоматически вызываемый CLR при создании объекта. При определении конструктора соблюдаются следующие правила: 1)Конструкторы имеют то же имя, что и класс, в котором они определены; 2) Конструкторы имеют то же имя, что и класс, в котором они определены; 3) Конструкторы обычно инициализируют некоторые или все поля объекта, а также могут выполнять любые дополнительные задачи инициализации, требуемые классу.
Структура очень похожа на класс, она уменьшает накладные расходы из-за способа, которым CLR создает и управляет экземплярами структуры. Типы структур: Byte, Int, Double, Boolean etc. Структуры имеют ограничения: используются для моделирования элементов, которые содержат относительно небольшое количество данных.
Наследование вместе с инкапсуляцией и полиморфизмом, является одной из трех основных характеристик ООП, позволяет создавать новые классы, которые повторно используют, расширяют и изменяют поведение, определенное в других классах. Класс, члены которого наследуются, называется базовым классом, а класс, который наследует эти члены, называется производным классом. Наследование мб от: классов, интерфейсов, абстрактных классов. Абстр. Класс: может хранить данные о полях, класс может наследоваться только от одного абстрактного, поддерживает только наследование классов, может содержать реализацию, класс наследник может переопределить некоторые методы. Интерфейс: не могут содеражать конструкторов, не может хранить данные, поддерживает множественное наследование, может быть реализован структурой, класс реализуемый интерфейс должен реализовать все элементы интерфейса.
Коллекции – группа связвнных объектов. Коллекция обеспечивает безопасность типов, при извлечении элемента из универсальной коллекции нет необходимости определять или преобразовывать его тип данных, коллекция является классом, предоставляют более гибкий способ работы с группами объектов. Виды коллекций: класс Visual Basic Collection, System.Collections, System.Collections.Concurrent, System.Collections.Generics.
Дата добавления: 2015-11-14; просмотров: 56 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Проанализируйте задачи искусственного интеллекта. | | | Проанализируйте процесс создания Windows-приложений средствами Visual С#. |