.RU

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


Основы языка C# 2005


Учебное пособие для студентов специальности 051312

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


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


Содержание

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

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

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

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

Что такое .NET 10

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

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

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

Язык MSIL 14

Сборка (Assembly) 15

Метаданные 16

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

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

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

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

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

Классы 19

Интерфейсы 19

Делегаты 19

Указатели 19

Массивы 19

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

.NET Framework 20

Common Language Runtime 20

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

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

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

.NET Framework SDK 24

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

ASP.NET 24

ADO.NET 25

Windows Forms 25

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

Открытость 25

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

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

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

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

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

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

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

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

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

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

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

События 30

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

Создание C# 31

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

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

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

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

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

Проект WindowsHello 41

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

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

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

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

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

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

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

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

54

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Проект Variables 68

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

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

Поля 70

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

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

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

Константы 75

Выражения 76

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

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

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

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

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

Операция new 81

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

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

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

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

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

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

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

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

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

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

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

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

Оператор if 93

Оператор switch 93

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

Оператор goto 96

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

Оператор return 97

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

Цикл for 98

Циклы While 99

Цикл foreach 100

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

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

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

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

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

Тело метода 106

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

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

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

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

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

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

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

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

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

Рекурсия 117

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

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

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

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

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

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

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

Класс Array 126

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

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

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

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

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

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

Строки С# 139

Класс char 139

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

Классы String и StringBuilder 147

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

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

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

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

Метод Format 152

Методы Join и Split 153

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

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

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

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

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

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

^ Классы и ООП 161

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

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

Поля класса 162

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

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

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

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

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

Операции 168

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

Константы 169

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Структуры 182

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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




ul-1-ya-tverskaya-yamskaya-d-13-moskva-gsp-3-a-47-125993-tel-495-694-03-53-faks-495-251-69-65-e-mail.html
ul-belinskogo-149-tel-257-94-40-251-47-86-stranica-2.html
ul-gagarina-2-a-direktor-kalmikov-ai-nazva-derzhavno-nspekc.html
ul-komsomolskaya-125-flag-leninskogo-rajona-geograficheskoe-polozhenie-leninskogo-rajona-goroda-stavropolya-territoriya-zemli.html
ul-mikluho-maklaya-6-117198-moskva-rossiya-stranica-2.html
ul-novosibirskaya-d-39-tomsk-634049-tel-faks-direktor382-2-67-86-91-zamestiteli382-2-67-54-80.html
  • occupation.bystrickaya.ru/modul-2-sinhronnoe-i-diahronnoe-sostoyanie-yazika-kak-obekt-issledovaniya.html
  • education.bystrickaya.ru/1048-lvinij-smotritel-bunt-molodezhi-angela-yakovleva-tel-44-20-7471-7672.html
  • bystrickaya.ru/yumor-v-reklame.html
  • control.bystrickaya.ru/dlya-professionalnih-buhgalterov.html
  • otsenki.bystrickaya.ru/resheniem-gorodskogo-metodicheskogo-soveta-municipalnogo-uchrezhdeniya-kulturi-kulturno-dosugovij-centr.html
  • zadachi.bystrickaya.ru/pri-tvoih-zamashkah-vihod-u-tebya-ostaetsya-lish-odin-nastavitelno-povedala-nastya-stranica-12.html
  • pisat.bystrickaya.ru/termini-i-opredeleniya-5-1organizaciya-raboti-po-obespecheniyu-pozharnoj-bezopasnosti-na-proizvodstvennih-obektah.html
  • znaniya.bystrickaya.ru/razdelenie-reshenij-elvin-toffler.html
  • ucheba.bystrickaya.ru/prilozhenie-2-slovarik-terminov-ritoriki-speckurs-dlya-negumanitarnih-specialnostej-vuzov-uchebno-metodicheskij-kompleks.html
  • predmet.bystrickaya.ru/rozhdenie-otryada-v-i-lyapin-avtor-publikumih-zdes-vospominanij.html
  • desk.bystrickaya.ru/osnovnaya-obrazovatelnaya-programma-visshego-professionalnogo-obrazovaniya-151000-68-tehnologicheskie-mashini-i-oborudovanie-stranica-3.html
  • report.bystrickaya.ru/kalendarno-tematicheskoe-planirovanie-urokov-pravoslavnoj-kulturi-v-7-klasse.html
  • occupation.bystrickaya.ru/modnie-slovechki-modewrter-makkenzen-l-m15-nemeckij-yazik-universalnij-spravochnikper-s-nemeckogo-e-zaharova.html
  • knigi.bystrickaya.ru/referat-po-zarubezhnoj-literature-tema-volter.html
  • nauka.bystrickaya.ru/urtika-dicica-l-urtika-urens-l-lekarstvennie-rasteniya-i-sposobi-ih-primeneniya-v-narode.html
  • tetrad.bystrickaya.ru/universitatea-liber-interna-ional-din-moldova.html
  • gramota.bystrickaya.ru/vvedenie-celi-i-zadachi-disciplini.html
  • paragraph.bystrickaya.ru/kolya-18-let-drug-tani-student-kulinarnogo-uchilisha-stranica-23.html
  • znaniya.bystrickaya.ru/rabochaya-programma-uchebnoj-disciplini-pedagogicheskaya-psihologiya-po-podgotovke.html
  • college.bystrickaya.ru/13-zanyatost-naseleniya-uroven-i-struktura-bezrabotici-po-vozrastam-po-urovnyu-obrazovaniya-po-sfere-zanyatosti-dinamika-i-drugie-socialno-ekonomicheskie-pokazateli-okazivayushie-vliyanie-na-sistemu-obrazovaniya.html
  • holiday.bystrickaya.ru/novaya-versiya-kodos-videoset-net-predela-sovershenstvu-informacionno-analiticheskie-materiali.html
  • laboratory.bystrickaya.ru/zhitie-prepodobnogo-kosmi-skopca-otshelnika-zhitiya-svyatih.html
  • upbringing.bystrickaya.ru/linejnie-sistemi-uravnenij.html
  • thescience.bystrickaya.ru/gosudarstvennaya-ekologicheskaya-ekspertiza-utverzhdeno.html
  • upbringing.bystrickaya.ru/krupnejshie-nefinansovie-tnk-mira-uchebno-prakticheskoe-posobie-po-kursu-mirovaya-ekonomika-ufa-2008.html
  • assessments.bystrickaya.ru/eks-glavnij-sovetnik-putina-stavit-na-tandeme-krest-internet-resurs-wwwspeclettercom-05082011.html
  • urok.bystrickaya.ru/prakticheskoe-zadanie-nauchno-obrazovatelnij-material.html
  • institute.bystrickaya.ru/gendernie-razlichiya-v-proyavlenii-agressivnosti-u-podrostkov.html
  • school.bystrickaya.ru/chto-takoe-prozrachnaya-pesa-v-treh-dejstviyah.html
  • school.bystrickaya.ru/gajmorit.html
  • institut.bystrickaya.ru/sudebnaya-praktika-uchebnaya-programma-specialnost-12-00-03-yurisprudenciya-izdanie-omgu-omsk-2006.html
  • pisat.bystrickaya.ru/tehnicheskoe-zadanie-na-vipolneni-rabot-okazanie-uslug-stranica-129.html
  • nauka.bystrickaya.ru/uvlekatelnaya-programma-trenazher-dlya-detej-informatika-programma-informatika-effektivnoe-sredstvo-dlya-uyasneniya-povtoreniya-i-zakrepleniya-nachalnih-ponyat.html
  • testyi.bystrickaya.ru/93principi-podgotovki-bumazhnih-i-elektronnih-dokumentov-1-emkost-zhestkogo-diska-informatizaciya-obshestva.html
  • zadachi.bystrickaya.ru/metodicheskoe-posobie-po-pediatrii-bbk-stranica-12.html
  • © bystrickaya.ru
    Мобильный рефератник - для мобильных людей.