8 812 320 13 03
  • Новости
  • Расписание
  • Курсы
  • Организациям
  • Летняя Школа
  • Перезвоните мне

    Курс С++ Основы Программирования

    Основы программирования на языке C++. Уровень 2

    Основы программирования на языке C++. Уровень 2
    Начало курса
    25.01.2018
    Продолжительность
    1,5 месяца (40 ак. часов)
    Расписание
    Чт. 19:00 - 22:00
    Сб. 11:00 - 14:00

    либо

    Ср. 19:00 - 22:00
    Сб. 11:00 - 14:00
    Семинар
    (7 мест)
    15970 записаться
    Вебинар(14 мест) 13990 записаться
    свернуть

    Описание курса

    Курс Основы программирование на языке C++. Уровень 2 является продолжением курса Основы программирование на языке C++. Уровень 1 
    и охватывает большую часть, необходимые для начинающего разработчика.

    Курс рассчитан на тех, кто уже знаком с основами программирования на языке C++, стремится развиваться дальше и в настоящий момент нуждается в наставнике при освоении языка C++ на практике. 


    Одновременно c ООП настоящий курс c++ охватывает такие необходимые для разработчика темы, как:
    Сертификат
    • Сборка проекта                                                           
    • Разработка через тестирование (TDD)
    • Контроль версий на Github
    • Указатели в C++
    • ООП в C++
    • Работа с сетью C++
    • Многопоточность в C++
    • Исключения в С++
    • STL
    • Шаблоны проектирования
    • Метапрограммирование

    Программа


    Занятие 1. Механизмы сборки проектов. Системы контроля версий. Основы тестирования. 

    • Сборка проекта в среде VS
    • Различные плагины VS. Настройка среды под себя
    • Методика отладки приложения
    • Виды тестирования
    • Подключение gTest
    • Создание простейших тестов
    • Разработка через тестирование (TDD)
    • Контроль версий на Github. Работа с ветками
    • Домашнее задание

    Занятие 2. Указатели в C++

    • Указатели
    • Константные указатели и указатели на константу
    • Указатели на указатели
    • Указатели на функции
    • Смысл сравнения указателей
    • Умные указатели
    • Указатель auto_ptr – штука странная
    • Практика
    • Домашнее задание

    Занятие 3. ООП. Классы

    • Еще раз про классы
    • Смысл константной функции-члена
    • Компилятор дополняет классы
    • Присваивание и инициализация – это не одно и то же
    • Конструктор копирования. Предотвращение копирования
    • Перегрузка операторов
    • Дружественные методы и классы
    • Новые операторы приведения
    • Практика
    • Домашнее задание

    Занятие 4. ООП. Множественное наследование.

    • Таблица виртуальных методов
    • Наследование интерфейса
    • Наследование реализации
    • Дублирование подобъектов
    • Виртуальное наследование
    • Абстрактные базовые классы
    • Проблемы разрешения имен
    • Отказ от множественного наследования
    • Практика
    • Домашнее задание

    Занятие 5. ООП. Оттачиваем мастерство в использовании классов и объектов

    • Диаграмма классов
    • Отношения между классами
    • Практика
    • Домашнее задание






    Занятие 6. Шаблоны и метапрограммирование

    • Для чего нужны шаблоны и как они работают?
    • Параметры шаблонов
    • Шаблоны функций
    • Шаблоны классов
    • Специализация шаблонов
    • Шаблонное метапрограммирование
    • Практика
    • Домашнее задание

    Занятие 7. Исключения в C++

    • Что такое исключения?
    • Перехват исключений
    • Поиск подходящего обработчика
    • Стандартные исключения
    • Безопасность исключений
    • Программирование с учетом исключений
    • Практика
    • Домашнее задание

    Занятие 8. STL

    • Основные контейнеры 
    • Когда надо использовать определенный тип контейнера и почему?
    • Анализ сложности операций при работе с контейнерами
    • Каталог алгоритмов STL
    • Практика
    • Домашнее задание


    Занятие 9. Многопоточность в C++

    • Параллелизм в C++
    • Программные потоки
    • Совместное использование ограниченных ресурсов
    • Кооперация между программными потоками
    • Взаимная блокировка
    • Практика
    • Домашнее задание

    Занятие 10. Практика

    • Тест на проверку освоенного материала
    • По желанию разбор дополнительных интересующих тем
    • Доработка приложения






    свернуть

    Преподаватель

    Михаил

    Закончил мех-мат ЮФУ по специальности "Прикладная математика и информатика".

    Опыт разработки более 7-ми лет. За это время попробовал не мало различных технологий и языков программирования, но большую часть времени занимался разработкой на С++ и всем, что с ним связано.
    В данный момент Михаил работает программистом в компании Wargaming. В решении задач использует как С++, так и Python.

    "Начинающему разработчику на С++ обычно не хватает терпения, сталкиваясь с различными трудностями в понимании механизмов языка. В наши дни почти у всех есть возможность для поиска информации по любому вопросу, но не всегда эта информация может быть достоверной или простой для понимания. В изучении языков программирования важно уметь эту информацию "фильтровать" и правильно использовать. От себя могу посоветовать одно - пробуйте все то, что вам интересно и ничего не бойтесь, даже если в самом начале пути будет получаться не так много, как хотелось бы!" - говорит Михаил.

    Елизавета

    Закончила мат-мех СПбГУ и СПбГУИТМО по специальности "управление жизненным циклом приборов и систем".

    Опыт программирования более 10 лет. 
    За это время приходилось решать задачи на языках С++ и Python. 

    В настоящее время  Елизавета работает в одной из IT-компаний Санкт-Петербурга разработчиком на языке C++.

    "Самое сложное в программировании, это начать. При этом с каждой решенной задачей прибавляется уверенности в свои силы. Здесь, как и в любом деле - главное не бояться и верить в себя!" - говорит Елизавета.
    свернуть

    Фотографии

    Курсы программирования, тестирования, мобильных и веб-технологий от Level UP!
    Учитесь с профессионалами в сфере IT-образования!