А.С. Цветков. Лекции на ФСПМИ СПбГУ
Расписание Архитектура Администрирование HTML Win API C++ C# и .NET Дипломные работы Об авторе

Платформа .NET

Язык программирования C#

Лекция I – Основы языка
  1. Классы
  2. Композиция приложения C#
  3. Структурные и ссылочные типы
  4. Класс System.Object
  5. Типы данных CLS
  6. Упаковка и распаковка
  7. Константы
  8. Управляющие конструкции языка: условные операторы (if, switch)
  9. Управляющие конструкции языка: циклы (for, foreach, while)
  10. Методы классов
  11. Уровни доступа
  12. Статические методы
  13. Модификаторы параметров (in, out, ref, params)
  14. Массивы
  15. Класс System.Arrays
  16. Текстовые строки
  17. Перечисления
  18. Структуры
  19. Пространства имен
     
Лекция II – Объектно-ориентированное программирование
  1. Определение класса
  2. Уровни видимости
  3. Средства инкапсуляции
  4. Свойства класса
  5. Статические свойства и конструкторы
  6. Поля «только для чтения»
  7. Поддержка наследования
  8. Защищаемые поля и запечатанные классы
  9. Модель включения-делегирования
  10. Вложенные типы
  11. Полиморфизм и виртуальные методы
  12. Абстрактные методы и классы
  13. Приведение типов
  14. Обработка исключений
     
Лекция III – Интерфейсы
  1. Определение интрефейса
  2. Ссылки на интерфейс (as, is)
  3. Явная реализация интерфейса
  4. Наследование от нескольких интерфейсов
  5. Встроенные интерфейсы (IEnumarate, IEnumarable)
  6. Клонируетмые объекты
  7. Сравниваемые объекты
  8. Методы сортировки
  9. Класс ArrayList
     
Лекция IV – Дополнительные возможности классов
  1. Создание пользовательского индексатора
  2. Перегрузка операторов
  3. Делегаты
  4. События
  5. Обработка событий с использованием интрефейсов
     
Лекция V – Сборки, потоки и домены приложений
  1. Обзор сборок .NET
  2. Добывление ссылок на внешние сборки
  3. Частные сборки
  4. Конфигурационный файл
  5. Загрузка разных версий сборок
  6. Домены приложения
  7. Пространство имен System.Threading и работа с потоками
  8. Синхронизация потоков
     
Лекция VI – Рефлексия типов и программирование с использованием атрибутов
  1. Класс Type
  2. Типы пространства имен System.Reflection
  3. Использование позднего связывания
  4. Динамические сборки
  5. Атрибуты в .NET
     
Лекция VII – Построение оконных приложений
  1. Обзор пространства имен Windows.Forms
  2. Создание главного окна приложения
  3. Методы объекта Application
  4. Структура оконного приложения
  5. Класс Component
  6. Класс Control
  7. Настройка стиля формы
  8. Перехват событий от мыши и клавиатуры
  9. Событие Paint
  10. Класс ScrollableControl
  11. Cвойства класса Form
  12. Класс Menu
  13. Свойства объекта StatusBar
  14. Класс Timer
  15. Панель инструментов
  16. Работа с системным реестром
  17. Работа с журналом событий
     
Лекция VIII – Графика GDI+
  1. Важные пространства имен GDI+
  2. Типы System.Drawing
  3. Вспомогательные типы
  4. Сеансы вывода графики
  5. Вывод графики вне события Paint
  6. Возможности класса Graphics
  7. Системы координат
  8. Работа с цветом
  9. Работа со шрифтами
  10. Рисование пером
  11. Рисование кистью
  12. Вывод изображений
  13. Построение пути
  14. Русурсы
     
Лекция IX – Ввод-вывод и сериализация объектов
  1. Наиболее важные классы пространства имен System.IO
  2. Свойства и методы класса FileSystemInfo
  3. Класс FileInfo
  4. Абстрактный класс Stream
  5. Запись и чтение из текстового файла
  6. Классы BinaryReader и BinaryWriter
  7. Сохранение объектов .NET
  8. Сериализация и десериализация
  9. Сериализация в формате SOAP
  10. Сериализация в формате XML
  11. Использование диалога Open и SaveAs
     
Лекция X – Доступ к данным при помощи ADO.NET
  1. Пространства имен ADO.NET
  2. Классы DataColumn в DataTable
  3. Тип DataRow
  4. Манипуляция данными в таблицах
  5. Применение фильтров и сортировок
  6. Элемент управления DataGrid
  7. Тип DataView
  8. Класс DataSet
  9. Отношения между таблицами
  10. Запись объектов DataSet в формате XML
  11. Управляемые провайдеры ADO.NET
  12. Класс OleDbConnection
  13. Тип OleDbDataAdapter
  14. Пространство имен System.Data.SqlClient
  15. Автоматическое создание команд SQL
     


Материалы занятий

Презентации Power Point
  1. Основы языка
  2. Объектно-ориентированное программирование
  3. Интерфейсы
  4. Дополнительные возможности классов
  5. Сборки, потоки и домены приложений
  6. Рефлексия типов и программирование с использованием атрибутов
  7. Построение оконных приложений
  8. Графика GDI+
  9. Ввод-вывод и сериализация объектов
  10. Доступ к данным при помощи ADO.NET
  11. Доступ к функциям WinAPI из .NET
Материалы практик
2015-2016
  1. Калькулятор (от 29 января 2016)
  2. Экзаментора (от 18 февраля 2016)
2014-2015
  1. Построение графика функции (от 6 марта 2015)
  2. Работа с файлами (от 20 марта 2015)
  3. Сериализация (от 20 марта 2015)
  4. OLE DB Console (от 27 марта 2015)
2013-2014
  1. Практика 1, группа I
  2. Практика 1, группа II
  3. Практика 2, редактор с сериализацией
  4. Практика 2, аналоговые часы
  5. Практика 3, Калькулятор длинных чисел
  6. Практика 3, Моделирование полета снаряда
  7. Практика 4, Консольное приложение OleDB
  8. Практика 4, Оконное приложение OleDB
  9. Практика 4, Автоматическое приложение OleDB
  10. Практика 4, Вызов функций WinAPI из .NET
  11. Практика 5, Иллюстрация методов сортировок
2012-2013
  1. Практика 2 марта 2012
  2. Игра «Жизнь», 6 апреля 2012
  3. Калькулятор, 27 апреля 2012
  4. Сталкивающиеся частицы, 8 февраля 2013
  5. Трехмерный куб, 22 февраля 2013

Учебные пособия

  1. Уроки C#
  2. Интерактивный тест по C#
  3. Примеры программ на C#

Рекомендуемая литература

  1. Эндрю Троелсен - С# и платформа .NET Download 41M
  2. Примеры к главам книги Download 5M