Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теоретический_курс.doc
Скачиваний:
35
Добавлен:
10.11.2019
Размер:
7.68 Mб
Скачать

МИНОБРНАУКИ РОССИИ

Федеральное Государственное Бюджетное Образовательное Учреждение Высшего Профессионального Образования

«Московский Государственный Университет Инженерной Экологии»

(ФГБОУ ВПО «МГУИЭ»)

Факультет: машиностроительный

Кафедра: САПР

УЧЕБНОЕ ПОСОБИЕ

ТЕОРЕТИЧЕСКИЙ КУРС

ПРИЛОЖЕНИЕ К ДИПЛОМНОМУ ПРОЕКТУ НА ТЕМУ:

Программное обеспечение автоматизированного учебного курса «Прикладное программное обеспечение САПР»

студента-дипломника Ермакова Р. Г.

Москва ― 2012

СОДЕРЖАНИЕ

Глава 1. История языка программирования c# 6

1.1. История языка программирования C# 6

1.2. Развитие языков программирования до C# 12

Глава 2. Язык программирования c# и платформа .Net Framework 16

2.1. Связь языка программирования C# со средой .NET Framework 16

2.2. Общеязыковая исполняющая среда CLR 18

2.3. Общая система типов CTS 21

2.4. Общеязыковая спецификация CTS 25

2.5. Сборки в .NET Framework 26

2.6. Промежуточный язык CIL 29

2.7. Классы .NET Framework и пространства имён 35

2.8. Общеязыковая инфраструктура CLI 37

2.9. Компилятор «csc.exe» 39

Глава 3. Основы программирования на языке c# 50

3.1. Основы объектно-ориентированного программирования 50

3.2. Пример простейшей программы «Hello, World!» 52

3.3. Общая структура программы 58

3.4. Введение в систему типов 59

3.4.1. Справочные таблицы по типам данных 59

3.4.2. Понятие «Переменная», «Поле» и «Константа» 64

3.4.3. Область видимости типов переменных 69

3.4.4. Основные сведения о типах данных 72

3.4.5. Понятие «Литералы» 81

3.4.6. Преобразование типов данных 84

3.5. Основные ключевые слова, операторы и выражения 91

3.5.1. Справочные таблицы по ключевым словам (со ссылками на MSDN) 91

3.5.2. Операторы, типы операторов, выражения и виды операторов 95

3.5.3. Операторы, вычисление значения и приоритет операторов 102

3.5.4. Применение операторов: арифметические операторы 108

3.5.5. Применение операторов: отношения и логические операторы 110

3.5.6. Применение операторов: операторы присваивания 113

3.5.7. Применение операторов: поразрядные операторы 114

3.5.8. Применение операторов: тернарный оператор 117

3.5.9. Применение операторов: «if» и «switch» 118

3.5.10. Применение операторов: «for» и «while» 121

3.5.11. Применение операторов: «do-while» и «foreach» 124

3.5.12. Применение операторов: «goto», «break» и «continue» 127

3.6. Понятие «Класс», «Структура», «Объект» и «Индексатор» 131

3.6.1. О классах, структурах и понятие «Модификатор доступа» 131

3.6.2. Понятие «Класс» и «Статический класс» 136

3.6.3. Вложенные классы и понятие «Вложенные типы» 150

3.6.4. Понятие «Абстрактный класс», «Запечатанный класс» и «Разделяемые классы» и «Разделяемые методы» 153

3.6.5. Понятие «Структура» 159

3.6.6. Понятие «Объект» 161

3.6.7. Понятие «Индексатор» 164

3.7. Понятие «Метод» и «Свойство» 170

3.7.1. Понятие «Метод» 170

3.7.2. Метод: именованные и необязательные аргументы 180

3.7.3. Метод: процедура или функция?! 184

3.7.4. Метод: рекурсия 184

3.7.5. Понятие «Свойство» 186

3.7.6. Свойство: модификаторы доступа в аксессорах 190

3.8. Понятие «Массив», «Строка», «Кортеж» и «Перечисление» 192

3.8.1. Понятие «Массив» 192

3.8.2. Виды массивов 194

3.8.3. Класс «Array» 206

3.8.4. Понятие «Кортеж» 208

3.8.5. Понятие «Строка» 210

3.8.6. Класс «StringBuilder» 215

3.8.7. Форматирующие строки 218

3.8.8. Регулярные выражения 220

3.8.9. Понятие «Перечисление» 224

3.9. Понятие «Интерфейс» 226

3.10. Основы работы с исключениями 223

3.10.1. Понятие «Исключение» 223

3.10.2. Перехват исключений 234

3.10.3. Класс «Exception» 237

3.10.4. Исключения уровня системы и приложения 242

3.10.5. Обработка многочисленных исключений 245

3.10.6. Операторы «throw» и «finally» 249

3.10.7. Исключения «повреждённого состояния», а также «checked» и «unchecked» 253

3.11. Понятие «Делегат», «Лямбда-выражение» и «Событие» 256

3.11.1. Понятие «Делегат» 256

3.11.2. Делегаты: ковариантность и контравариантность делегатов 266

3.11.3. Делегаты: «Action T» и «Func T» 267

3.11.4. Делегаты: анонимные методы 269

3.11.5. Понятие «Лямбда-выражение» 271

3.11.6. Понятие «Событие» 275

3.11.7. События: пример обработки событий 279