Онлайн-курс «Основы профессиональной разработки приложений на C/C++» разработанный на основе дисциплин и тематических модулей "Основы алгоритмизации и программирования", "Практикум по программированию", "Структуры и алгоритмы обработки данных", посвящен не только изучению основ языков программирования C и C++, но и знакомству с требованиями, которые предъявляются к коду в промышленной разработке ПО.

Сложность и "размеры" программных проектов растут, при этом требования к срокам разработки и выделяемым ресурсам, как правило, становятся все жестче. Кроме того, если раньше львиная доля ресурсов уходила именно на разработку программы, то теперь в "долгоиграющих" программных проектах значительные затраты приходятся на стадии тестирования, сопровождения и модернизации кода.

Такое смещение приоритетов требует от программиста не просто умения грамотно переложить на язык программирования тот или иной алгоритм, а, скорее, искусства создания программного кода, который будет отвечать современным требованиям надежности, безопасности, возможности рефакторинга и простоты сопровождения.

В данном курсе не только рассматриваются "классические" положения конкретного языка программирования, но и затрагиваются вопросы стиля кодирования, методики отладки программного продукта и его переносимости между платформами. При подготовке курса авторы учли методику представления материалов и проверки знаний в рамках четырех сертификационных курсов по языкам C и C++ (уровней Associate Programmer и Professional Programmer) от C++ Institute - крупнейшей международной организации по сертификации специалистов по языкам программирования C/C++. Успешное освоение курса будет способствовать подготовке обучающихся к сдаче соответствующих сертификационных экзаменов. Авторский коллектив включает как профессиональных преподавателей программирования с многолетним стажем, так и специалистов-разработчиков программного обеспечения, использующих C/C++ в свой повседневной деятельности.

Полученные в ходе изучения курса умения и навыки могут создать основу для формирования у слушателя трудовых функций, включенных в профессиональные стандарты “Программист”, “Системный программист”, “Специалист по тестированию”

Информация о преподавателях

Хусаинов Наиль Шавкятович - заведующий кафедрой МОП ЭВМ ИКТИБ, к.т.н.

Дроздов Сергей Николаевич - доцент ИКТИБ ЮФУ, к.т.н.

Жиглатый Артемий Александрович - ассистент ИКТИБ ЮФУ

Ковалева Карина Сергеевна - ассистент ИКТИБ ЮФУ

Балабаева Ирина Юрьевна - старший преподаватель ИКТИБ ЮФУ

 

Программа курса

Модуль 1. Первый проект на языке C/C++

Модуль 2. Данные, операции и операторы

Модуль 3. Составные типы данных. Алгоритмы данных для решения типовых алгоритмических задач

Модуль 4. Функции и коллекции

Модуль 5. Качество программного кода

Формируемые компентенции

Способность разрабатывать программы на языке C++

Способность применять алгоритмический подход к решению прикладных задач

Способность к использованию инструментальных средств разработки и отладки программ на языке С++

Входные требования

Школьный курс информатики и ИКТ

Общая трудоемкость (з.е.)/Длительность (нед)

количество недель обучения – 14

средняя нагрузка в неделю, акад.час – 10 час

общая трудоемкость курса – 4 зач.ед.

Сертификат

По данному курсу возможно получение сертификата.

Описание онлайн-курса

Онлайн-курс «Криптографические методы защиты информации» посвящен изучению принципов проектирования, разработки и применения современных криптографических систем. Поскольку криптографические системы являются неотъемлемой частью современных систем защиты информации, то знание принципов работы основных криптографических элементов и способов их использования есть обязательное условие для специалиста в области информационной безопасности.

Целью освоения дисциплины «Криптографические методы защиты информации» является приобретение студентами базовых знаний, умений и навыков, связанных с использованием основных криптографических алгоритмов, получение студентами знаний и освоение основных принципов и методов, применяемых при синтезе и анализе криптосистем. Задачи освоения курса заключаются в следующем:

· сформировать у слушателей представление об основных задачах и понятиях современной криптографии

· ознакомить слушателей с теоретико-числовыми основами двухключевой криптографии

 сформировать у слушателей представление об основных алгоритмических проблемах криптографии и способах их решения

· ознакомить слушателей со специальными математическими структурами, применяемыми в криптографии

· сформировать у слушателей представление об информационной безопасности, как сфере профессиональной деятельности

· объяснить студентам особенности криптографических методов защиты информации и содержание базовых понятий криптографии

· ознакомить слушателей с основными видами шифров

· ознакомить слушателей с современными стандартами криптографической защиты

· сформировать у слушателей представление об атаках на криптографические системы.

 

Информация о преподавателях

Ищукова Евгения Александровна - доцент кафедры БИТ, кандидат технических наук

Бабенко Людмила Климентьевна - профессор кафедры БИТ, доктор технических наук

Маро Екатерина Александровна - доцент кафедры БИТ, кандидат технических наук 

Сидоров Игорь Дмитриевич - доцент кафедры БИТ, кандидат технических наук

 

Программа курса

Модуль 1. Обзор современных систем шифрования

Модуль 2. Основные операции, используемые в современных алгоритмах шифрования

Модуль 3. Современные симметричные системы шифрования (блочные и поточные) Модуль 4. Стандарт шифрования США - AES.

Модуль 5. Стандарт шифрования России – ГОСТ Р34.12-2015.

Модуль 6. Режимы использования блочных шифров.

Модуль 7. Требования к поточным шифрам.

Модуль 8. Универсальные методы криптоанализа. Часть 1

Модуль 9. Универсальные методы криптоанализа. Часть 2

Модуль 10. Математика для систем с открытым ключом.

Модуль 11. Алгоритм шифрования RSA.

Модуль 12. Алгоритмы асимметричного шифрования, основанные на задаче дискретного логарифмирования

Модуль 13. Свойства хэш-функций.

Модуль 14. Криптографические протоколы

Модуль 15. Элиптическая криптография

Модуль 16. Гомоморфное шифрование

 

Формируемые компентенции

Способность применять криптографические средства при разработке защищенных систем в сфере профессиональной деятельности.

Способность применять методы анализа защищенности при разработке и использовании современных криптографических средств.

Способность выбирать и эффективно применять комплекс криптографических средств для обеспечения информационной безопасности информационных систем.

Входные требования

Для ознакомления с базовым курсом требуется:

·         Знание и понимание основ математики, а именно: владение математическими терминами, формулами, приемами вычислений, способами представления и преобразования математических зависимостей, знание основ теории вероятностей и математической статистики.

·         Знание теории информации и основ двоичной арифметики.

Общая трудоемкость (з.е.)/Длительность (нед)

количество недель обучения – 17

средняя нагрузка в неделю, акад.час – 6 час

общая трудоемкость курса – 3 зач.ед.

Сертификат

По данному курсу возможно получение сертификата.