Основы программирования на C#

Информация о курсе:
Длительность курса: 2 месяца (45 часов)
Вечерние группы: 18 занятий х 2,5 часа
Субботние группы: 10 занятий х 4,5 часа
Дата начала курса:
23 февраля 15:00-19:30
(занятия проходят по субботам)
Введение в язык программирования C#
- Области применения. Язык C# и платформа .NET.
- JIT-компилятор. CLR. Совместимость между языками .NET.
- Сборщик мусора.
- Сборки, загрузчик сборок.
- Интегрированная среда разработки IDE(Integrated Development Environment) Visual Studio. История и развитие Visual Studio.
- Перспективы использования и развития языка программирования C#.
Рабочая среда Visual Studio
- Загрузка и установка Visual Studio. Обзор рабочей среды IDE Visual Studio.
- Понятие решения и проекта.
- Создание и выполнение простейшей программы на C# в Visual Studio.
- Отладка программы. Диагностирование проблем. Понятие недостижимого кода. Средства отладки программ в Visual Studio.
Базовый синтаксис C#
- Типы данных и переменные. Область видимости (контекст) переменных
- Инициализация переменных. Константы.
- Преобразование числовых типов. Приведение типов.
- Операции. Арифметические операции. Операции инкрементирования и декрементирования. Операции отношения. Логические операции. Поразрядные операции. Математические функции (класс Math). Приоритет операций.
- Управляющие операторы. Оператор if и его формы. Вложенные операторы if. Оператор switch. Блоки и локальные переменные. Оператор break. Тернарный оператор.
- Операторы циклов. Понятие цикла и условия выхода из него. Цикл while. Цикл do-while. Цикл for. Оператор foreach. Вложенные циклы. Оператор continue. Оператор return.
- Массивы. Понятие массива. Объявление, создание и инициализация массивов. Изменение размеров массива. Многомерные массивы.
- Работа со строками.
- Методы. Понятие метода. Сигнатура и тело метода. Вызов метода. Передача параметров в метод. Возвращаемое значение. Перегрузка методов. Рекурсивные методы и их использование. Методы с произвольным числом параметров.
Основы объектно-ориентированного программирования.
- Понятие абстракции. Принципы объектно-ориентированного программирования: наследование, инкапсуляция, полиморфизм.
- Понятие класса. Понятие объекта. Отношения между классами. Создание объектов. Методы класса. Передача параметров методам. Аргументы ref и out, массивы params. Модификаторы доступа. Статические члены и модификатор static.
- Присваивание и сравнение объектов.
- Перегрузка операций. Типы и форматы перегруженных операций. Операнды и их порядок. Операции, допускающие перегрузку. Перегрузка арифметических операций, операций сравнения, операций преобразования, булевых операций, операций присваивания
- Наследование. Порядок вызова конструкторов и финализаторов. Ключевые слова base и this.
- Создание пользовательских классов. Наследование классов. Абстрактные классы.
- Интерфейсы и структурные типы. Работа с объектами через интерфейсы. Операции is и as. Интерфейсы и наследование. Структуры. Ключевое слово enum, создание перечислимых типов.
Графика и компоненты пользовательского интерфейса
- Визуальное программирование под Windows.
- Введение в Windows Forms. Архитектура. Обзор компонентов Windows Forms.
- Событийно-управляемое программирование.
- Создание приложения Windows Forms.
Сборки
- Сборки, библиотеки, атрибуты, директивы
- Создание библиотеки. Использование библиотеки.
Практические задания курса: Практические задания включают решение ряда учебных задач, направленных на овладение навыками использования базовых знаний языка С#, а также итоговый проект – создание полнофункционального приложения с графическим интерфейсом.
