Общая характеристика курса
Основная цель курса Программирование III ступень − профессиональная ориентация школьников в области программирования, нацеленная на использование современных конструкций и технологий.
Предполагается свободное и творческое владение знаниями, полученными на первых двух ступенях программирования.
Во второй части курса рассматривается популярный и мощный язык программирования C#. На C# разрабатывается несколько сетевых проектов, а также реализуются 2D– и 3D– проекты в среде Unity.
Краткая программа курса
Рекурсия. Простейшие алгоритмы. Рекурсия в графике. Ханойские башни. Перебор с возвратом. Задача о ферзях или о ходе коня.
Динамические структуры данных. Стек, очередь, двусвязный список: реализация и использование. Деревья: создание и преобразование. Деревья с обратной связью и деревья поиска. Сортировка деревом.
Объектно-ориентированное программирование. Поля и методы. Инкапсуляция. Наследование. Полиморфизм, раннее и позднее связывание, виртуальные методы. Приведение типов, операции as и is.
Основы программирования на языке C#. Базовые типы и управляющие операторы. Консольные приложения. Массивы и коллекции. Строки и файлы. Динамические структуры в C#. Интерфейсы.
Разработка графических оконных приложений. Программы, управляемые событиями. События и их обработчики. Работа с формами. Обработка событий от мыши и клавиатуры. Технология Drag & Drop.
Разработка клиент-серверных приложений. Основы клиент-серверного программирования. Основные классы C#, используемые для написания клиент-серверного взаимодействия. Понятие сетевого протокола. Разработка собственных сетевых протоколов и использующих их клиент-серверных программ. Контроль ошибок. Разработка сценария чата и протокола чата. Создание консольного чата. Разработка сценария авторизации. Создание оконного клиента для чата.
Создание 2D– и 3D-приложений для Unity. Основные понятия Unity. Среда Unity. Каркас простейшего 2D-приложения. Создание 2D-игры. Каркас простейшего 3D-приложения. Создание 3D-игры.
Продолжить обучение на мехмате