Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры к тесту.docx
Скачиваний:
37
Добавлен:
12.04.2015
Размер:
67.36 Кб
Скачать

Вопросы к тесту

  1. Платформа .NET Framework

  • основные компоненты платформы

the common language runtime (CLR) - Среда Времени Выполнения или Виртуальная Машина. Обеспечивает выполнение сборки. Основной компонент .NET Framework.

• Под Виртуальной Машиной понимают абстракцию инкапсулированной (обособленной) управляемой операционной системы высокого уровня, которая обеспечивает выполнение программного кода и предполагает решение следующих задач:

  • их назначение

• управление кодом (загрузку и выполнение),

• управление памятью при размещении объектов,

• изоляцию памяти приложений,

• проверку безопасности кода,

• преобразование промежуточного языка в машинный код,

• доступ к метаданным (расширенная информация о типах),

• обработка исключений, включая межъязыковые исключения,

• взаимодействие между управляемым и неуправляемым кодом (в том числе и COM объектами),

• поддержка сервисов для разработки (профилирование, отладка и т.д.).

the .NET Framework class library (.NET FCL) - соответствующая CLS спецификации объектно-ориентированная библиотека классов, интерфейсов и системы типов (типов-значений), которые включаются в состав платформы Microsoft .NET.

Эта библиотека обеспечивает доступ к функциональным возможностям системы и предназначена в качестве основы при разработке .NET приложений, компонент, элементов управления.

В частности, содержит:

• встроенные (элементарные) типы, представленные в виде классов (на платформе .NET всё построено на

структурах или классах),

• классы для разработки графического пользовательского интерфейса (Windows Form),

• классы для разработки Web-приложений и Web- служб на основе технологии ASP.NET (Web Forms),

• классы для разработки XML и Internet-протоколами (FTP, HTTP, SMTP, SOAP),

• классы для разработки приложений, работающих с базами данных (ADO.NET),

  • процесс компиляции сборок под Net

CLR – это набор служб, необходимых для выполнения сборки. При этом программный код сборки может быть как управляемым (код, при выполнении которого CLR, в частности, активизирует систему управления памяти), так и неуправляемым (“старый” программный код).

Ядро среды выполнения реализовано в виде библиотеки mscoree.dll.

• При компоновке сборки в неё встраивается специальная информация, которая при запуске приложения (EXE) или при загрузке библиотеки (обращение к DLL) приводит к загрузке и инициализации CLR.

• После загрузки CLR в адресное пространство процесса, ядро среды выполнения выполняет следующие действия:

• находит местонахождение сборки,

• загружает сборку в память,

• производит анализ содержимого сборки (выявляет классы, структуры, интерфейсы),

• производит анализ метаданных,

• обеспечивает компиляцию кода на промежуточном языке (IL) в платформозависимые инструкции

(ассемблерный код),

• выполняет проверки, связанные с обеспечением безопасности,

• используя основной поток приложения, передаёт управление преобразованному в команды процессора фрагменту кода сборки.

  • Элементы управляемого модуля

Заголовок PE Показывает тип файла (например, DLL), содержит временную метку (время сборки файла), содержит сведения о процессорном коде.

• Заголовок CLR Содержит информацию для среды выполнения модуля (версию требуемой среды исполнения, характеристики метаданных, ресурсов и т.д.).

Собственно эта информация делает модуль управляемым.

• Метаданные Таблицы метаданных: 1. типы, определённые в исходном коде, 2. типы, на которые имеются в коде ссылки.

• IL Собственно код, который создаётся компилятором при компиляции исходного кода. На основе IL в среде выполнения впоследствии формируется множество команд процессора.

  • Пространства имен это способ организации системы типов в единую группу.

Существует общая общеязыковая библиотека базовых классов.

И концепция пространства имён обеспечивает эффективную организацию и навигацию в этой библиотеке.

Вне зависимости от языка программирования доступ к определённым классам обеспечивается за счёт их группировки в рамках общих пространств имён.

  1. Структура консольного приложения

При создании консольного приложения с Visual C#, экспресс-выпуск, в первой линии в редакторе кода содержится директива using с перечислением нескольких пространств имен .NET Framework. Пространство имен позволяет, в некотором смысле, сгруппировать вместе классы и структуры, что ограничивает их область действия и позволяет избежать конфликта имен с другими классами и структурами. При создании программы в Visual C# Express пространство имен создается автоматически. Для использования в программе классов из других пространств имен необходимо указать их с директивой using. При создании нового приложения наиболее часто используемые пространства имен .NET Framework включены в список по умолчанию. При использовании классов из других пространств имен в библиотеке классов необходимо добавить директиву using для пространства имен к исходному файлу.

В C# классы используются для оформления кода: весь выполняемый код C# должен содержаться в классе.

В программе на C# должен присутствовать метод Main, в котором начинается и заканчивается управление. В методе Main создаются объекты и выполняются другие методы. Метод Main является статическим методом, расположенным внутри класса или структуры.

Программы консоли на C# обычно используют службы ввода/вывода, предоставляемые классом .NET Framework Console. Оператор Console.WriteLine("Hello, World!"); использует метод WriteLine. Он выводит свой строковый параметр в окно командной строки с новой строки. Другие методы Console используются для различных операций ввода и вывода. Класс Console является членом пространства имен System. Если в начало программы поместить директиву using System;, то нужно будет указать классы System.

  1. Операторы ввода-вывода

Console.ReadLine();, Console.WriteLine(); Console.Write();

  1. Типы данных (ссылочные и значения)

Тип, определенный как класс, делегат, массив или интерфейс, является ссылочным типом. Во время выполнения при объявлении переменной ссылочного типа переменная содержит значение null до явного создания экземпляра объекта с помощью оператора new или назначения его объекту, который был создан в другом месте, с помощью new.

Тип C# Тип .NET Framework

bool System.Boolean

byte System.Byte

sbyte System.SByte

char System.Char

decimal System.Decimal

double System.Double

float System.Single

int System.Int32

uint System.UInt32

long System.Int64

ulong System.UInt64

object System.Object

short System.Int16

ushort System.UInt16

string System.String

Type

Диапазон

Размер

sbyte

От -128 до 127

8-разрядное знаковое целое число

byte

От 0 до 255

8-разрядное целое число без знака

char

от U+0000 до U+ffff

16-разрядный символ Юникода

short

От -32 768 до 32 767

16-разрядное знаковое целое число

ushort

От 0 до 65 535

16-разрядное целое число без знака

int

От -2 147 483 648 до 2 147 483 647

32-разрядное знаковое целое число

uint

От 0 до 4 294 967 295

32-разрядное целое число без знака

long

От -9,223,372,036,854,775,808 до 9,223,372,036,854,775,807

64-разрядное целое число со знаком

ulong

От 0 до 18 446 744 073 709 551 615

64-разрядное целое число без знака

  1. Форматирования числовых результатов

Для форматирования числовых результатов можно использовать метод String.Format, а также метод Console.Write или Console.WriteLine, который вызывает

метод String.Format.

• Формат задается с помощью строк формата.

• В следующей таблице приведены поддерживаемые строки стандартных форматов.

• Строка формата принимает следующую форму: Axx, где A — описатель формата, а xx — описатель точности.

• Описатель формата управляет типом форматирования, применяемым к числовому значению, а описатель точности управляет количеством значащих цифр или

десятичных знаков форматированного результата.

  1. Операции c#

Приоритет

Категория

Операции

Порядок

0

Первичные

(expr) x.y f(x) a[x] x++ x-- new sizeof(t) typeof(t) checked(expr) unchecked(expr)

Слева направо

1

Унарные

+ - ! ~ ++x --x (T)x

Слева направо

2

Мультипликативные (Умножение)

* / %

Слева направо

3

Аддитивные (Сложение)

+ -

Слева направо

4

Сдвиг

<< >>

Слева направо

5

Отношения, проверка типов

< > <= >= is as

Слева направо

6

Эквивалентность

== !=

Слева направо

7

Логическое И

&

Слева направо

8

Логическое исключающее ИЛИ (XOR)

^

Слева направо

9

Логическое ИЛИ (OR)

|

Слева направо

10

Условное И

&&

Слева направо

11

Условное ИЛИ

||

Слева направо

12

Условное выражение

?:

Справа налево

13

Присваивание

= *= /= %= += -= <<= >>= &= ^= |=

Справа налево

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]