Делайте то, что вы любите больше всего. Это обязательно приведет Вас к успеху
Стив Джобс

Мнение тренера

Отзывы слушателей

Артем Романов

Преподаватель: Андрей Падалка

Хорошая теоретическая и практическая подготовка, глубокий подход к изучению программирования. Будьте готовы к домашним заданиям. Рекомендую!

Насальская Ольга Владимировна

Преподаватель: Андрей Падалка

Андрей Анатольевич умеет преподнести информацию очень понятно. Всегда отвечает на вопросы слушателей. Умеет заинтересовать. Помогает разобраться во всех деталях, которых в С++ ...
Читать полностью

Программирование C++. Профкурс

Длительность:
3 мес., 30 зан. х 2 часа
Стоимость, грн:
3700 грн в месяц
Даты начала:
12 сентября 18.45
Записаться на курс

- Как правильно изучать языки программирования

Язык программирования C++ – это один из самых мощных языков программирования, который позволяет разрабатывать программные продукты любого уровня и степени сложности. Достаточно сказать, что большинство компьютерных игр, инженерных графических программ, антивирусов, симуляторов пишется именно на С++, поскольку ни один из современных языков не может сравниться с ним в скорости. Существует огромное количество проектов, написанных на языке С++, для дальнейшего развития этих проектов вскоре могут понадобиться и Ваши знания.

В данном курсе глубоко рассматриваются все нюансы конструирования классов, ООП и современные технологии программирования - шаблоны, STL, паттерны проектирования. После изучения этого курса Вы сможете грамотно конструировать архитектуру программ, учитывая возможное дальнейшее расширение и улучшение их функциональности. Понимание ООП позволит Вам быстро писать программы практически любой степени сложности. Знание языка С++ на таком уровне дает возможность разрабатывать программное обеспечение не только под операционную систему Windows, но и под MacOS, Linux и т.д.

Курсы C++ направлены на подготовку студентов к работе, начиная с февраля 2012-го года,  в программу профессионального курса включено большинство тем курса Visual C++. Знание этого материала даст возможность студентам писать полноценные многопоточные оконные приложения с современным интерфейсом. К тому же, для кандидата на вакансию junior developer, знания, которые дает курс С++ от учебного центра "Перспектива" - обязательны.

При условии успешного прохождения курса (успешном выполнении контрольных заданий курса) Вы научитесь эффективно применять возможности языка С++ на практике и будете готовы к прохождению собеседования на вакантную позицию программиста С++ в любой солидной компании.

В программе профессионального курса С++:

  • Работа с памятью. Функции с неопределенным кол-вом параметров. Формат файла. Интерпретация памяти
  • Статические локальные переменные в функции. Указатели на функции
  • Шаблонные функции
  • Основные концепции Объектно-ориентированного программирования: инкапсуляция, полиморфизм, наследование
  • Классы. Конструкторы, деструкторы, правила инициализации. Перегруженные конструкторы. Конструктор копирования и перегрузка оператора присваивания. Указатель this. Указатели на члены класса и их применение
  • Перегрузка операторов. Правила. Понимание ситуаций, когда необходима перегрузка. Диагностика операторов, выполняемых при перегрузке. Перегрузка операторов +, =, [], ++, (), приведения типа, ->,  new, deletе, placement new
  • Дружественные функции, дружественные классы, предварительное объявление класса. Перегрузка операторов "друзей"
  • Статические члены класса (статические переменные-члены, методы-члены), паттерн Singleton
  • Использование модификаторов const, mutable. Снятие константности (модификатор mutable и const_cast)
  • Динамические структуры данных. Односвязный список. Двусвязный список. Очередь. Кольцевая очередь. Очередь с приоритетами. Бинарное дерево
  • Шаблоны. Шаблоны функций. Шаблоны классов (специализация шаблонов, шаблонные параметры, нетиповые параметры шаблонов). Наследование. Правила инициализации при наследовании
  • Одиночное наследование, множественное наследование, виртуальное наследование
  • Виртуальные функции. Раннее и позднее связывание. Замена vtbl. Необходимость виртуального деструктора. Абстрактные классы
  • Обработка исключительных ситуаций. try, catch, throw. Использование throw для упрощения логики и скорости. Написание классов-оболочек (умных указателей)
  • Работа с файлами в языке C++
  • Пространства имен
  • Работа со стандартной библиотекой "C++". Контейнеры. Итераторы (как взаимосвязаны свойства итераторов и контейнеров). Алгоритмы (правила использования, плюсы и минусы) big O notation. Модифицирующие алгоритмы. Создание своего контейнера
  • Классы библиотеки boost
  • Паттерны проектирования. Агрегирование и осведомленность. UML, диаграммы классов, взаимодействия объектов. Порождающие паттерны. Структурные паттерны. Паттерны поведения
  • Написание проектов с применением паттернов
  • Взаимодействие между окнами, приложением и Windows (OS). Понимание описателей, сообщений, параметров, создание приложения и его работа, вечный цикл, прорисовка в окне, WM_PAINT, CDC и прочие GDI объекты
  • Рассмотрение всех стандартных элементов управления
  • Замена оконной процедуры - subclassing, Get-SetWindowLong, создание окон (элементов управления) произвольной формы - регионы, ownerdraw
  • MFC, классы SDI, MDI приложений, PreCreateWindow, PreTranslateMessage
  • Потоки, процессы, синхронизация, мьютексы, семафоры, события, ожидаемые таймеры, потоки, процессы (как объекты ядра), Wait - функции, GetLastError()
  • Снимок процессов, виртуальная память, DLL - создание, экспорт, дебаг, понимание СОМ технологии, обмен данными между процессами
  • Именованные каналы, проецируемые в память файлы и т.д.
  • Работа с реестром, хуки
  • Сетевые приложения. Блокирующие и неблокирующие режимы, протоколы
  • Работа с базами данных, создание баз, таблиц. Запросы, агрегирующие функции, хранимые процедуры, триггера
  • Решение задач, встречающихся на собеседовании при приеме на работу
  • Дипломная работа. Написание масштабируемого приложения с использованием паттернов проектирования.

 

Слушатели, успешно прошедшие курс обучения, получают диплом.

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

Фотоальбом