Учебное пособие
Кафедра автоматизированных систем управления
Библиографическая запись:
Оглавление (содержание)
Глава 1. Введение 6
Глава 2. Введение в технологию .NET 8
§ 2.1. Принципы объектно-ориентированного программирования 8
2.1.1. Понятие объекта и класса 8
2.1.2. Три основных принципа ООП 13
§ 2.2. Технология Microsoft .NET 22
2.2.1. Платформа Microsoft .NET 22
2.2.2. Common Language Runtime 23
2.2.3. Библиотеки классов .NET Framework 24
2.2.4. Microsoft Intermediate Language и компиляторы JITter 26
2.2.5. Унифицированная система типов 28
2.2.6. Преимущества .NET 33
§ 2.3. Hello, World! 36
2.3.1. Выбор среды разработки 36
2.3.2. Создание программы 39
2.3.3. Компиляция 46
2.3.4. Выполнение 49
2.3.5. Анализ исходного кода 51
2.3.6. Анализ кода MSIL 54
2.3.7. Файлы с примерами 58
§ 2.4. Среда разработки 60
2.4.1. Организация проекта 60
2.4.2. Редактор кода 62
2.4.3. Встроенный отладчик 65
Глава 3. Основы языка C# 73
§ 3.1. Типы данных. Идентификаторы 78
3.1.1. Базовый класс System.Object 78
3.1.2. Типы данных по значению 81
3.1.3. Типы данных по ссылке 109
3.1.4. Анонимные типы 123
3.1.5. Упаковка 125
3.1.6. Переменные и идентификаторы 126
§ 3.2. Форматирование. Консольный ввод и вывод 132
3.2.1. Методы Format и ToString 132
3.2.2. Вывод на консоль 157
3.2.3. Методы Parse и TryParse 159
3.2.4. Ввод с консоли 166
§ 3.3. Вычисление выражений 170
3.3.1. Набор операторов языка C# 170
3.3.2. Приоритет и порядок выполнения 171
3.3.3. Описание операторов 173
3.3.4. Операции со строками 186
3.3.5. Операции с перечислениями 187
3.3.6. Операции с типом DateTime 188
3.3.7. Математические вычисления 189
§ 3.4. Операторы языка 193
3.4.1. Основные понятия 193
3.4.2. Операторы ветвления 195
3.4.3. Операторы цикла 201
3.4.4. Операторы перехода 205
3.4.5. Работа с исключительными ситуациями 209
§ 3.5. Файловый ввод и вывод 219
3.5.1. Перечень основных классов файлового ввода-вывода 219
3.5.2. Потоковый ввод и вывод 219
3.5.3. Управление ресурсами потока 222
3.5.4. Сохранение и загрузка состояния приложения 223
§ 3.6. Директивы препроцессора 234
3.6.1. Директивы объявлений 234
3.6.2. Директивы условной компиляции 235
3.6.3. Директивы диагностики 237
3.6.4. Директивы регионов 238
3.6.5. Директивы дополнительных опций 239
Глава 4. Классы и интерфейсы 242
§ 4.1. Пространства имен 242
4.1.1. Описание пространства имен 243
4.1.2. Директивы использования 245
4.1.3. Ссылки на сборки 248
§ 4.2. Описание класса 254
4.2.1. Модификаторы класса 254
4.2.2. Члены класса 257
4.2.3. Статические члены и члены экземпляров 260
4.2.4. Создание и удаление экземпляров класса 263
4.2.5. Вложенные типы 265
§ 4.3. Описание полей класса 266
4.3.1. Константы 266
4.3.2. Поля 266
§ 4.4. Описание методов класса 270
4.4.1. Синтаксис описания методов 270
4.4.2. Конструкторы 276
4.4.3. Деструкторы 280
4.4.4. Метод Main 280
§ 4.5. Свойства. Индексаторы 282
4.5.1. Определение и использование свойств 282
4.5.2. Индексаторы 288
§ 4.6. Наследование 291
4.6.1. Свойства наследования 291
4.6.2. Доступ к членам при наследовании 293
4.6.3. Абстрактные классы 296
4.6.4. Изолированные классы 297
§ 4.7. Перегрузка и полиморфизм 299
4.7.1. Статический полиморфизм 299
4.7.2. Виртуальный полиморфизм 300
4.7.3. Перегрузка операторов 305
§ 4.8. Делегаты и события 315
4.8.1. Предыстория вопроса 315
4.8.2. Методы обратного вызова 319
4.8.3. Определение событий с помощью делегатов 324
§ 4.9. Интерфейсы 328
4.9.1. Объявление интерфейсов 328
4.9.2. Реализация интерфейсов 329
4.9.3. Интерфейсы и наследование 334
4.9.4. Примеры использования интерфейсов 337
Глава 5. Специальные возможности 347
§ 5.1. Универсальные типы 347
5.1.1. Параметры типа 347
5.1.2. Ограничения параметров типа 355
5.1.3. Стандартные универсальные типы 359
§ 5.2. Потоки 360
5.2.1. Основы организации потоков 360
5.2.2. Работа с потоками 363
5.2.3. Безопасность и синхронизация потоков 378
§ 5.3. Метаданные и отражение 387
5.3.1. Иерархия API отражения 387
5.3.2. Работа со сборками и модулями 391
5.3.3. Позднее связывание и отражение 394
5.3.4. Создание и исполнение кода в период выполнения 398
§ 5.4. Атрибуты 401
5.4.1. Синтаксис описания атрибутов 401
5.4.2. Определение и запрос атрибутов 404
5.4.3. Атрибут AttributeUsage 408
5.4.4. Стандартные классы атрибутов 412
§ 5.5. Неуправляемый код 415
5.5.1. Службы Platform Invocation Services 415
5.5.2. Написание небезопасного кода 420
§ 5.6. Комментарии и документирование кода 428
5.6.1. Комментирование кода 428
5.6.2. XML-документирование кода C# 430
Заключение 441
Список литературы 442
Приложения 443
Приложение А. Объекты для работы с датой и временем 443
Приложение Б. Объекты для работы со строками 448
Приложение В. Объекты для работы с массивами 455
Приложение Г. Объекты форматирования 459
Приложение Д. Объекты файлового ввода-вывода 466
Специализированная подготовка разработчиков бизнес приложений
09.03.02 Информационные системы и технологии (Аналитические информационные системы) Очная форма обучения, план набора 2015 г. План в архиве
Объектно-ориентированное программирование
27.03.04 Управление в технических системах (Управление в робототехнических системах) Очная форма обучения, план набора 2016 г. План в архиве
Языки программирования для обработки сигналов
11.04.01 Радиотехника (Видеоинформационные технологии и цифровое телевидение) Очная форма обучения, план набора 2018 г. План в архиве
Объектно-ориентированное программирование
09.03.03 Прикладная информатика (Прикладная информатика в экономике) Очная форма обучения, план набора 2018 г. План в архиве
Объектно-ориентированное программирование
09.03.03 Прикладная информатика (Прикладная информатика в экономике) Заочная форма обучения, план набора 2018 г. План в архиве
Объектно-ориентированное программирование
09.03.02 Информационные системы и технологии (Аналитические информационные системы) Очная форма обучения, план набора 2019 г. План в архиве
Объектно-ориентированное программирование
09.03.03 Прикладная информатика (Прикладная информатика в экономике) Очная форма обучения, план набора 2015 г. План в архиве
Объектно-ориентированное программирование
27.03.04 Управление в технических системах (Управление в робототехнических системах) Очная форма обучения, план набора 2018 г. План в архиве
Объектно-ориентированное программирование
09.03.03 Прикладная информатика (Прикладная информатика в экономике) Очная форма обучения, план набора 2019 г. План в архиве
Объектно-ориентированное программирование
09.03.02 Информационные системы и технологии (Аналитические информационные системы) Очная форма обучения, план набора 2016 г. План в архиве
Языки программирования для обработки изображений
11.04.02 Инфокоммуникационные технологии и системы связи (Активное зрение роботов) Очная форма обучения, план набора 2018 г. План в архиве
Объектно-ориентированное программирование
09.03.03 Прикладная информатика (Прикладная информатика в экономике) Очная форма обучения, план набора 2016 г. План в архиве
Специализированная подготовка разработчиков бизнес приложений
09.03.02 Информационные системы и технологии (Аналитические информационные системы) Очная форма обучения, план набора 2017 г. План в архиве
Специализированная подготовка разработчиков бизнес приложений
09.03.02 Информационные системы и технологии (Аналитические информационные системы) Очная форма обучения, план набора 2016 г. План в архиве
Языки программирования для обработки изображений
11.04.02 Инфокоммуникационные технологии и системы связи (Активное зрение роботов) Очная форма обучения, план набора 2017 г. План в архиве
Программирование и программное обеспечение информационных технологий
43.03.01 Сервис (Информационный сервис) Очная форма обучения, план набора 2015 г. План в архиве
Языки программирования для обработки изображений
11.04.01 Радиотехника (Видеоинформационные технологии и цифровое телевидение) Очная форма обучения, план набора 2018 г. План в архиве
Языки программирования
43.03.01 Сервис (Информационный сервис) Очная форма обучения, план набора 2015 г. План в архиве
Объектно-ориентированное программирование
09.03.03 Прикладная информатика (Прикладная информатика в области экономики) Заочная форма обучения, план набора 2014 г. План в архиве
Практика по получению первичных профессиональных умений и навыков, в том числе первичных умений и навыков научно-исследовательской деятельности
09.03.03 Прикладная информатика (Прикладная информатика в экономике) Заочная форма обучения, план набора 2012 г. План в архиве
Языки программирования для обработки сигналов
11.04.02 Инфокоммуникационные технологии и системы связи (Активное зрение роботов) Очная форма обучения, план набора 2018 г. План в архиве
Объектно-ориентированное программирование
09.03.03 Прикладная информатика (Прикладная информатика в области экономики) Заочная форма обучения, план набора 2017 г. План в архиве
Программирование
11.03.01 Радиотехника (Аудиовизуальная техника) Очная форма обучения, план набора 2016 г. План в архиве
Программирование сигнальных процессоров
11.03.01 Радиотехника (Аудиовизуальная техника) Очная форма обучения, план набора 2018 г. План в архиве
Специализированная подготовка разработчиков бизнес приложений
09.03.02 Информационные системы и технологии (Аналитические информационные системы) Очная форма обучения, план набора 2018 г. План в архиве
Объектно-ориентированное программирование
09.03.03 Прикладная информатика (Прикладная информатика в области экономики) Заочная форма обучения, план набора 2016 г. План в архиве
Языки программирования для обработки сигналов и изображений
11.04.01 Радиотехника (Видеоинформационные технологии и цифровое телевидение) Очная форма обучения, план набора 2017 г. План в архиве
Объектно-ориентированное программирование
09.03.03 Прикладная информатика (Прикладная информатика в области экономики) Заочная форма обучения, план набора 2015 г. План в архиве
Объектно-ориентированное программирование
27.03.04 Управление в технических системах (Управление в робототехнических системах) Очная форма обучения, план набора 2017 г. План в архиве
Объектно-ориентированное программирование
09.03.02 Информационные системы и технологии (Аналитические информационные системы) Очная форма обучения, план набора 2017 г. План в архиве