Включите JavaScript

Программирование на языке C++

Организационная информация

Длительность курса: 48 астрономических часов.

Необходимый уровень подготовки

Язык программирования С, алгоритмизация и использование процедурного программирования.

Для кого предназначен этот курс?

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

Если же вам необходимы фундаментальные знания в IT-сфере, то вы можете пройти подготовку по специальности "Разработка программного обеспечения" или по направлениям "Разработка мобильных приложений под Android", "Современные WEB-технологии и маркетинг" и "Тестирование ПО".

Описание

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

Какие инструменты (программы, языки программирования, технологии и т.д.) я освою?

Инструменты: Среда разработки Microsoft Visual Studio 2010 или 2012
Технологии и навыки: язык С++, принципы объектно-ориентированного программирования, построение иерархий классов, основные понятия используемые в шаблонах проектирования.

По окончании курса вы сможете:

По окончанию курса слушатели смогут использовать технологию ООП при построении иерархий классов проектов, что позволит использовать готовые шаблоны проектирования и ускорит разработку больших приложений.

Программа обучения

МОДУЛЬ 1

  • Вступление
  • История и этапы развития языка С++
  • Сравнительный анализ языка C++ с другими языками программирования
  • Объектно-ориентированное программирование
  • Инкапсуляция
  • Полиморфизм
  • Наследование

МОДУЛЬ 2

  • Классы
  • Конструкторы
  • Деструкторы
  • Перегруженные конструкторы
  • Инициализаторы
  • Конструктор копирования
  • Указатели на объекты
  • Указатель на себя (this)

МОДУЛЬ 3

  • Константный метод
  • Синтаксис объявления
  • Примеры использования
  • Объявление конструктора с использованием ключевого слова explicit
  • Перегрузка операторов
  • Причины возникновения перегрузки операторов
  • Типы операторов
  • Общие правила перегрузки бинарных и унарных операторов
  • Примеры использования
  • Преобразования, определяемые классом
  • Перегрузка инкремента и декремента
  • Цели и задачи перегрузки инкремента и декремента
  • Синтаксис перегрузки
  • Отличия перегрузки постфиксной и префиксной формы
  • Перегрузка оператора индексирования
  • Перегрузка оператора вызова функции (круглых скобок)

МОДУЛЬ 4

  • Перегрузка инкремента и декремента
    • Цели и задачи перегрузки инкремента и декремента
    • Синтаксиc перегрузки
    • Отличия перегрузки постфиксной и префиксной формы
  • Перегрузка оператора индексирования
  • Перегрузка оператора вызова функции (круглых скобок)

МОДУЛЬ 5

  • Дружественные функции
  • Дружественные классы
  • Дружественная перегрузка операторов

МОДУЛЬ 6

  • Статические члены класса (статические переменные-члены ,методы-члены)
  • Выделение и очистка памяти в стиле Си malloc, calloc, realloc, free.
  • Перегрузка операторов new, new[], delete, delete[]
  • Перегрузка оператора ->
  • Понятие умного указателя (smart pointer)
  • Практический пример использования перегрузки оператора -> (реализация умного указателя)

МОДУЛЬ 7

  • Шаблоны
  • Шаблоны функций
  • Шаблоны классов

МОДУЛЬ 8

  • Вложенный класс.
  • Агрегирование и композиция
  • Наследование
  • Типы наследования
  • Одиночное наследование
  • Спецификаторы доступа при наследовании
  • Конструкторы и деструкторы при наследовании
  • Примеры использования одиночного наследования
  • Множественное наследование
  • Примеры использования множественного наследования
  • Обсуждение плюсов и минусов наследования
  • Наследование шаблонов
  • Виртуальный базовый класс

МОДУЛЬ 9

  • Виртуальные функции
  • Раннее и позднее связывание
  • Статический и динамический полиморфизм
  • Таблица виртуальных функций
  • Абстрактные классы
  • Виртуальный деструктор
  • Чисто виртуальный деструктор

МОДУЛЬ 10

  • Обработка исключительных ситуаций
  • Введение в обработку исключительных ситуаций
  • Ключевое слово try
  • Ключевое слово catch
  • Ключевое слово throw
  • Подробности использования исключительных ситуаций
  • Раскрутка стека вызовов

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

Наверх