Цели и задачи дисциплины
Цель дисциплины – освоение объектно-ориентированной технологии разработки прикладного программного обеспечения на языке программирования С#.
Задачами дисциплины является изучение методологии объектно-ориентированного программирования, типов данных и операций языка C#, классов, структур, интерфейсов, обобщений, коллекций, средств управления потоками и синхронизацией при использовании языка программирования С#.Краткое содержание разделов (тем, модулей)
1. Введение
Задачи и содержание дисциплины. Краткий обзор содержания курса, ознакомление с рекомендуемой литературой и методическими материалами.
2. Объектно-ориентированное программирование и язык C#
Понятие ООП. Принципы ООП. История возникновения платформы .NET и языка C#. Особенности платформы .NET и языка C#. Особенности платформы .NET. Структура приложений на языке C#. Технология разработки программного обеспечения на языке C#.
3. Типы данных и операции С#
Типы по ссылке и по значению в C#. Стандартные числовые типы данных. Строки. Перечисления. Массивы. Многомерные массивы. Свойства. Индексаторы. Делегаты. События. Константные и readonly поля. Приведение типов в C#. Стандартные операции. Приоритеты операций. Операторы цикла, условные операторы, операторы перехода.
4. Классы и структуры в C#
Понятие класса. Определение пользовательских классов в C#. Управление доступом в C#. Члены класса. Наследование в языке С#. Структуры. Статические классы. Частичные классы. Класс System.Object. Обобщения в C#.
5. Управление объектами классов и структур
Инициализация объектов. Конструкторы. Статические конструкторы. Операция new. Деструкторы. Перегрузка конструкторов. Вызов конструкторов базовых классов. Уничтожение объектов. Метод Finalize. Метод Dispose. Оператор using и интерфейс IDisposable.
6. Виртуальные методы и интерфейсы
Особенности виртуальных методов. Модификаторы virtual и override. Абстрактные классы и методы. Запечатанные классы и методы. Интерфейсы. Использование виртуальных методов и интерфейсов в технологии объектно-ориентированного программирования.
7. Перегрузка методов и операций
Перегрузка методов в C#. Перегрузка операций в C#. Определяемые пользователем приведения типов в C#. Модификаторы imlicit и explicit.
8. Управление потоками и обработка исключительных ситуаций
Использование класса Thread для управления потоками. Синхронизация. Оператор lock. Классы Monitor и Interlocked. Обработка исключительных ситуаций. Классы исключительных ситуаций.
- Преподаватель: Игорь Антонов