Высокоуровневые методы программирования (С#)

Кафедра информатики и автоматизации научных исследований

Специальность: Прикладная информатика

Преподаватель: Власов В.С.

Целью освоения дисциплины (модуля) «Высокоуровневые методы программирования (С#)» является ознакомление студентов с языком программирования C#, а также основными технологиями платформы .NET и связанными с ними средствами языка C#. Кроме того, в рамках курса даются практические навыки работы в среде MS Visual Studio при создании приложений на языке программирования C#. Программа курса требует от студентов знаний основ объектно-ориентированного программирования.

В курс включены вопросы, связанные с базовыми технологиями платформы .NET, синтаксисом языка С#, новыми технологиями в программировании и их реализацией на языке С#.

В результате освоения дисциплины обучающийся должен:

Знать: базовые технологии, принципы и составляющие платформы .NET, синтаксис языка C#.

Уметь: Разрабатывать приложения под платформу .NET на языке программирования C# в среде MS Visual Studio.

Владеть: представлениями (навыками) об основных технологиях .NET и их реализации на языке программирования C#.

Содержание

1. Основные технологи платформы .NET. Основанные возможности платформы .NET. Стандартная среда выполнения (CLR). Стандартная система типов (CTS). Стандартная языковая спецификация (CLS). Библиотека базовых классов. Сборки. Промежуточный язык (IL).Утилита ILDASM.

2. Основы языка С#.  Файл класса. Метод Main. Создание объектов. Класс System.Consol. Структурные типы. Ссылочные типы. Класс System.Object. Системные типы данных. Циклы. Логические операторы. Операторы сравнения. Условные операторы. Создание пользовательских методов. Модификаторы уровня доступа. Статические методы и методы экземпляров. Статические данные. Модификаторы параметров методов. Структурные и ссылочные типы. Упаковка. Распаковка. Пространства имен.

3. Объектно-ориентированное программирование в С#. Открытый интерфейс по умолчанию. Область видимости на уровне типа. Свойства. Вложенные типы. Наследования. Виртуальные методы и их замещение. Абстрактные классы. Абстрактные методы. Сокрытие методов. Приведение типов. Обработка исключений. Удаление объектов. Метод Finalize(). Метод Dispose(). Сборщик мусора и класс System.GC.

4. Интерфейсы. Определение интерфейса. Реализаций интерфейса. Получение ссылки на интерфейс. Обращение к членам интерфейса. Интерфейсы как параметры. Конфликты имен. Явная реализация. Создание иерархий интерфейсов. Встроенные интерфейсы. Интерфейс ICloneable. Интерфейс IComparable. Интерфейс IComparer.

5. Коллекции. Класс System.Array. Сортировка массива. Пользовательские нумераторы. Пользовательский индексатор. Пространство имен System.Collections. Класс ArrayList. Класс SortedList.

6. Делегаты. Концепция делегатов. Класс System.MulticastDelegate. Делегат как вложенный тип. Применение делегатов. События.

7. Рефлексия типов. Концепции рефлексии типов. Класс Type. Пространство имен System.Reflection.

8. Графический интерфейс. Пространство имен System.Windows.Forms. Создание проекта Windows Application. Создание окна приложения. Класс System.Wndows.Forms.Application. Класс Control. Пространство имен System.Drawing.

Лабораторный практикум

  1. Работа в среде программирования Visual Studio .NET.
  2. Создание клонируемых объектов.
  3. Создание сравниваемых объектов.
  4. Использование встроенных коллекций.
  5. Создание пользовательских нумераторов и индексаторов.
  6. Применение делегатов

Литература

а) основная литература:

  1. Троелсен Э. С# и платформа .NET. Библиотека программиста. – СПб.: Питер, 2003. – 800 с.
  2. http://msdn.microsoft.com/vcsharp/

 

б) дополнительная литература:

  1. Просиз Д. Программирование Microsoft для .NET. – М.: Издательско-торговый дом «Русская редакция», 2003. – 704 с.
  2. http://www.dotsite.spb.ru/Tutorials/CSharp/
  3. http://www.csharphelp.com/
  4. http://csharpcomputing.com/Tutorials/TOC.htm

Отчетность

  • Семестр 5: К/Р