Онлайн-курсы:
1) Введение в программирование (С++):
1. Преподаватели: Михаил Густокашин - куратор академических программ Яндекса Директор центра студенческих олимпиад факультета компьютерных наук ВШЭ, методист московского Центра педагогического мастерства;
2. Курс подготовлен с помощью: Академия Яндекса, Высшая школа экономики (НИУ ВШЭ);
3. Содержание курса:
а. Основы (знакомство с IDE, циклы, условный оператор, массивы, функции, строки, контейнеры, знакомство с STL);
4. Ссылка: https://stepik.org/course/363Ссылки на внешний сайт.
5. Получен сертификат с отличием:
2) Программирование на языке С++:
1. Преподаватели: Александр Смаль - Сотрудник лаборатории математической логики ПОМИ РАН. Преподаватель СПбАУ. Михаил Кринкин - Преподаватель СПбАУ;
2. Курс подготовлен с помощью: Computer Science Center (CS центр);
3. Содержание курса:
а. Введение в С++ (история создания, характеристика языка, структура кода, синтаксис);
б. Как выполняются программы на С++ (стек вызовов, указатели и ссылки, динамическая память, массивы и строки);
в. Структуры и классы (структуры, методы, конструкторы и деструкторы, объекты и классы, модификаторы доступа);
г. Объектно-ориентированное программирование (наследование, виртуальные методы и их таблицы, особенности наследования в С++);
д. Дополнительные возможности С++ (перегрузка операторов, умные укзаатели, ключевые слова static, inline и friend, знакомство с шаблоном проектирования Singleton);
е. Шаблоны (шаблоны классов, шаблоны функций, специализация шаблонов).
4. Ссылка: https://stepik.org/course/7Ссылки на внешний сайт.Ссылки на внешний сайт.
5. Получен сертификат с отличием:
3) Программирование на языке С++ (продолжение):
1. Преподаватели: Александр Смаль - Сотрудник лаборатории математической логики ПОМИ РАН. Преподаватель СПбАУ.
2. Курс подготовлен с помощью: Computer Science Center (CS центр);
3. Содержание курса:
а. Продвинутые возможности С++ (множественное наследование, преобразование в стиле С++, информация о типах времени выполнения, указатели на функции, на методы и поля класса, пространства имён);
б. Нововведения стандартов С++11 и С++14 (знакомство со стандартами, семантика перемещения, принцип работы rvalue-ссылок);
в. Стандартная библиотека шаблонов (знакомство с библиотекой, последовательные контейнеры, ассоциативные контейнеры, итераторы и умные указатели, алгоритмы);
г. Обработка ошибок (принципы обработки исключений, исключения в деструкторах и контрукторах, спецификация искключений, гарантии безопасности исключений);
д. Многопоточность, библиотеки и метапрограммирование (многопоточное программирование, коллекция библиотек Boost, генерация классов и проверка свойств).
4. Ссылка: https://stepik.org/course/3206Ссылки на внешний сайт.
5. Получен сертификат с отличием:
4) Java. Базовый курс:
1. Преподаватели: Алексей владыкин - Java-разработчик в компании OpenWay, преподаватель Computer Science Center;
2. Подготовлен с помощью: Computer Science Center;
3. Содержание курса:
а. Введение в Java (история создания, компиляция программы, знакомство с IDE);
б. Базовый синтаксис (примитивные типы, преобразование типов, массивы и строки, управляющие конструкции);
в. Объекты, классы и пакеты (основы ООП, пакеты и модификаторы доступа, объявление классов, наследование, абстрактные классы и интерфейсы);
г. Обработка ошибок, исключения, отладка (знакомство с исключениями, обработка исключений, логирование);
д. Ввод-вывод, доступ к файловой системе (доступ к файловой системе, потоки байт, потоки символов, продвинутые возможности);
е. Дженерики, коллекции, потоки, функциональные интерфейсы.
4. Ссылка: https://stepik.org/course/187/Ссылки на внешний сайт.
5. Получен сертификат с отличием:
5) Алгоритмы: теория и практика. Методы:
1. Преподаватели: Александр Куликов - доктор физико-математических наук. Сергей Лебедев - исследователь в области биоинформатики и машинного обучения в JetBrains. Алексей Левин - разработчик Telegram. Павел Маврин - чемпион мира ACM ICPC 2004;
2. Подготовлен с помощью: Computer Science Center;
3. Содержание курса:
а. Введение (числа Фибоначчи, наибольший общий делитель, О-символика);
б. Жадные алгоритмы (коды Хаффмана, очереди с приоритетами);
в. "Разделяй и властвуй" (двоинчый поиск, умножение чисел и матриц, сортировка слиянием, быстрая сортировка, порядковые статистики, сортировка кучей, сортировки, основанные не на сравнениях, рекуррентные соотношения);
г. Динамическое программирование (наибольшая возрастающая подпоследовательность, расстояние редактирования, рюкзак, перемножение последовательности матриц, независимые множества во взешенных деревьях).
4. Ссылка: https://stepik.org/course/217Ссылки на внешний сайт.
5. Получен сертификат с отличием:
6) Алгоритмы: теория и практика. Структуры данных:
1. Преподаватели: Александр Куликов - доктор физико-математических наук;
2. Подготовлен с помощью: Computer Science Center;
3. Содержание курса:
а. Базовые структуры данных;
б. Очереди с приоритетом и системы непересекающихся множеств;
в. Хеш-таблицы;
г. Деревья поиска (АВЛ-деревья, сплей-деревья).
4. Ссылка: https://stepik.org/course/1547Ссылки на внешний сайт.
5. Получен сертификат с отличием:
7) Введение в архитектуру ЭВМ. Элементы операционных систем:
1. Преподаватели: Кирилл Кринкин - кандидат технических наук. Заведующий кафедрой математического обеспечения и применения ЭВМ Санкт-Петербургского электротехнического университета "ЛЭТИ";
2. Подготовлен с помощью: Computer Science Center;
3. Содержание курса:
а. Введение. Принципы построения ЭВМ (бинарные числа и логические операции, простейшие электронные компоненты, архитектура вычислительной системы);
б. Введение в язык Ассемблера (структура языка, архитектурное окружение и регистры, передача параметров через стек, синтаксис команд);
в. Базовые элементы операционных систем (задачи ОС, архитектура: планировщик, менеджер памяти, IPC; системные вызовы и обработка прерываний);
г. Процессы, потоки, многозадачность (понятия процесса и потока, многозадачность, синхронизация потоков);
д. Организация памяти (классификация видов памяти, арифметика указателей, память процесса, устройство дисковых накопителей, файловые системы);
е. Межпроцессное взаимодействие (назначение и виды IPC, принципы организации IP сетей, понятие сокета, прикладные протоколы).
4. Ссылка: https://stepik.org/course/253Ссылки на внешний сайт.
5. Получен сертификат с отличием: