«Высокоуровневые методы инорматики и программирования»



Скачать 3.83 Mb.
страница 1/62
Дата 01.10.2016
Размер 3.83 Mb.
  1   2   3   4   5   6   7   8   9   ...   62
Основы языка C# 2005
Учебное пособие для студентов специальности 051312

по дисциплине «Высокоуровневые методы инорматики и программирования»


Автор: Шамшев А. Б., к.т.н, асситент кафедры «Информационные системы»
Содержание

Краткая история высокоуровневых языков программирования 6

Краткая история Windows 7

Платформа Microsoft .NET 8

Три вопроса о .NET 9

Что такое .NET 10

Зачем нужен .NET 11

Как работает технология .NET 12

Сборки, метаданные и промежуточный код 14

Язык MSIL 15

Сборка (Assembly) 15

Метаданные 17

Особенности разработки приложений .NET 18

Пространства имён 18

Общая система типов (Common Type System) 19

Встроенные и определенные пользователем типы данных 19

Перечисления 19

Классы 19

Интерфейсы 20

Делегаты 20

Указатели 20

Массивы 20

Правила межъязыкового взаимодействия (Common Language Specification) 20



.NET Framework 21

Common Language Runtime 21

Компиляторы 23

Безопасность приложения 23

Библиотека базовых классов .NET 24

.NET Framework SDK 25



Высокоуровневые службы 25

ASP.NET 25

ADO.NET 26

Windows Forms 26



Visual Studio 2005 - открытая среда разработки 26

Открытость 26

Framework .Net - единый каркас среды разработки 27

Библиотека классов NFCL - статический компонент каркаса 27

Единство каркаса 27

Встроенные примитивные типы 27

Структурные типы 28

Архитектура приложений 28

Модульность 28

Общеязыковая исполнительная среда CLR - динамический компонент каркаса 29

Двухэтапная компиляция. Управляемый модуль и управляемый код 29

Виртуальная машина 30

Исключительные ситуации 30

События 30

Общие спецификации и совместимые модули 31

Создание C# 31

Виды проектов 33

Консольный проект 34

Приложение Windows 39

Основная операция объектно – ориентированных приложений 40

Выполнение проекта по умолчанию 41

Проект WindowsHello 42



Система типов 43

Общий взгляд 43

Система типов 45

Семантика присваивания 50

Преобразование к типу object 51

Примеры преобразований 51

Семантика присваивания. Преобразования между ссылочными и значимыми типами 54

Операции "упаковать" и "распаковать" (boxing и unboxing). 55

55

Преобразования типов 56

Где, как и когда выполняются преобразования типов? 56

Преобразования ссылочных типов 56

Преобразования типов в выражениях 57

Преобразования внутри арифметического типа 57

Явные преобразования 61

Преобразования строкового типа 61

Преобразования и класс Convert 63

Проверяемые преобразования 63

Исключения и охраняемые блоки 66

Опасные вычисления в охраняемых проверяемых блоках 67

Опасные вычисления в охраняемых непроверяемых блоках 67

Опасные преобразования и методы класса Convert 68

Объявление переменных 68

Проект Variables 69

Синтаксис объявления 69

Время жизни и область видимости переменных 71

Поля 71

Глобальные переменные уровня модуля. 71



Локальные переменные 72

Глобальные переменные уровня процедуры 76

Константы 76

Выражения 77

Приоритет и порядок выполнения операций 77

Перегрузка операций 78

С чего начинается выполнение выражения 79

Операции "увеличить" и "уменьшить" (increment, decrement) 79

Операции sizeof и typeof 80

Операция new 82

Арифметические операции 82

Операции отношения 83

Операции сдвига 83

Логические операции 84

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

Класс Math и его функции 87

Класс Random и его функции 89

Операторы языка C# 91

Оператор присваивания 92

Блок или составной оператор 92

Пустой оператор 94

Операторы выбора 94

Оператор if 94

Оператор switch 94

Операторы перехода 98

Оператор goto 98

Операторы break и continue 98

Оператор return 99

Операторы цикла 99

Цикл for 99

Циклы While 100

Цикл foreach 101

Процедуры и функции - функциональные модули 102

Процедуры и функции - методы класса 102

Процедуры и функции. Отличия 103

Описание методов (процедур и функций). Синтаксис 103

Список формальных аргументов 105

Тело метода 107

Вызов метода. Синтаксис 107

О соответствии списков формальных и фактических аргументов 107

Вызов метода. Семантика 108

Что нужно знать о методах? 109

Почему у методов мало аргументов? 109

Поля класса или функции без аргументов? 109

Пример: две версии класса Account 110

Функции с побочным эффектом 115

Методы. Перегрузка 116

Рекурсия 118



Массивы языка C#. 120

Объявление массивов 121

Объявление одномерных массивов 121

Динамические массивы 124

Многомерные массивы 124

Массивы массивов 125

Процедуры и массивы 126

Класс Array 127

Массивы как коллекции 129

Сортировка и поиск. Статические методы класса Array 130

Класс Object и массивы 134

Массивы объектов 135

Массивы. Семантика присваивания 138

Строки постоянной длины в C#. 140

Строки С# 140

Класс char 140

Класс char[] - массив символов 146

Классы String и StringBuilder 149

Объявление строк. Конструкторы класса string 149

Операции над строками 150

Строковые константы 151

Неизменяемый класс string 152

Метод Format 153

Методы Join и Split 155

Динамические методы класса String 157

Класс StringBuilder - построитель строк 158

Объявление строк. Конструкторы класса StringBuilder 158

Операции над строками 158

Основные методы 159

Емкость буфера 161

Классы и ООП 162

Две роли классов 162

Синтаксис класса 163

Поля класса 164

Доступ к полям 164

Методы класса 165

Области видимости методов 165

Методы-свойства 165

Индексаторы 168

Операции 169

Статические поля и методы класса 170

Константы 170

Конструкторы класса 171

Деструкторы класса 172

Проектирование класса Rational 173

Свойства класса Rational 173

Конструкторы класса Rational 174

Методы класса Rational 175

Закрытый метод НОД 175

Печать рациональных чисел 176

Тестирование создания рациональных чисел 176

Операции над рациональными числами 177

Константы класса Rational 180

Структуры и перечисления 182

Развернутые и ссылочные типы 182



Классы и структуры 183

Структуры 184

Синтаксис структур 184

Класс Rational или структура Rational 185

Встроенные структуры 187

Перечисления 188

Персоны и профессии 191



Отношения между классами 192

Отношения "является" и "имеет" 193

Отношение вложенности 193

Расширение определения клиента класса 194

Отношения между клиентами и поставщиками 195

Сам себе клиент 196

Наследование 196

Добавление полей потомком 199

Конструкторы родителей и потомков 200

Добавление методов и изменение методов родителя 201

Статический контроль типов и динамическое связывание 202

Три механизма, обеспечивающие полиморфизм 203

Пример работы с полиморфным семейством классов 205

Абстрактные классы 207

Классы без потомков 210

Интерфейсы. Множественное наследование 210

Две стратегии реализации интерфейса 210

Преобразование к классу интерфейса 212

Встроенные интерфейсы 213

Упорядоченность объектов и интерфейс IComparable 213

Сериализация объектов 220

Класс с атрибутом сериализации 221



Наследование и универсальность 228

Синтаксис универсального класса 228

Класс с универсальными методами 229

Два основных механизма объектной технологии 230

Стек. От абстрактного класса к конкретным версиям 232

Ограниченная универсальность 238

Синтаксис ограничений 239

Список с возможностью поиска элементов по ключу 240

Список с арифметикой 244

Framework .Net и универсальность 248



Библиографический список: 250



  1   2   3   4   5   6   7   8   9   ...   62


База данных защищена авторским правом ©infoeto.ru 2022
обратиться к администрации
Как написать курсовую работу | Как написать хороший реферат
    Главная страница